Abo
  • Services:
Anzeige
Bezahlung nach TVöD Bund in der Entgeltgruppe 14 und eine tarifliche Sonderzulage von 400 Euro monatlich: Wie wär's mit einem Job beim BND?
Bezahlung nach TVöD Bund in der Entgeltgruppe 14 und eine tarifliche Sonderzulage von 400 Euro monatlich: Wie wär's mit einem Job beim BND? (Bild: BND/Screenshot: Golem.de)

Script-Injection in PHP-Webseite

Wir schauen uns ein wenig auf dem System um und finden im Web-Root (/var/www/html) eine Datei index.html, in der der Hacker eine Erpressungsmeldung hinterlassen hat. Man soll ihm ein Bitcoin überweisen. Allerdings fehlt die Bitcoin-Adresse. Weiterhin finden wir eine Datei originalIndex.php, bei der es sich scheinbar um die Original-Webseite handelt. Diese enthält eine ziemlich triviale Script-Injection-Lücke:

  1. if($_GET['password'] != "" && $_GET['file'] != "") {
  2. $command = "/home/readFile ".
  3. $_GET['password'].
  4. " insurances/".
  5. $_GET['file'];
  6. }

Und später:

  1. <?php system($command); ?>

Die Variable $command wird also mit den GET-Variablen password und file zu einer Kommandozeile ohne Filterung oder Escaping eingebaut. Diese wird anschließend ausgeführt. Das ausgeführte Programm readFile finden wir ebenfalls, samt zugehörigem Quellcode readFile.c.

Anzeige

Im C-Code finden wir einen trivialen Stack-Buffer-Overflow. Das zweite Kommandozeilenargument (argv[2]) wird in einen Array mit einer begrenzten Größe geschrieben. Die Datei readFile ist auch ohne Stack Canaries und ohne das für ASLR notwendige PIE-flag kompiliert. Damit wäre ein Exploit für diesen Overflow vergleichsweise einfach.

Der Angreifer hat also zwei Möglichkeiten, mit den Rechten des Webserver-Users www-data Code auszuführen. Wir gehen davon aus, dass der Hacker die Script-Injection-Lücke genutzt hat, da sich kaum jemand die Mühe machen würde, in so einem Fall einen Buffer Overflow auszunutzen. Zu diesem Zeitpunkt kennt der Angreifer ja auch das Programm readFile nicht, besitzt somit für einen derartigen Angriff wenig Informationen. Dass die PHP-Script-Injection-Lücke blind ausgenutzt wird, erscheint plausibler.

Neben diesen Lücken finden wir noch ein Verzeichnis insurances, in dem sich ungeschützt zwei Kundendatensätze befinden. Sie sind übers Web abrufbar, allerdings gibt es kein Directory Listing. Ein Angreifer, der keine der Code-Execution-Lücken nutzt, müsste also die Dateinamen (0815, 0816) erraten.

 Forensik Challenge: Lust auf eine Cyber-Stelle beim BND? Golem.de hilft!Remote-Shell in gelöschter Webserver-Logdatei 

eye home zur Startseite
Loading... 05. Mai 2017

Mag ja solche Challenges und würde sie gerne, wie vorgesehen lösen, also nicht über den...

digidax 05. Apr 2017

In welcher Datei wurde der Logeintrag: 192.168.1.11 - - [23/Nov/2016:10:13:32 +0100...

N3X 04. Apr 2017

Hallo Golem Team, ihr schreibt, dass es für einen Angreifer nicht möglich sei zu...

N3X 03. Apr 2017

hat hiermit recht wenig zu tun. Schau dir mal die VM an, und wie die Auth. abläuft. Du...

ClausWARE 21. Mär 2017

Also das Fazit am ende ließt sich nicht gerade wie Wrbung für den BND.



Anzeige

Stellenmarkt
  1. Landesbetrieb IT.Niedersachsen, Hannover
  2. Stadtwerke Bonn GmbH, Bonn
  3. BERLIN-CHEMIE AG, Berlin
  4. Zühlke Engineering GmbH, Hannover


Anzeige
Spiele-Angebote
  1. (-24%) 12,99€
  2. 19,99€
  3. ab 129,99€

Folgen Sie uns
       


  1. Sonic the Hedgehog

    Sega veröffentlicht seine Spieleklassiker für Smartphones

  2. Monster Hunter World angespielt

    Dicke Dinosauriertränen in 4K

  3. Prime Reading

    Amazon startet dritte Lese-Flatrate in Deutschland

  4. Node.js

    Hälfte der NPM-Pakete durch schwache Passwörter verwundbar

  5. E-Mail

    Private Mails von Topmanagern Ziel von Phishing-Kampagne

  6. OLED

    LG entwickelt aufrollbares transparentes 77-Zoll-Display

  7. Vorratsdatenspeicherung

    Bundesnetzagentur prüft Auswirkung der OVG-Entscheidung

  8. Elektronikkonzern

    Toshiba kann Geschäftsbericht nicht vorlegen

  9. Störerhaftung

    SPD warnt vor Scheitern des WLAN-Gesetzes

  10. Ubisoft

    Michel Ancel zeigt Beyond Good and Evil 2



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Mieten bei Ottonow und Media Markt: Miet mich!
Mieten bei Ottonow und Media Markt
Miet mich!
  1. Zahlungsabwickler Start-Up Stripe kommt nach Deutschland
  2. Whole Foods Market Amazon kauft Bio-Supermarktkette für 13,7 Milliarden Dollar
  3. Übernahmen Extreme Networks will eine Branchengröße werden

Qubits teleportieren: So funktioniert Quantenkommunikation per Satellit
Qubits teleportieren
So funktioniert Quantenkommunikation per Satellit
  1. Quantenprogrammierung "Die physikalische Welt kann kreativer sein als wir selbst"
  2. Quantenoptik Vom Batman-Fan zum Quantenphysiker
  3. Ionencomputer Wissenschaftler müssen dumme Dinge sagen dürfen

Skull & Bones angespielt: Frischer Wind für die Segel
Skull & Bones angespielt
Frischer Wind für die Segel
  1. Forza Motorsport 7 Dynamische Wolken und wackelnde Rückspiegel
  2. Square Enix Die stürmischen Ereignisse vor Life is Strange
  3. Spider-Man Superheld mit Alltagssorgen

  1. Re: Nicht-News?

    wasabi | 12:09

  2. Mit 10.14 sind KEXT tot

    /mecki78 | 12:04

  3. Re: Windows 10S wirkt

    TheUnichi | 12:02

  4. Neues GTA = neue Konsole

    genussge | 11:57

  5. Mich beeindruckt das nicht.

    Unix_Linux | 11:57


  1. 12:04

  2. 12:01

  3. 11:59

  4. 11:44

  5. 11:30

  6. 11:15

  7. 10:56

  8. 10:43


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel