loader
Foto

Brute Force alkalmazása a webes alkalmazásoknál

Az OWASP módszertan egyik vizsgálati pontja az, ahol azt kell meghatározni, hogy a vizsgált webes alkalmazás brute force-olható-e. A brute force vizsgálatok elvégzésére számos módszer létezik, alkalmazhatunk burp-öt, de akár a hydra-t is. Ebben a cikkünkben hydra alkalmazással végzünk brute force vizsgálatot.

Felhívjuk az Olvasók figyelmét arra, hogy ez a cikk azért született meg, hogy a saját fejlesztésű webes alkalmazások biztonságosabbak legyenek. Nem célunk, és határozottan elzárkózunk attól, hogy segítsünk bárkinek számítógépes bűncselekmények elkövetésében.

A korábbi cikkeinkben már foglalkoztunk a DVWA-val, amelynek segítségével megismerhetők a különböző főbb webes támadások, illetve segítséget is kapunk ezeknek a támadási lehetőségeknek az elhárításában. A korábbi cikkeinkben a DVWA telepítésével, illetve a virtuális gép elkészítésével foglalkoztunk.

Folytatjuk most tovább a DVWA használatának a megismerését, most a brute force támadási módszer alapjait tekintjük át.

Vizsgáló (Kali Linux) IP címe: 192.168.56.104

Kiszolgáló IP (Ubuntu 12) címe: 192.168.56.103

 

Indítsuk el az Ubuntu, illetve a Kali Linux virtuális gépeket "Host-only" módban (1. ábra).

kep
1. ábra   A virtuális gépek hálózatának beállítása Host-only módra
 

Miután a virtuális gépek elindultak, a Kali Linuxban található böngészővel látogassuk meg a tesztalkalmazásunkat (DVWA), ahol állítsuk "Low"-ra a security módot.
Ezután kattintsunk a "Brute Force" menüpontra, amely a következő linken érhető el:

http://192.168.56.103/DVWA-master/vulnerabilities/brute/

 

Írjunk be véletlenszerűen egy felhasználónevet, illetve egy jelszót. Nagyon valószínű, hogy nem találjuk el a belépési adatokat (admin/password), ezért a 2. ábrán látható hibaüzenetet fogjuk kapni.

kep
2. ábra   Sikertelen belépés, rossz a loginnév/jelszó
 

Ehhez a hibaüzenethez a következő URL tartozik:

http://192.168.56.103/DVWA-master/vulnerabilities/brute/?username=valami&password=jelszo&Login=Login#

 

Látható, hogy a DVWA "Low" security módban egy GET kérést küld a felhasználónév/jelszó páros elküldésekor. A feladatunk tehát most az, hogy ezt a kért adatot "megpörgessük". Erre több lehetőségünk is van, és most nem a Burp suite-ot fogjuk alkalmazni, hanem a Hydra-t. Az előbbi alkalmazás segítségével kényelmesen megkapjuk a brute force-hoz szükséges session ID-t, de ezt a programot most akkor sem használjuk.
Ehelyett a böngészőnk "Inspect Element"-jét fogjuk alkalmazni, amelynek segítségével a szükséges Session ID könnyedén megszerezhető (3. ábra).

kep
3. ábra   PHPSESSID megszerzése
 

A keresett adatok a következők:

PHPSESSID: j00v4s2pv3fjj7a1upqqbtggo6
security: low

 

Most nézzük meg a Hydra alkalmazásának lehetőségeit. Ehhez szükséges megismernünk a Hydra-t, amelyet a következő utasítás kiadásával érhetünk el:

hydra -h

 

A help megjelenítésénél láthatunk különböző opciókat, illetve példákat is (4. ábra)

kep
4. ábra   Hydra alkalmazás help-je
 

Láttuk korábban, hogy a felhasználónév, illetve a jelszó GET kéréssel került elküldésre "Low" módban, ezért nekünk a "http-get-form" modult kell majd a alkalmaznunk a Hydra futtatása során. Ahhoz, hogy fel tudjuk paraméterezni a Hydra-t, nézzük meg, hogy ezt a modult hogyan tudjuk alkalmazni. Ehhez a következő utasítás kiadása szükséges:

hydra http-get-form -U

 

Most megkapjuk ehhez a modulnak a használatához szükséges segítséget (5. ábra).

kep
5. ábra   A Hydra "http-get-form" használata
 

Most már a Hydra konfigurálása a két help segítségével (4. és az 5. ábrák) kényelmesen megoldható:

hydra 192.168.56.103 -L users.txt -P jelszo.txt http-get-form "/DVWA-master/vulnerabilities/brute/index.php:username=^USER^&password=^PASS^&Login=Login:Username and/or password incorrect.:H=Cookie:PHPSESSID=j00v4s2pv3fjj7a1upqqbtggo6;security=low"

 

A "-L" kapcsoló segítségével adjuk meg azt a file-t, amelyben a felhasználók listája található, a "-P"-vel pedig azt, ahol a jelszavak vannak. Továbbá  meg kell adni az URL-t, illetve a session ID-t is (6. ábra). A Hydra felparaméterzése után indítsuk ezt el. A Hydra addig fog futni, amíg a "jelszo.txt" file-ban meg nem találja a "users.txt" file-ban lévő felhasználóhoz (admin) tartozó jelszót (password).

kep
6. ábra   Hydra alkalmazása, sikeres a jelszó "kipörgetése"
 

A futási idő nagyon nagy lehet, hiszen az összes felhasználónévre le kell próbálni az összes lehetséges jelszót. Ha tudjuk a konkrét felhasználónevet, akkor a "-l" kapcsoló után kell megadni a konkrét nevet (-l admin). 

hydra 192.168.56.103 -l admin -P jelszo.txt http-get-form "/DVWA-master/vulnerabilities/brute/index.php:username=^USER^&password=^PASS^&Login=Login:Username and/or password incorrect.:H=Cookie:PHPSESSID=j00v4s2pv3fjj7a1upqqbtggo6;security=low"

 

Futtassuk újra a Hydra-t az adott felhasználónévvel (admin).

A Kali Linux tartalmaz egy deault jelszófile-t (rockyou.txt), amely nagyon sok ismert jelszót tartalmaz. Ez a jelszógyűjtemény a "/usr/share/wordlist" elérhetőségen található meg. Adjuk meg ezt a file-t a "jelszo.txt"helyett (7. ábra).

kep
7. ábra   A rockyou.txt file alkalmazása
 

Látható a futási eredményen, hogy a "rockyou.txt" file tartalmazza a "password" szót. Fontos tehát az, hogy a saját webes alkalmazásainkban olyan jelszót válasszunk, amelyet nem tartalmaznak az ilyen (ismert) jelszógyűjtemények!

Végül egészítsük ki az utasítást a "-V"-vel, amellyel a verbose módot engedélyezzük. 

hydra 192.168.56.103 -l admin -P jelszo.txt http-get-form "/DVWA-master/vulnerabilities/brute/index.php:username=^USER^&password=^PASS^&Login=Login:Username and/or password incorrect.:H=Cookie:PHPSESSID=j00v4s2pv3fjj7a1upqqbtggo6;security=low" -V

 

Futtassuk újra a Hydra-t a verbose mód engedélyezésével. A 8. ábrán látható a futási eredmény, ahol nem csak a megtalált jelszót (password) látjuk, hanem a sikertelen kisérleteket is.

kep
8. ábra   A rockyou.txt file alkalmazása verbose módban
 

 



Egyéb cikkek

További cikkeink ebben a témakörben

Régebbi cikkeink

Elkezdünk egy sorozatot, amelyhez a Kali Linux használata elengedhetetlen lesz, de természetesen folytatjuk a C# nyelv aszinkron használatának a bemutatását is. Az IT biztonság (amely elég széles területet foglal magába) egyik elengedhetetlen eszköze. . . .

Az nmap (grafikus megjelenítésnél a ZenMap) használata az IT biztonság, illetve az üzemeltetés területén dolgozó szakembereknél szinte elkerülhetetlen. Az ingyenes szoftver segítségével tesztelhetők a számítógépeink, a számítógéphálózatunk, vizsgálha. . . .

A saját informatikai rendszerünk tesztelésénél előfordulhat, hogy meg kell változtatni a MAC címünket. Hogyan tehetjük ezt meg a Kali Linux segítségével? Megnézzük most ezt ebben a cikkben.. . . .