Megoldások IT problémákra!

Brute-force URL fuzzer bash script

Woow micsoda cím. Hekkerkedjünk egy kicsit! Először vázolom miért folyamodtam ilyen eszközhöz utána elmondom mire lehet még használni.

Szükségem volt a BME egyik tárgyának egyik régi zárthelyi dolgozatára. Fel szokták tölteni őket a http://cs.bme.hu/~wiener/bsz2 oldalra. A gond az, hogy amikor nekem kellett, akkor már nem volt kint a link, így már nem tudtam letölteni. Reménykedtem, hogy a szerverről még nem törölték le. Végül igazam lett. Mi kellett, hogy megtaláljam? Egy URL pásztázó szkript!

Ezt lehet használni arra, hogy megtaláljunk elveszett fájlokat - illetve arra, hogy rábukkanjunk a netre nem linkelt, de a szerveren elérhető rejtett fájloka. Szóval csak óvatosan! :D

Az ötlet: generáljunk random fájlneveket, mindegyiket teszteljük le, hogy elérhető-e a megadott url-en, és egyszer csak meglesz a fájl. Vannak ilyen penetration test eszközök online is, de a többségük fizetős. Az első próbálkozásom az volt, hogy megpróbáltam legenerálni a-z és 0-9 betűkből és számokból az összes permutációt, lényegében az összes létező n darab karakterből álló szót:

a, b, c, d ... aa, ab, ac, ad ... aaa, aab, aac, aad ... aba, abb, abc, abd ...

Első ötletnek jó, de ha belegondolunk, már egy 8 karakteres fájlnévnél is 36^8 = 2'821'109'907'456 (2821 milliárd) lehetőség van - és emlékeim szerint igen hosszú 10-14 karakteres volt a keresett dolgozat fájlneve.

Ez nem jó - kell valami más ötlet. Arra emlékeztem hogyan szokták elnevezni a feltöltött ZH-kat. PL így: zh_2014.pdf vagy: bsz2_zh1_tavasz.pdf

Itt a megoldás: állítsunk össze egy szólistát, amiből szokott állni a fájlok neve, és ezeket felhasználva generáljuk le az összes lehetőséget. Például itt egy szólista amiben vannak számok, aláhúzás- és kötőjel, és pár fontos szó:

bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav

Ezekből a szavakból kellene kirakni a fájlneveket. Például: tavasz-2014-zh1.pdf vagy zh_pontozas_14_osz.pdf Ezeket szépen ki lehet "pázlizni".

A kirakós szkript:

#!/bin/bash

echo -e http://cs.bme.hu/~wiener/bsz2/{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}.pdf

echo -e http://cs.bme.hu/~wiener/bsz2/{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}.pdf

echo -e http://cs.bme.hu/~wiener/bsz2/{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}.pdf

echo -e http://cs.bme.hu/~wiener/bsz2/{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}{bsz,zh,14,_,-,2014,tavjav,bsz2,tavasz,osz,1,2,3,4,pontozas,tav}.pdf

Igen ez sajnos ilyen ronda - mivel vannak benne { } kapcsos zárójeles tartománylisták, ezért nem is lehet ráhúzni for ciklust, így hát sokszor le kell írni dolgokat.

Ezt szeretném egy fájlba generálni úgy, hogy minden fájlnév egy külön sorba kerüljön. Ehhez a szkript kimenetét átpipeolom a tr-nek ami lecseréli a szóközöket enterre végül az egészet kiírom fájlba a > jellel.

./gen.sh | tr " " "\n" > list.txt

Íme a kimenet egy részlete. Öszesen ~70'000 sor

Képernyőfotó 2014-10-25 - 5.43.46.jpg

Ezt kell odaadni a wget-nek, ami szépen végigpróbálgatja a linkeket és letölti ami elérhető.

wget -i list.txt

Le is jött 4 fájl, a teljes folyamat csak 20 percig tartott. Szegény szerver biztos nyögött egy nagyot a sok HTTP kéréstől:

wgeturlfuzzer.gif

Fakje meglett a keresett 4 fájl is:

Képernyőfotó 2014-10-25 - 5.50.59.jpg

Szóval akkor ezentúl minden ZH előtt gyorsan pásztázok egyet, hátha rábukkanok valami érdekesre :D

A bejegyzés trackback címe:

https://nerd.blog.hu/api/trackback/id/tr406830715

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

pythonozok · http://visszabeszelo.blog.hu 2015.01.24. 00:34:51

És ha véletlenül egy morcosabb rendszergazdába botlasz egy ilyen kísérlettel, akkor jó esetben a negyedik-ötödik próbára ideiglenesen letiltja a szerverről az IP-det, rosszabb esetben a behatolási kísérletnek látszó nyomok miatt a rendőrök kopogtatnak az ajtódon, te meg magyarázkodhatsz. :)))

(szóval ilyen próbálgatást ha lehet, inkább ne... ami nincs publikusan linkelve, annak oka van többnyire)

numlockholmes 2015.02.20. 11:23:22

@pythonozok: Szerintem ez nem tekinthető "behatolási kísárletnek", hisz csak URL-eket csekkolok, ha sok időm lenne, akkor akár egyesével, böngésző címsorába begépelve is megcsinálhatnám. Alább a vonatkozó paragrafus, a jogosultságom megvan ehhez.

Persze a rendszergazdi letilthat, ahogy írtad. Paranoiásoknak VPN-ről vagy TOR ról kell nyomulnia :)

423. § (1) Aki
a) információs rendszerbe az információs rendszer védelmét biztosító technikai intézkedés megsértésével vagy kijátszásával jogosulatlanul belép, vagy a belépési jogosultsága kereteit túllépve vagy azt megsértve bent marad,
b) az információs rendszer működését jogosulatlanul vagy jogosultsága kereteit megsértve akadályozza, vagy
c) információs rendszerben lévő adatot jogosulatlanul vagy jogosultsága kereteit megsértve megváltoztat, töröl vagy hozzáférhetetlenné tesz,
vétség miatt két évig terjedő szabadságvesztéssel büntetendő.

pythonozok · http://visszabeszelo.blog.hu 2015.02.20. 11:30:42

@numlockholmes: nem arról van szó, hogy milyen szándékkal használsz ilyesmit, hanem arról, hogy üzemeltetőként ez minek látszik. TOR? Hm... beszéld meg az NSA-vel is! ;)

pythonozok · http://visszabeszelo.blog.hu 2015.02.20. 11:33:13

@numlockholmes: mellesleg a c) pontot akár rád is húzhatják. Hiszen ha nem érhető el valamilyen linken át, akkor az védett adat. Más kérdés, hogy önmagában arra bízni a védelmet, hogy nincs rá közvetlen link, az elég súlyos...

2colours 2017.06.04. 21:08:28

@pythonozok: Az NSA-s kommentárod remélem, vicc volt... a c) pontban pedig az van, hogy "megváltoztat, töröl vagy hozzáférhetetéenné tesz".
Szóval kötekedni én is tudok. :P

Nerd blog!

Ezen az oldalon gyűjtöm az elém került informatikai problémákra talált megoldásokat, hátha másnak is hasznos! Ha itt végeztél kikapcsolódás képpen nézd meg a másik blogomat is: NapiGeek blog. DE TÉNYEG, OKÉ?


Címkék

10.10 (2) 10.9 (2) 7 (2) 7zip (2) 8 (2) a (2) adblock (2) agyhalott (2) alert (2) alkalmazás (3) allegro (2) android (4) animált (2) app (4) apple (17) archivum (2) atom (3) átverés (2) audio (3) bash (3) beállítás (4) beállítások (6) betűméret (3) billentyűkombináció (4) billentyűparancs (3) billentyűzet (2) bin (2) biztonság (2) blog (45) böngésző (9) box (2) cascaded (2) codeblocks (5) command (2) command line (3) crack (2) crash (2) cron (3) crontab (4) css (9) date (4) dátum (3) digitális analfabéta (2) disable (2) disk (3) div (2) drive (2) drugs bunny (2) editor (2) ellenőrzés (2) email (2) error (3) exe (2) facebook (8) fájlméret (2) fájlrendszer (2) faszbúk (4) fb (2) feed (3) feladatkezelő (2) felbontás (2) felcsatol (2) fix (2) folder (2) formázás (2) fos (5) fostalicska (2) geek (2) generálás (2) git (2) google (2) google drive (2) gps (2) graph (2) gzip (2) hack (6) hálózat (2) hang (3) háttér (3) háttérkép (2) hdd (2) header (2) helyesírás (2) hiba (3) hogyan (8) how to (2) hozzászólás (2) html (8) hu (2) id (2) időzített (2) image (2) img (2) ingyen (7) injection (2) internet (5) iphone (3) iso (3) javascript (7) kaki (2) kép (5) kikapcsol (4) kikapcsolás (2) kliens (2) kód (2) konvertálás (2) lájk (2) lekérése (2) lemezkép (2) leopard (5) letöltés (3) like (2) link (4) linux (10) lion (7) lista (2) lock (2) log (2) mac (22) macbook (7) macbook pro (4) magyar (3) magyarország (2) mavericks (5) mdf (3) mds (3) mentés (2) mini (2) mobilinternet (2) monitor (2) mount (4) mountain (3) mp4 (2) működik (2) mysql (4) nélkül (3) nem (5) nerd (47) okostelefon (2) olcsó (2) oldal (6) online (2) openoffice (3) osx (36) parancssor (5) password (2) pdf (3) php (14) plugin (4) png (3) program (2) programozás (8) rar (2) régi (2) rendszer (3) repair (2) retardált (2) rss (3) safari (3) script (2) sebesség (2) sheet (2) shell script (2) sleep (2) snow (3) sok (2) stíluslap (5) style (2) stylesheet (2) szar (5) szűrő (2) tar (2) telefon (2) telepítés (4) terminal (5) test (2) teszt (3) time (4) tömörítés (4) tor (2) törlés (2) truecrypt (2) trükk (2) túl (2) ubuntu (3) újraindítás (2) unix (5) unlimited (2) url (3) ventillátor (2) version (2) video (3) virtualbox (2) warning (2) webfejlesztés (2) weboldal (6) widget (2) windows (10) windows 10 (2) windows 7 (2) windows 8 (2) windows xp (2) xcode (2) yosemite (4) youtube (7) zip (2) zoom (2) Címkefelhő

Statisztika

süti beállítások módosítása