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. über Duerenhoff GmbH, Bielefeld
  2. L-Bank Staatsbank für Baden-Württemberg, Karlsruhe
  3. Helicopter Flight Training Services GmbH, Bückeburg
  4. Robert Bosch GmbH, Bühl


Anzeige
Spiele-Angebote
  1. 8,99€
  2. (-63%) 7,49€

Folgen Sie uns
       


  1. E-Autos

    2019 will Volvo elektrische Lkw verkaufen

  2. Xbox Game Pass

    Auch ganz neue Konsolenspiele im Monatsabo für 10 Euro

  3. Tesla

    Elon Musk spielt mit hohem Risiko

  4. Mondwettbewerb

    Niemand gewinnt den Google Lunar X-Prize

  5. Festnetz und Mobilfunk

    Telekom kämpft mit Zerstörungen durch den Orkan Friederike

  6. God of War

    Papa Kratos kämpft ab April 2018

  7. Domain

    Richard Gutjahr pfändet Compact-online.de

  8. Carsharing

    Drivenow und Car2Go wollen fusionieren

  9. Autonomes Fahren

    Alstom testet automatisierten Zugbetrieb

  10. Detectron

    Facebook gibt eigene Objekterkennung frei



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Sgnl im Hands on: Sieht blöd aus, funktioniert aber
Sgnl im Hands on
Sieht blöd aus, funktioniert aber
  1. NGSFF alias M.3 Adata zeigt seine erste SSD mit breiterer Platine
  2. Displaytechnik Samsung soll faltbares Smartphone auf CES gezeigt haben
  3. Vuzix Blade im Hands on Neue Datenbrille mit einem scharfen und hellen Bild

Matthias Maurer: Ein Astronaut taucht unter
Matthias Maurer
Ein Astronaut taucht unter
  1. Rocketlab Billigrakete startet erfolgreich in Neuseeland
  2. Planetologie Forscher finden große Eisvorkommen auf dem Mars
  3. SpaceX Geheimer Satellit der US-Regierung ist startklar

Zahlungsverkehr: Das Bankkonto wird offener
Zahlungsverkehr
Das Bankkonto wird offener
  1. Gerichtsurteil Internet- und Fernsehkunden müssen bei Umzug weiterzahlen
  2. Breitbandmessung Provider halten versprochene Geschwindigkeit fast nie ein
  3. EU-Verordnung Verbraucherschützer gegen Netzsperren zum Verbraucherschutz

  1. Re: Gravenreuth pfändete taz.de

    Schrödinger's... | 08:49

  2. Re: Know-How in der deutschen Autoindustrie

    ScaniaMF | 08:49

  3. Re: I-Pace

    ronlol | 08:46

  4. Re: Interessant mit aber

    felix.schwarz | 08:45

  5. Re: immer noch lahmer als Chrome..

    Lord Gamma | 08:44


  1. 08:56

  2. 08:41

  3. 07:47

  4. 07:29

  5. 18:19

  6. 18:08

  7. 17:53

  8. 17:42


  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