Analyse eines gehackten Webservers unter Linux. 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl



Ähnliche Dokumente
Socket-Details für Linux Admins

Löschen eines erkannten aber noch nicht konfigurierten Laufwerks

ARCHITEKTUR VON INFORMATIONSSYSTEMEN

lsof Johannes Franken

Firewalling. Michael Mayer IAV0608 Seite 1 von 6

Websites mit Dreamweaver MX und SSH ins Internet bringen

Prozesse und Logs Linux-Kurs der Unix-AG

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

Android VPN. Am Beispiel eines Netzwerktunnels für das Domain Name System (DNS) 1 Andiodine - Android DNS-VPN

Wiederholung: Beginn

4. Network Interfaces Welches verwenden? 5. Anwendung : Laden einer einfachen Internetseite 6. Kapselung von Paketen

Andy s Hybrides Netzwerk

POP3-Protokoll Eine kurze Erklärung. Johannes Mayer SAI, Universität Ulm Juni 2001

Prozesse und Logs Linux-Kurs der Unix-AG

MUNIN - Langzeitmonitoring

Wie man Fehler findet.

Informatik Grundlagen, WS04, Seminar 13

Logging, Threaded Server

Themen. Apache Webserver Konfiguration. Verzeichnisse für Web-Applikationen. Server Side Includes

Infrastruktur entwickeln mit Chef

TimeMachine. Installation und Konfiguration. Version 1.4. Stand Dokument: installcentos.odt

Powershell DSC Oliver Ryf

Installation mit Lizenz-Server verbinden

Geschütztes FTP-Verzeichnis erstellen

SAS Metadatenmanagement Reporting und Analyse

Deutsches Rotes Kreuz. Kopfschmerztagebuch von:

php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick Parameterübergabe...

3. Baumstrukturen. 3.1 Dateien und Ordner

Daniel Melanchthon Technologieberater Microsoft Deutschland GmbH blogs.technet.com/dmelanchthon

1.1 VoIP - Kein Notruf möglich. 1.2 VoIP - Vorrang von Notrufen

protokolliert alle Anmeldungen am Server direkt

TSM-Client unter Windows einrichten

TimeMachine. Time CGI. Version 1.5. Stand Dokument: time.odt. Berger EDV Service Tulbeckstr München

Übung - Datensicherung und Wiederherstellung in Windows Vista

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

WordPress lokal mit Xaamp installieren

Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu)

Remote-Compiler Dienst

Lokale Installation von DotNetNuke 4 ohne IIS

Installation des GeoShop Redirector für Apache (Stand ) ================================================================

Web Grundlagen zum Spidering

Skripte. Beispiel. M. Fyta Computergrundlagen 73/93

ICON Switzerland 2015 Praxisbeispiel Connections an der Universität Zürich

Systemvoraussetzungen Stand

bizsoft Rechner (Server) Wechsel

Anleitung zur CITRIX-Receiver Installation.

Windows 7 mittels Shrew Soft VPN Client per VPN mit FRITZ!Box 7390 (FRITZ!OS 6) verbinden

Anleitung zur Lizenzaktualisierung. Plancal nova 7.x

Einrichten der TSM-Backup-Software unter dem Betriebssystem Windows

Drei Möglichkeiten zum Betrieb von DPV über das Internet. Dr. Matthias Grabert und Walter Geiselmann Uni Ulm

Java Application 1 Java Application 2. JDBC DriverManager. JDBC-ODBC Br idge. ODBC Driver Manager. Dr iver C. Dr iver D.

Workbooster File Exchanger Command Line Tool

Anleitung zur Installation der DataWatch Software auf einem LINUX System ohne grafische Oberfläche

Konfiguration Firewall (Zyxel Zywall 10) (von Gruppe Schraubenmeier)

Bedienungsanleitung. 1. Eine direkte (1 1) Verbindung muss mit einem gekreuzten (Crossover) Netzwerkkabel hergestellt werden.

Frage und Antworten zum Webcast: Virtual Server 2005 :

Monitoring mit Graphite

Installationsanleitung für pcvisit Server (pcvisit 12.0)

1 Änderungen bei Windows Server 2008 R2

Felder. November 5, 2014

How To: Wie entwickle ich mit SharpDevelop Anwendungen für die PocketPC-Platform

Session Management und Cookies

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

Publizieren von Webs mit SmartFTP

Medienkompass1, Lehrmittelverlag des Kantons Zürich, 1. Ausgabe 2008, Thema 13 Sicher ist sicher, S.58-61

Psyprax GmbH. Netzwerk Installation unter XP. Wichtig für alle Netzwerkinstallationen: Psyprax GmbH

1 Application Compatibility Toolkit (ACT) 5.6

Anwendungsprotokolle: HTTP, POP, SMTP

Installation Linux agorum core Version 6.4.5

Fernseher Bild Bildschirm Computergeräte. Festplatte CD DVD Eingabegerät. Computertasten Mauszeiger Cursor rechten Maustaste

Linux Prinzipien und Programmierung

ecaros-update 8.2 Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Eschenweg Weiterstadt

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

BitDefender Client Security Kurzanleitung

Umleiten von Eigenen Dateien per GPO

Remote Tools. SFTP Port X11. Proxy SSH SCP.

Installationsanweisung editit

MySQL 101 Wie man einen MySQL-Server am besten absichert

2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen

Tanuki Service Wrapper 101. JVM Verwaltung mit der Community Edition. Alexander Pacnik Karlsruhe,

Event Handlers heute mal dynamisch

Konfiguration Zentyal 3.3 Inhaltsverzeichnis

1.1. Apache / Tomcat via JK JNI ## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED

-Virtuelle Jagdfliegerschule- Teamspeak Seite 1 von 6

Log Parser 2.0 HackerScan.js. Beschreibung. Anforderungen. Unterstützte Plattformen. Script-Code. Zurück zur Übersichtsseite

Rechnernetze Praktikum. Versuch 5: Linux embedded. Ziel

PC Hack erkennen 3 - Rootkits & versteckte Trojaner aufspühren

Einrichten der TSM-Backup-Software unter dem Betriebssystem Windows

Security-Webinar. Februar Dr. Christopher Kunz, filoo GmbH

DNS Grundlagen. ORR - November jenslink@quux.de. DNS Grundlagen 1

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

FILEZILLA HANDBUCH

Enterprise java beans step-by-step

Ein reales Testumfeld bereitstellen - basierend auf einer Produktionsdatenbank (ohne eine neue Kopie zu erstellen)

Update Information. Independence Pro Software Suite 3.0 & Sound Libraries

Das neue Volume-Flag S (Scannen erforderlich)

A. Ersetzung einer veralteten Govello-ID ( Absenderadresse )

Medienkompass1, Lehrmittelverlag des Kantons Zürich, 1. Ausgabe 2008, Thema 13 Sicher ist sicher, S.58-61

KEIL software. Inhaltsverzeichnis UPDATE. 1. Wichtige Informationen 1.1. Welche Änderungen gibt es?

Transkript:

Analyse eines gehackten Webservers unter Linux 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 1

Portrait Georg Höllrigl HTL St. Pölten - Elektronik / Technische Informatik 8 Jahre Erfahrung als Systemadministrator FH Mittweida Informationstechnik GmbH Technischer Dienstleister, Domainverwaltung, Rechenzentrum in Wien und Amsterdam 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 2

Gliederung Problemerkennung Alarmierung: rkhunter und chkrootkit Tools: lsof, strings, strace Was hat der Hacker alles am Server angestellt Was ist in den Logfiles zu finden? Wie wurde der Service wieder hergestellt? Neuinstallation 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 3

Problemerkennung Wie? Andauernde CPU Auslastung Festplatte voll Apache restart: port already in use rkhunter oder chkrootkit Alarmierung Beschwerde von Dritten 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 4

12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 5

12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 6

rkhunter / chkrootkit Found string 'fucknut' in file '/sbin/ttymon'. Possible rootkit: SHV5 Rootkit Found string 'lamersucks' in file '/sbin/ttymon'. Possible rootkit: SHV5 Rootkit Found string 'skillz' in file '/sbin/ttymon'. Possible rootkit: SHV5 Rootkit Found string 'propert of SH' in file '/sbin/ttyload'. Possible rootkit: SHV5 Rootkit Found string 'ttyload' in file '/etc/inittab'. Possible rootkit: Possible SHV5 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 7

Problemerkennung Was genau? rs3418:/var/log # ls ls: unrecognized prefix: do ls: unparsable value for LS_COLORS environment variable # rcapache2 start Starting httpd2 (prefork) (98)Address already in use: make_sock: could not bind to address [::]:80 (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 8

lsof Erstellt eine Liste offener Dateien und Ports # lsof -i :80 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME httpd2-pr 892 wwwrun *:http (LISTEN) 3u IPv6 10414 TCP httpd2-pr 893 wwwrun *:http (LISTEN) 3u IPv6 10414 TCP httpd2-pr 894 wwwrun *:http (LISTEN) 3u IPv6 10414 TCP 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 9

255 17105 root 3u IPv6 11133028135 TCP *:80 (LISTEN) 255 17105 root 5u IPv6 11133028140 TCP *:443 (LISTEN) 255 17105 root 255u IPv4 11149127797 TCP *:1989 (LISTEN) 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 10

# lsof -p 17105 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME 255 17105 root cwd DIR 8,3 696 2 / 255 17105 root rtd DIR 8,3 696 2 / 255 17105 root txt REG 8,3 652620 14638336 /tmp/sh-cu2f1lkaqwg (deleted) 255 17105 root mem REG 0,0 0 [heap] (stat: No such file or directory) 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 11

lsof braucht zu lange? lsof P n verwenden lsof i :Port lsof p PID lsof grep Datei lsof - Praxistipps 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 12

12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 13

strings # cat hello.c #include <stdio.h> int main(void) { printf("hallo Welt"); return(0); } 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 14

/lib/ld-linux.so.2 SuSESuSE _Jv_RegisterClasses gmon_start libc.so.6 printf _IO_stdin_used libc_start_main GLIBC_2.0 PTRh [^_] Hallo Welt 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 15

strace rs3418:/ # strace -p 17107 Process 17107 attached - interrupt to quit [ Process PID=17107 runs in 32 bit mode. ] restart_syscall(<... resuming interrupted call...>) = 0 read(0, 0xffc8aea0, 1072) = -1 EAGAIN (Resource temporarily unavailable) time(null) = 1285327335 nanosleep({858993459200000, 577765979979777072}, NULL) = 0 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 16

Was geben die logfiles her? dmesg /var/log/messages Apache access und error log /var/log/mail ~/.bash_history 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 17

[Wed Sep XX 22:56:28 2010] [notice] mod_fcgid: call /srv/www/vhosts/example.com/httpdocs/jasminesblog/i ndex.php with wrapper /usr/bin/php-cgi5 [Wed Sep XX 22:56:28 2010] [notice] mod_fcgid: server /srv/www/vhosts/example.com/httpdocs/jasminesblog/i ndex.php(20143) started [Wed Sep XX 23:20:10 2010] [error] [client 208.80.XXX.XX] request failed: error reading the headers [Wed Sep XX 23:21:18 2010] [error] [client 208.80.XXX.XX] request failed: error reading the headers Empty input file Empty input file 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 18

Ergebnisse aus den Logfiles nicht immer eindeutig nicht immer ergiebig schuldige Domain über Error-Logs Veraltete Joomla-Installation 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 19

Was wurde am Server verändert? Manipulation der Log-Dateien Versteckte Unterordner mit Programmteilen IRC-Server Spam-Mail-Versand Backdoor über /etc/inittab 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 20

Wenn DEIN Server gehackt wurde, dann ist es nicht mehr DEIN Server! Sauberes System aufsetzten Backup einspielen Neues System besser absichern Sicherheitsupdates einspielen! 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 21

Danke 12.11.2010 IT-SecX Dipl.-Ing. (FH) Georg Höllrigl 22