Kezdőoldal » Számítástechnika » Programozás » Milyen könyvel kellene kezdene...

Milyen könyvel kellene kezdenem, vagy hol kezdjek el olvasgatni, ha valami brute force -os vagy hasonló programot akarok készíteni?

Figyelt kérdés
Esetleg ha tudna valaki benne segíteni akkor lehet írni üzenetet.

2013. márc. 19. 21:41
 1/10 anonim ***** válasza:

Nem igazán kell ehhez könyv.

Ha tudsz programozni és tudod a brute force elméletét (húúú baromi bonyolult), akkor elég könnyen meg lehet csinálni.

2013. márc. 19. 21:42
Hasznos számodra ez a válasz?
 2/10 A kérdező kommentje:
és valami konkrétabb válasz? hogy milyen programozással kezdjem? vagy hol találom meg a brute force elméletet?
2013. márc. 19. 21:47
 3/10 anonim ***** válasza:
100%

A brute force az, amikor egyenként végigpróbálgatod a lehetőségeket. Összefoglalva, amikor ész helyett erővel esel neki a feladatnak, ezért nagyon lassan fut a kódod.

Példa:

Ki kell találni egy jelszót, erre te elkezded bepötyögni az összes kombinációt egymás után.

Vagy keresed a prímszámokat 1-től ((pontosabban 2-től) 100-ig, erre végigosztasz minden számot az összes nála kisebb számmal, kivéve az egyet. Ha egyikkel sem osztható, akkor prím. Igazából elég lenne a nnégyzetgyökig próbálkozni, és csak a kisebb prímszámokat sorra venni, de ezzel a brute force nem gondol, mert nem gondolkodik.

2013. márc. 19. 21:54
Hasznos számodra ez a válasz?
 4/10 A kérdező kommentje:
Idáig én is eljutottam, hogy hogyan dolgozik a brute force, de arra nem tudok rájönni, hogy hogyan kezdjek neki... c++ ban kellene? vagy java vagy mi?
2013. márc. 19. 21:59
 5/10 anonim ***** válasza:

Teljesen mindegy.

A programozási feladat nyelv független, bármilyen nyelven lehet implementálni.


Válassz egy szimpatikus programozási nyelvet és kezd el tanulni.

Pl a Python egész barátságos, de azt választasz amit akarsz.

2013. márc. 19. 22:10
Hasznos számodra ez a válasz?
 6/10 A kérdező kommentje:
Pythonnal még nem foglalkoztam... utána nézek... még esetleg, ha valaki tudna benne segíteni még jobb volna...
2013. márc. 19. 22:38
 7/10 anonim ***** válasza:

Az összes programnyelvben ugyanaz a dolog. Fogod a dolgot, amihez kell a jelszó, mondjuk egy csomagolt rar fájlhoz.

Elkezdesz egy while ciklust, amiben elkezded az a jelszótól a zzzzzzzzzzzz (sok Z, számokkal és jelekkel fűszerezve) jelszóig mindet végigpróbálni. A jelszót betöltöd egy jelszo nevű String változóba, és meghívod a

unrar x -p jelszo rarfajl.rar

parancsot addig, amíg az nem ad vissza sikeres kicsomagolásról szóló üzenetet. Elindítod a cuccot, megiszol egy nagyon hosszú kávét, és mire visszaérsz, meg is leszel Ez egy példa. Ugyanez minden mással is, a rar-t cseréld ki honlapra, zip-re, akármire.


Ha online fiókot akarsz törni, akkor képfelismerésen is dolgozz (captcha védelem), és készíts be sok proxy-t, mert kelleni fognak.

2013. márc. 19. 23:00
Hasznos számodra ez a válasz?
 8/10 anonim ***** válasza:

1. Egy hello world-öt legalább össze tudsz hozni, bármilyen nyelven?


2. Ugye tudod, hogy totál esélytelen, hogy brute force-al feltörj bármilyen online account-ot?


Csak számolj egy kicsit, a legbénább rendszerekben is megkövetelik már manapság a minimum 6 karakter hosszú jelszavak használatát, a karakterkészlet pedig általában a teljes Unicode, de az egyszerűség kedvéért vegyük csak az angol ABC kis betűit és a decimális számrendszer számait, ez 36 karakter.

Az összes lehetőség tehát 36^6, ez annyi, mint 2176782336.

Azaz ~2 milliárd. Tegyük fel, hogy átlagosan egy jelszótörésnél az összes lehetőség felét kell végigpörgetni, az ~1 milliárd. Továbbá tegyük fel, hogy másodpercenként 1 jelszót tudsz kipróbálni -> átlagosan ~16,6 millió percig tart -> 2,7 millió óráig-> ~ 115000 napig -> ~ 31 évig, amíg feltörsz egy account-ot :D

És itt feltételeztük azt, hogy nem lesz 6 karakternél több a jelszó.


És akkor most házi feladat, hogy ugyanezt számold ki olyan jelszavakra, amik minimum 8, maximum 16 karakter hosszúak, a magyar ABC kis-és nagybetűit, illetve számokat és a következő speciális karaktereket is tartalmazhatják:?,:[szóköz]+-;!/=().


Ja és arról az apróságról még nem is beszéltünk, hogy a legtöbb rendszer 3-4-N rossz próbálkozás után lockolja az accountot... :D


Más: tegyük fel, h. jelszóvédett RAR file-okat akarsz törni, vagy bármi olyasmit, ahol 1. gyorsan tudod próbálgatni a jelszavakat 2. nem lockol, ha 3x elrontod. A házifeladat-jelszóhalmazzal számold ki, hogy pl. másodpercenként 1000 próbálkozással mennyi idő lenne. Vagy másodpercenként 10000-el.

2013. márc. 20. 08:42
Hasznos számodra ez a válasz?
 9/10 A kérdező kommentje:
Van egy zip password recovery-m amin másodpercenkén 17 millió jelszó fut át rajta, ha éppen mellette nem fut semmilyen program :) szóval nem hiszem, hogy annyira kellene számolgatnom, ha zip-es fájlt akarok feltörni. Egyébként, meg így belegondolva egy online accot tényleg sokáig tartana feltörni brute-val :\
2013. ápr. 22. 22:10
 10/10 anonim ***** válasza:
100%

"szóval nem hiszem, hogy annyira kellene számolgatnom, ha zip-es fájlt akarok feltörni."


Szerintem meg de. De látom, még ahhoz is lusta/h*lye vagy, hogy kicsit gondolkodj.

Nézzük csak:

A legegyszerűbb példánál maradva(angol ABC, csak kisbetűk, és számok, pontosan 6 karakter hosszúság) 117 másodpercig tarthat egy zip file törése(2 milliárd osztva 17 millióval).

Ha még egy karaktert hozzáadsz, tehát 7 hosszú jelszót feltételezel, akkor 4609 másodperc = 76 perc, több, mint egy óra.


És akkor nézzünk egy példát, ami kicsit közelebb van a valósághoz: magyar ABC+számok+spec. karakterek, legfeljebb 8 karakter hosszú jelszó(de lehet rövidebb is!)

A kiterjesztett magyar ABC 44 betű, de a dupla betűket nem számoljuk, így marad 36 karakter. Ehhez hozzáadjuk a 10 számjegyet, és a következő 12 speciális karaktert:

?,:[szóköz]+-;!/=()

36+10+12 = 58 karakter.

Mivel lehet rövidebb is, mint 8 karakter, a következőt kell kiszámolni:

58+58^2+58^3+58^4+58^5+58^6+58^7+58^8


Ezt elosztva 17 millióval kijön, hogy 7665282 másodperc kell maximum a feltöréshez. Feltéve, hogy a használt jelszavak egyenletesen oszlanak el, átlagosan fele ennyi időbe telik feltörni a file-okat, azaz 3832641 másodpercig. A többi számolást már nem pötyögöm ide, de a lényeg, hogy átlagosan 44 napig tart feltörni egy ilyen zip file-t. Ha neked van ilyesmire másfél hónapod(rossz esetben majdnem 3), akkor nagyon irigyellek :D


Továbbá, lehet, hogy most azt gondolod magadban, hogy "fú de fasza, csak 44 nap, akkor megszerzem az FBI-tól a FBI_top_secret_who_killed_john_kennedy.zip-et, aztán jól feltöröm, és meggazdagszok belőle", azért az jusson eszedbe, hogy az FBI is pontosan tudja ezt, amit leírtam, ezért nem 8 karakter hosszú, hanem mondjuk 60 karakter hosszú jelszavakat használnak a zip-ek titkosításához(persze nyilván nem sz-arakodnak ők zip-el, ez csak egy példa :) ), úgyhogy még ha a világ összes szuperszámítógépének számítási kapacitása is a birtokodban lenne, akkor is hamarabb zuhanna bele a Föld a Napba, minthogy te végezz a töréssel.


Összegezve: teljesen felesleges a brute force-al sz-arakodni, soha az életben semmilyen értelmes, értékes információhoz nem fogsz így hozzájutni, legfeljebb a szomszéd Pistike bezip-elt szerelmeslevelét fogod feltörni, amit Marikának küldött email-ben, és aminek az a jelszava, hogy "marika". És lehet, hogy neked ettől dagad majd a kukid a nadrágodban, hogy milyen ügyes "hekker" vagy, de inkább nőj fel, és hagyd az ilyen gyerekes f-szságokat.

2013. ápr. 23. 10:42
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!