Syslog nach RFC. Martin Schütte

Ähnliche Dokumente
BSD Syslog IETF Protokoll & API Netzwerk-Transport Syslog-Sign Praxis. Syslog nach RFC. Martin Schütte. 4. März 2010

Programmiertechnik II

Anwendungsprotokolle: HTTP, POP, SMTP

TLS ALS BEISPIEL FÜR EIN SICHERHEITSPROTOKOLL

Senden von strukturierten Berichten über das SFTP Häufig gestellte Fragen

VMware vrealize Log Insight- Entwicklerhandbuch

IT-Sicherheit Kapitel 11 SSL/TLS

Web Services Security

im DFN Berlin Renate Schroeder, DFN-Verein

Security Associations Schlüsseltausch IKE Internet Key Exchange Automatischer Schlüsseltausch und Identitätsnachweis

Effizienten MAC-Konstruktion aus der Praxis: NMAC Idee von NMAC:

Authentikation und digitale Signatur

10.6 Authentizität. Geheimhaltung: nur der Empfänger kann die Nachricht lesen

IT-Sicherheit Kapitel 13. Sicherheit

Grundlagen der Rechnernetze. Internetworking

VIRTUAL PRIVATE NETWORKS

Man liest sich: POP3/IMAP

OUTLOOK Was ist sigmail.de? 2 Warum sigmail.de? UP ESUO

Syslog: Praxis und kommende Standards

Containerformat Spezifikation

E-Government in der Praxis Jan Tobias Mühlberg. OpenPGP. Brandenburg an der Havel, den 23.

Einrichtung eines -Kontos bei MS Office Outlook 2010 (Windows) Stand: 03/2011

The Cable Guy März 2004

Netzwerksicherheit Übung 5 Transport Layer Security

Nachrichten- Verschlüsselung Mit S/MIME

Netzsicherheit I, WS 2008/2009 Übung 12. Prof. Dr. Jörg Schwenk

peer-to-peer Dateisystem Synchronisation

-Verschlüsselung viel einfacher als Sie denken!

Verteilte Systeme Unsicherheit in Verteilten Systemen

Verteilte Systeme. Übung 10. Jens Müller-Iden

Collax VPN. Howto. Vorraussetzungen Collax Security Gateway Collax Business Server Collax Platform Server inkl. Collax Modul Gatekeeper

Containerformat Spezifikation

SSL/TLS und SSL-Zertifikate

Radius Server. Bericht im Studiengang Computerengineering an der HS-Furtwangen. Student: Alphonse Nana Hoessi Martikelnr.:227106

Authentication Policy. Konfigurationsbeispiel ZyXEL ZyWALL USG-Serie. Juni 2010 / HAL

Sicheres HTTP. 8. Juni Proseminar Electronic Commerce und digitale Unterschriften

SSL-Protokoll und Internet-Sicherheit

Diameter. KM-/VS-Seminar. Wintersemester 2002/2003. schulze_diameter.ppt Christian Schulze_03-Februar-07

Betriebssysteme und Sicherheit Sicherheit. Signaturen, Zertifikate, Sichere

BOSNotifier.de Gateway API Dokumentation. Inhaltsverzeichnis... 1 Gateway API BOSNotifier.de... 2 Schnittstellen... 2 Protokolle...

Dynamisches VPN mit FW V3.64

OP-LOG

Digitale Identitäten in der Industrieautomation

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

Informatik für Ökonomen II HS 09

Übung 6 Lösungsskizze Kryptographie, Sicherheit in verteilten Dateisystemen

Zeitstempel für digitale Dokumente. Ein neuer Dienst in der DFN-PKI

Peer-to-Peer Internet Telephony using the Session Initiation Protocol (SIP)

Network Intrusion Detection mit Snort. (Nachtrag zu 9.2.2, Seite 33)

Betriebssysteme und Sicherheit

Community Zertifizierungsstelle. Digitale Identität & Privatsphäre. SSL / S/MIME Zertifikate

Einleitung Sniffing, Analyzing, Scanning Scanning. Netzwerke. Bierfert, Feresst, Günther, Schuster. 21. März 2006

Vertrauliche Videokonferenzen im Internet

Konfiguration des Novell GroupWise Connectors

. Nachrichtenübertragung. Internetkommunikation Christof Fox. Wie werden Nachrichten Übertragen?

Bernd Blümel. Verschlüsselung. Prof. Dr. Blümel

VPN: Virtual-Private-Networks

15 Transportschicht (Schicht 4)

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am

Web Sockets mit HTML5. Quelle:

Grundkurs Routing im Internet mit Übungen

Authentifizierung. Benutzerverwaltung mit Kerberos. Referent: Jochen Merhof

KN Das Internet

Erste Vorlesung Kryptographie

Web Services und Sicherheit

PCC Outlook Integration Installationsleitfaden

Dateien und s verschlüsseln mit GPG

CCNA Exploration Network Fundamentals. ARP Address Resolution Protocol

Kontrollfragen: Internet

Prof. Dr. Martin Leischner Netzwerksysteme und TK. Hochschule Bonn-Rhein-Sieg. Modul 5: IPSEC

Authentifizieren und Vertrauen schaffen

How to install freesshd

Kryptographische Anonymisierung bei Verkehrsflussanalysen

Konfigurationsbeispiel

LDAP. Universität zu Köln IT-Zertifikat Allgemeine Technologien 1 Dozentin: Susanne Kurz M.A Referent: Branko Dragoljic

Arbeiten mit einem lokalen PostgreSQL-Server

Firewall oder Router mit statischer IP

Mobility Support by HIP

3 Netzdienste im Internet. vs3 1

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler Oktober 2008 Version 1.0.

Spaß mit Enterprise Syslog: Sicherheit und Probleme

IMAP und POP. Internet Protokolle WS 12/13 Niklas Teich Seite 1

Multicast Security Group Key Management Architecture (MSEC GKMArch)

OpenChaos-Reihe Digitale VerhütungTeil 2: Sichere Kommunikation

STARFACE SugarCRM Connector

smis_secure mail in der srg / pflichtenheft /

MSSQL Server Fragen GridVis

MSXFORUM - Exchange Server 2003 > Konfiguration NNTP unter Exchange 2003

- Grundlagen und

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

EDV-Fortbildung Kombi-Schulung Word-Excel Modul Excel. Informationen zum Programm. Die Programmoberfläche von Excel

Sichere Anwendung und Administration von Verschlüsselung in Oracle Datenbanken. Trennung von Schlüssel- und Datenbankadministration

Public-Key-Infrastrukturen

Umbenennen eines NetWorker 7.x Servers (UNIX/ Linux)

THUNDERBIRD. 1 Was ist sigmail.de? 2 Warum sigmail.de? UP ESUTB.8-1-2

Infrastruktur: Vertrauen herstellen, Zertifikate finden

-Verschlüsselung

Freie Zertifikate für Schulen und Hochschulen

Netzwerksicherheit Übung 5 Transport Layer Security

Sicherheit von Smartphone-Betriebssystemen im Vergleich. Andreas Jansche Gerhard Klostermeier

Transkript:

Syslog nach RFC Martin Schütte

BSD Syslog IETF Protokoll & API UDP/TLS Transport Syslog-Sign Praxis Martin Schütte Syslog nach RFC 14. März 2009 2 / 27

BSD Syslog Design ursprünglich als Programmier-/Debug-Hilfe einfach zu benutzen und zu konfigurieren minimale Ressourcen, best effort Ansatz mit UDP auch auf andere Rechner loggen de facto Standard für Log-Daten unter Unix Martin Schütte Syslog nach RFC 14. März 2009 3 / 27

BSD Syslog Bestandteile Kombination aus: API Nachrichtenformat Daemon IPC Protokoll Martin Schütte Syslog nach RFC 14. März 2009 4 / 27

API SYSLOG(3) NetBSD Library Functions Manual SYSLOG(3) NAME syslog, vsyslog, openlog, closelog, setlogmask -- control system log LIBRARY Standard C Library (libc, -lc) SYNOPSIS #include <syslog.h> void syslog(int priority, const char *message,...); void openlog(const char *ident, int logopt, int facility); void closelog(void); int setlogmask(int maskpri); Martin Schütte Syslog nach RFC 14. März 2009 5 / 27

Syslog Message Format <38>Mar 17 21:57:57 frodo sshd[701]: Connection from 211.74.5.81 port 5991 <52>Mar 17 13:54:30 192.168.0.42 printer: paper out Priority Header Timestamp Hostname Message Tag Content Konventionen: Priority nicht in Logdatei nur ASCII bis zu 1024 Zeichen pro Zeile Martin Schütte Syslog nach RFC 14. März 2009 6 / 27

Daemon: syslogd Liest Nachrichten von Kernel, Anwendungen, Netzwerk Filter nach Priority schreibt in Dateien, Pipes, auf Terminals oder Netzwerk (UDP) neue Implementierungen mit mehr Features (z. Bsp. *BSD syslogd, syslog-ng, rsyslog) Filter nach Host-/Programmname oder RegExp Konvertieren verschiedener Nachrichten und Zeitstempel Schreiben in Speicherpuffer, TCP-Verbindungen oder SQL-DBs Martin Schütte Syslog nach RFC 14. März 2009 7 / 27

Transport Protocol Nachrichten von... Anwendungen: socket(af_unix, SOCK_DGRAM, 0); Netzwerk: socket(af_inet, SOCK_DGRAM, 0); Kernel: open("/dev/klog", O_RDONLY, 0); (Ringspeicher) Eine Nachricht/Zeile je recvfrom()/read(). Martin Schütte Syslog nach RFC 14. März 2009 8 / 27

IETF Working Group Security Issues in Network Event Logging RFC 3164: The BSD Syslog Protocol (informational) RFC 3195: Reliable Delivery for Syslog RFC 5424: The Syslog Protocol RFC 5425: TLS Transport Mapping for Syslog RFC 5426: Transmission of Syslog Messages over UDP Internet Drafts: Signed Syslog Messages Syslog Management Information Base Martin Schütte Syslog nach RFC 14. März 2009 9 / 27

RFC 5424: The Syslog Protocol Neues Nachrichtenformat Plain Text ISO Zeitstempel (mit Jahr, Zeitzone und hoher Auflösung) FQDNs Message IDs (vgl. Windows Eventlog) Strukturierte Daten mit Namensräumen (über SNMP Private Enterprise ID) UTF-8 für Daten und Nachrichtentext mindestens unterstützte Nachrichtenlängen: 480 octets MUST, 2048 octets SHOULD Martin Schütte Syslog nach RFC 14. März 2009 10 / 27

Syslog-protocol Nachrichtenformat <165>1 2003-10-11T22:14:15.003Z frodo.example.com prog - ID47 [examplesdid@17660 iut="3" eventid="1011" eventsource="application"] BOM Une entré du journal des événements... Header Priority Version (new) Timestamp (extended) Hostname Application Name Process ID Message ID (new) Structured Data (new) Message text (UTF-8) Martin Schütte Syslog nach RFC 14. März 2009 11 / 27

Änderungen an syslog(3) bisher nur in NetBSD-current API ungeändert Syslog-Protocol in IPC zwischen syslog(3) und syslogd(8): ISO Zeitstempel FQDN neue Felder (MSGID und SD) leer Martin Schütte Syslog nach RFC 14. März 2009 12 / 27

Neuer API-Vorschlag: syslogp(3) bisher nur in NetBSD-current minimale Erweiterung für MSGID und SD syslog(3) mit drei Nachrichten-Parametern void syslogp ( int priority, const char * msgid, const char * sdfmt, const char * message,...); void vsyslogp ( int priority, const char * msgid, const char * sdfmt, const char * message, va_list args ); syslog ( LOG_INFO, " foobar error : %m "); syslogp ( LOG_INFO, NULL, NULL, " foobar error : %m "); syslogp ( LOG_INFO, "ID%d", "[ meta language =\" de -DE \"]", " Ereignis : % s", 42, EventDescription ); Martin Schütte Syslog nach RFC 14. März 2009 13 / 27

RFC 5426: UDP Transport UDP-Übertragung wie bisher Portnummer: udp/514 eine Nachricht pro UDP-Datagramm keinerlei Sicherung/Authentifizierung akzeptierte Nachrichtenlängen: mindestens 480 octets (MUST bei IPv4) bzw. 2048 octets (SHOULD) Martin Schütte Syslog nach RFC 14. März 2009 14 / 27

RFC 5425: TLS Transport Punkt-zu-Punkt Verschlüsselung, Integrität und Authentifizierung Portnummer: tcp/6514 Erfordert Client- und Serverzertifikate Authentifizierung per CA oder Zertifikat/Subject/Fingerprint Format: Nachrichtenlänge, Leerzeichen, Nachricht akzeptierte Nachrichtenlängen: mindestens 2048 octets (MUST) bzw. 8192 octets (SHOULD) Martin Schütte Syslog nach RFC 14. März 2009 15 / 27

syslog.conf Beispiel tls_ca ="/ etc /my. cacert " tls_cert ="/ etc / localhost. crt " tls_key ="/ etc / localhost. key " tls_gen_cert = on tls_server = on tls_bindhost ="192.168.1.2" tls_bindport =" syslog - tls " tls_allow_clientcerts ="/ etc / somehost. crt " *.* @[ fe80 ::211:9 ff: fe41 : be53 ]: syslog - tls ( fingerprint =" MD5 :00: A2 :...:27") Martin Schütte Syslog nach RFC 14. März 2009 16 / 27

Internet-Draft: Signed syslog Messages Übersicht digital signierte Syslog-Nachrichten Ende-zu-Ende Authentifizierung, Integrität, korrekte Reihenfolge und Vollständigkeit DSA für Signaturen SHA-1 oder SHA-256 als Hashfunktion OpenPGP- oder X.509-Zertifikate Martin Schütte Syslog nach RFC 14. März 2009 17 / 27

Internet-Draft: Signed syslog Messages Konstruktion Signature Groups für mehrere Nachrichtenströme Voraussenden des öffentlichen Schlüssels Übertragen der Folge von Nachrichten in Folge von Hash-Werten Einfügen der Signaturnachrichten in den Nachrichtenstrom Signieren der eigenen Kontrollnachrichten Martin Schütte Syslog nach RFC 14. März 2009 18 / 27

Payload Blocks Öffentlichen Schlüssel versenden <110>1 2008-08-02T01:09:27.773505+02:00 host.example.org syslogd - - [ssign-cert VER="0111" RSID="1217632162" SG="3" SPRI="0" TBPL="1059" INDEX="1" FLEN="1059" FRAG="2008-08-02T01:09:27.773464+02:00 C MIIC+jCCArmgAwIBAwIBA...YA==" SIGN="MC0CFFEHx8UX32vEW...k+o="] Beim Systemstart, enthält: Signature Group (VER, RSID, SG, SPRI) Fragmentierung (TBPL, INDEX, FLEN) Payload Block (FRAG) mit Zeitstempel Art des Schlüssels öffentlicher Schlüssel (base64) DSA Signatur (SIGN) Martin Schütte Syslog nach RFC 14. März 2009 19 / 27

Signature Blocks SHA-1 Hash-Werte sammeln... <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg0 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg1 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg2 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg3 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg4 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg5 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg6 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg7 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg8 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg9 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg10 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg11 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg12 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg13 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg14 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg15 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg16 <15>1 2008-08-02T02:09:27+02:00 host.example.org test 6255 - - msg17 siujm358eyfhos2k0mtlveweh/u= ztxfthw8wqmtfhog4k/+zxkirta= j9dubu1gnvp7qwshwph/w32nd08= XQDLZ/NuwirmLdMORtm84r9kIW4= RNDFNCo7hiCsK/EKumsPBbFHNZA= ANiE3KbY948J6cEB640fAtWXuO4= e2m/oqjhdfxlvuspt1csnjhm9wu= Y+racQst7F1gR8eEUh8O7o+M53s= JAMULRxjMPbOO5EhhKbsUkAwbl0= pd+n5kmlnyq0boiteld/kwqrcmg= dsmqszphis6s3vaa23/t7u8jaj4= i4re3x7n4qyqgtkmawhswdfp9sy= qgtqv4egfufd3uzxnpvj25erzbi= XW0YrME5kQEh+fxhg1fetnWxfIc= 7YPcRHsDwXWnQuGRWaJtFWw9hus= PIvLm0mh+he5+PDihG1p7sQlx8k= lpzuvx0i1vwsgwv7ykf9w//yb2u= X+PWYcx5AXnsDVSNAHLZUGk5ioY= Martin Schütte Syslog nach RFC 14. März 2009 20 / 27

Signature Blocks... und Hash-Werte & Signatur versenden <110>1 2008-08-02T01:09:32.399406+02:00 host.example.org syslogd - - [ssign VER="0111" RSID="1217632162" SG="3" SPRI="0" GBC="4" FMN="1" CNT="20" HB="siUJM358eYFHOS2K0MTlveWeH/U= ztxfthw8wqmtfhog4k/+zxkirta= j9dubu1gnvp7qwshwph/w32nd08= XQDLZ/NuwirmLdMORtm84r9kIW4= RNDFNCo7hiCsK/EKumsPBbFHNZA= ANiE3KbY948J6cEB640fAtWXuO4= e2m/oqjhdfxlvuspt1csnjhm9wu= Y+racQst7F1gR8eEUh8O7o+M53s= JAMULRxjMPbOO5EhhKbsUkAwbl0= pd+n5kmlnyq0boiteld/kwqrcmg= dsmqszphis6s3vaa23/t7u8jaj4= i4re3x7n4qyqgtkmawhswdfp9sy= qgtqv4egfufd3uzxnpvj25erzbi= XW0YrME5kQEh+fxhg1fetnWxfIc= 7YPcRHsDwXWnQuGRWaJtFWw9hus= PIvLm0mh+he5+PDihG1p7sQlx8k= lpzuvx0i1vwsgwv7ykf9w//yb2u= X+PWYcx5AXnsDVSNAHLZUGk5ioY= okxy88mgg4qybrymf8hjn23wo1y= HcaPyHfQ2s1SuSciTKw4woYWuMg=" SIGN="MCwCFFr0i6taT1vWowR7yc5bEQxFfY7/Ah...IQ=="] Eine Syslog-Nachricht, enthält: Signature Group (VER, RSID, SG, SPRI) Global Block Counter (GBC, zählt syslog-sign Nachrichten) First Message Number (FMN, zählt normale Nachrichten) CNT Hash Blocks (HB) DSA Signatur (SIGN) Martin Schütte Syslog nach RFC 14. März 2009 21 / 27

Offline Verifikation 1. Log teilen in Certificate Blocks (CB), Signature Blocks (SB) und normale Nachrichten 2. für normale Nachrichten Hashes berechnen 3. CBs und SBs sortieren 4. CBs und SBs verifizieren und zusammensetzen ergibt öffentliche Signaturschlüssel 5. SBs verifizieren 6. Folge aller Hash-Werte aufbauen (mittels FMN) 7. zu jedem Hash-Wert die zugehörige Nachricht raussuchen ergibt Folge verifizierter Nachrichten Martin Schütte Syslog nach RFC 14. März 2009 22 / 27

verify.pl $ perl verify. pl -i test. log reading input... processing CBs... decoding SGs... got PKIX DSA key verifying CBs... verified CB and got key for SG: ( host. example.org,1217632162,0111,3,0), start : 2008-08 -02 T01 :09:27.773464+02:00 now process SBs signed messages :... host. example.org,1217632162,0111,3,0,11 <15>1... test 6255 - - msg10 host. example.org,1217632162,0111,3,0,12 <15>1... test 6255 - - msg11 host. example.org,1217632162,0111,3,0,13 **** msg lost host. example.org,1217632162,0111,3,0,14 <15>1... test 6255 - - msg13 host. example.org,1217632162,0111,3,0,15 <15>1... test 6255 - - msg14 host. example.org,1217632162,0111,3,0,16 <15>1... test 6255 - - msg15... messages without signature : <15>1 2008-08 -02 T02 :09:27+02:00 host. example. org test 6255 - - modified msg12 Martin Schütte Syslog nach RFC 14. März 2009 23 / 27

Implementierungen rsyslog (ab Version 3.19) syslog-ng (in OSE ab Version 3.0) NetBSD syslogd (in -current) Martin Schütte Syslog nach RFC 14. März 2009 24 / 27

Umstieg auf neue Protokolle syslogd versteht altes und neues Format Parallel zwei syslogd-instanzen sind nicht praktikabel CA erleichtert die TLS-Konfiguration sehr Hauptproblem: Log-Analyseprogramme (müssen neues Format parsen können) Martin Schütte Syslog nach RFC 14. März 2009 25 / 27

ToDo-Liste Implementierungen testen Syslog-Sign RFC fertigstellen Log-Infrastruktur upgraden Structured Data Feld benutzen einheitliche API finden (syslogp(3)) Martin Schütte Syslog nach RFC 14. März 2009 26 / 27

Links IETF Syslog WG: Status Page rsyslog syslog-ng NetBSD & GSoC: syslogd NetBSD CVS Repositories Martin Schütte Syslog nach RFC 14. März 2009 27 / 27