A számítástechnikai témák széles körének ismerete szükséges, azonban a dolgok mélyreható ismerete a hacker sikerének kulcsa. Ezért a tanuláshoz való pozitív hozzáállás elengedhetetlen a hackerré válás megtanulásához vezető úton.
Az alábbiakban az általam készített, lépésről lépésre felépített útmutatót olvashatod, amelyből megtanulhatod, hogyan legyél hacker:
- 0. lépés: Olvasd el a Hacking Manifesto
- 1. lépés: Tanuljon meg C nyelven programozni
- 2. lépés: Tanulj meg egynél több programozási nyelvet
- 3. lépés: UNIX megtanulása
- 4. lépés: Tanuljon meg több operációs rendszert
- 5. lépés: Tanuld meg a hálózati koncepciókat
- Step 6: Start Simple: Olvasson el néhány oktatóanyagot a hackelésről
- 7. lépés: Tanulja meg a kriptográfiát
- Step 8: Experiment A lot
- 9. lépés: Olvass néhány jó könyvet szakértőktől
- 10. lépés: Vegyél részt hackerkihívásokban
- 11. lépés: Következő szint: Sebezhetőség írása
- 12. lépés: Hozzájárulás nyílt forráskódú biztonsági projektekhez
- 13. lépés: Folytasd a tanulást és hallgass folyamatosan biztonsági előadásokat
- Összefoglaló
0. lépés: Olvasd el a Hacking Manifesto
Nem könnyű feladat hackernek lenni. Hackerként hozzáállásra és kíváncsiságra van szükséged. A hacker kiáltvány elolvasása megtaníthat a hacker attitűdre. A hacker hozzáállás ápolása inkább a nyelvi kompetencia fejlesztéséről szól, mintsem a sztereotip hozzáállásról.
Bár sokan úgy gondolják, hogy a hacker bűnöző; A való életben azonban a nagyvállalatok alkalmazzák őket az információk védelmére és a lehetséges károk minimalizálására. A hacker tevékenység valójában az, hogy túl kíváncsi és túljár a hatóság eszén. Hackerként pokolian elszántnak kell lenned a tekintélyelvű szabályok, a titkolózás és a cenzúra áthágására. A megtévesztés egy másik arzenál, amely lehetővé teszi, hogy kikerüld a hatóság éber szemeit.
Az, hogy ellopsz valamit vagy kárt okozol valakinek, nem hackelés. Az ilyen embereket a közösségben általában crackereknek nevezik. A crackerek illegális tevékenységekben vesznek részt, és nem ajánlom, hogy ilyen tevékenységekben vegyen részt.
1. lépés: Tanuljon meg C nyelven programozni
A C programozás az egyik legerősebb nyelv a számítógépes programozásban, Ezt a nyelvet valóban el kell sajátítani. Ezt a programozási nyelvet Denise Ritchie találta ki 1969 és 1973 között az AT& T Bell Labs-ben. A C programozás lényegében segít a feladatot kisebb darabokra osztani, és ezeket a darabokat parancsok sorozatával lehet kifejezni. Próbáljon meg néhány programot írni saját maga, felmérve a logikát.
A weben több száz ingyenes C programozás PDF & oktatóanyag áll rendelkezésre a tanuláshoz, azonban azt javasolnám, hogy kezdje egy egyszerű és jól megírt c programozási könyvvel, amit szeretne, majd olvassa el ezt a könyvet (C programozási nyelv
By Brian W. Kernighan and Dennis M. Ritchie), hogy megértse a c nyelv valódi erejét.
Ez a könyv nem könnyű olvasmány, azonban kötelező elolvasni a könyvet, hogy mélyrehatóan megértsd a C programozást.
2. lépés: Tanulj meg egynél több programozási nyelvet
Ha hackerré akarsz válni, nagyon fontos, hogy megtanulj más modern számítógépes programozási nyelveket is, például a Java, Perl, PHP és Python nyelveket. Ezek elsajátításának egyik legjobb módja, ha szakértőktől származó könyveket olvasol. Az is segít, ha ismeri az olyan jelölőnyelveket, mint az XML, a HTML és az olyan adatformátumokat, mint a JSON, a Protobuf és mások, amelyek az ügyfél és a szerver közötti adatátvitel általános módját jelentik.
A java az egyik legnépszerűbb programozási nyelv. Azt állítják, hogy nagyon biztonságos is. A Java biztonsági modelljének ismerete képessé tesz arra, hogy megértse, hogyan éri el ez a nyelv a biztonságot. Ismerje meg a Java nyelv és a kapcsolódó keretrendszerek biztonsági réseit. Válasszon és olvasson a sok ingyenes PDF, oktatóanyag és e-könyv közül, amelyek a java online tanulásához rendelkezésre állnak.
A Perl egy általános célú dinamikus programozási nyelv, amely magas szintű és értelmezhető. Ez a nyelv a C nyelv néhány jellemzőjét kölcsönzi. Másrészt a JAVA konkurens, osztályalapú és objektumorientált programozási nyelv. A Python nagyon hasznos, ha bizonyos ismétlődő feladatokat próbál automatizálni.
A HTML az a jelölőnyelv, amely alapján a weboldalakat tervezik, létrehozzák és megjelenítik. A webböngészők a HTML kódot olvassák a weblap megjelenítéséhez.
A Python a legjobb nyelv a webfejlesztéshez és sok programozó kedvenc nyelve az egyszerűsége és gyorsasága miatt. Sokan használják a Pythont egyszerű és összetett automatizáláshoz.
Még több programozási nyelvi oktatóanyagért nézze meg – legjobb programozási oktatóanyagok.
3. lépés: UNIX megtanulása
A UNIX egy többfeladatos és többfelhasználós számítógépes operációs rendszer, amelyet úgy terveztek, hogy jó biztonságot nyújtson a rendszereknek.Ezt az operációs rendszert az AT&T néhány alkalmazottja fejlesztette ki a Bell Labs-ben.A legjobb módja a megtanulásának, ha beszállsz egy nyílt forráskódú verzióba (pl. centos) és saját magad telepíted/futtatod. Az internetet működtetheted anélkül, hogy megtanulnád a UNIX-ot, de nem lehetsz internetes hacker a UNIX megértése nélkül.
Ha még nem használtál Unix operációs rendszert, néhány alapvető linux parancs segítségével gyorsan el tudod kezdeni.
Az Arnold Robbins által írt Unix in a Nutshell című könyv jó kiindulási alap. Ez a könyv megtanít a Unix használatára.
A következő dolog, amit ismerned kell, ennek az operációs rendszernek a belső részei. A Unix operációs rendszer mélyebb megértéséhez Maurice J. Bach
The Design of the UNIX Operating System című könyvét ajánlom.
A webszerverek nagy része Unix-alapú szervereken fut, és ennek az operációs rendszernek a belső részeit ismerve igazán nagyot fog lendíteni a képességein.
4. lépés: Tanuljon meg több operációs rendszert
A UNIX-on kívül sok más operációs rendszer is létezik. A Windows operációs rendszer az egyik leggyakrabban veszélyeztetett rendszer, ezért jó, ha megtanulod a Microsoft rendszerek feltörését, amelyek zárt forráskódú rendszerek.
A National Vulnerability Database szerint a Microsoft operációs rendszerek nagyszámú sebezhetőséggel rendelkeznek.
A Windows operációs rendszer telepítőit bináris formában terjesztik, ezért nem könnyű elolvasni a kódot. A bináris kód alapvetően a szöveg és az adatok digitális reprezentációja, amelyet a számítógép megért. Az azonban segít, ha tudjuk, hogyan íródnak a programok a windowsra, és hogyan viselkednek a különböző alkalmazások ezen az operációs rendszeren.
Egy népszerű operációs rendszer egyik közelmúltbeli sebezhetősége az volt, hogy a Java Web Start alkalmazások akkor is automatikusan elindulnak, ha a Java-bővítmények ki vannak kapcsolva. A hogyan legyél hacker arról szól, hogy ismerd meg ezeknek az operációs rendszereknek a gyenge pontjait, és szisztematikusan célozd meg őket.
5. lépés: Tanuld meg a hálózati koncepciókat
A hálózati koncepciónak élesnek kell lennie, ha hacker akarsz lenni.
A hálózatok létrehozásának megértése fontos, azonban ismerned kell a különböző típusú hálózatok közötti különbségeket. A TCP/IP és az UDP protokoll világos megértése elengedhetetlen ahhoz, hogy ki lehessen használni a világháló sebezhetőségeit.
Tudja, mi az alhálózat, a LAN, a WAN és a VPN.
A számítógépes hálózatépítést ajánlom: A Top-Down Approach By James F. Kurose and Keith W. Ross
A HTTP-kéréshez szükséges hálózati parancsoknak kéznél kell lenniük. A HTTP protokoll az a kapu, amelyen keresztül az ember belép az internet világába. Ezért szükséges megtanulni ezt a protokollt, hogy áttörhessük a korlátokat. A hackerek gyakran használják a HTTP átjárót, hogy áttörjék a rendszer biztonságát, és átvegyék az irányítást a rendszer felett.
Apache Httpd az egyik leggyakrabban használt webkiszolgáló, és a HTTP vagy más alkalmazási réteg protokollal kapcsolatos törekvésekhez szükséges ismeretekkel fel fogja hatalmazni Önt.
A Nmap egy hatékony hálózati szkennelő eszköz, amelyet a hackerek és a biztonsági szakemberek világszerte használnak a sebezhető állomáshelyek azonosítására. Ahhoz azonban, hogy hatékonyan kezdje el használni, meg kell értenie a hálózati alapokat. Az NMap fejlett ismereteinek megszerzéséhez az alkotók könyvére – Nmap Network Scanning – hivatkozhat: The Official Nmap Project Guide to Network Discovery and Security Scanning
Step 6: Start Simple: Olvasson el néhány oktatóanyagot a hackelésről
Ez az egyszerű és legjobb módja a kezdésnek. Olvass el minél több olyan oktatóanyagot, ami a hackelésről szól. Ezek a cikkek betekintést nyújtanak és segítenek kifejleszteni azt a hozzáállást, hogy hacker legyél. Egyes oktatóanyagok beavatnak az Nmap, a Nessus és a SuperScan programokba, néhány olyan hackerprogramba vagy eszközbe, amelyeket a hackerek általában használnak. Ezek az oktatóanyagok könnyen elérhetők az interneten; Szöveges és videós oktatóanyagok egyaránt rendelkezésre állnak, hogy választ kapjon arra a kérdésére, hogyan lehet hacker.
7. lépés: Tanulja meg a kriptográfiát
A szakértő hackerként meg kell értenie és el kell sajátítania a kriptográfia művészetét. A kriptográfia és a titkosítás technológiája nagyon fontos az internet és a hálózatépítés szempontjából. Ez azoknak a technikáknak a gyakorlása és tanulmányozása, amelyeket a biztonságos kommunikációhoz használnak harmadik felek jelenlétében. A titkosítás az információbiztonság különböző szempontjai, például az adatok titkossága, az adatok integritása és a hitelesítés érdekében történik. A kriptográfia technológiáját továbbá széles körben használják a bankkártyák, a számítógépes jelszavak és az e-kereskedelem területén. Feltöréskor ezeket a titkosított kódokat fel kell törni, amit visszafejtésnek nevezünk.
A kriptográfiát nagymértékben használják az SSL-alapú internetes kommunikációban. Egy szakértő hackernek képesnek kell lennie arra, hogy megértse, hogyan működik az SSL, és mi a kriptográfia jelentősége az SSL biztonságban tartásában.
Próbáljon meg olvasni a különböző titkosítási algoritmusokról, és nézze meg, miért nehéz őket visszafejteni. Vegyen részt az erős titkosítás visszafejtésére irányuló kihívásokban. Egy szakértő hacker képes lesz bemutatni egy titkosítási algoritmus gyenge pontjait, és képesnek kell lennie olyan programot írni, amely megmutatja, hogyan lehet a dekódolást a kulcsokról szóló sok információ nélkül elvégezni.
Tudja a jelszavak feltörésére használt különböző technikákat. Tucatnyi eszköz áll rendelkezésre jelszófeltöréshez, és ezek használata nem hackelés. Ahhoz, hogy szakértője legyél a hackelésnek, fontos, hogy megértsd, hogyan kell létrehozni egy olyan programot, amely képes feltörni egy jelszót a rejtjelezett szövegből.
Ezt az ingyenes Cryptography Course By Dan Boneh from Stanford University at Coursera
Step 8: Experiment A lot
Ez egy fontos lépés ahhoz, hogy szakértő hackerré válj. Állíts be egy saját laboratóriumot, hogy a gyakorlati alkalmazásokon kísérletezz a tanulással. A legegyszerűbb laboratóriumban a számítógéped lesz, azonban ha már előrehaladtál, egyre több számítógépet és a kísérleteidhez szükséges hardvert akarhatsz hozzáadni.
Nem árt, ha a saját számítógépeiden próbálsz kísérletezni, ahol ki tudod javítani, ha valamilyen hibát követtél el. Sok hacker kezdetben virtuális laboratóriumi alkalmazások, például az Oracle VirtualBox letöltésével kezdi. A hackerkísérletek elvégzéséhez legalább 3 GB RAM-ra és viszonylag erős processzorra van szükség. A virtuális gép beállítása kulcsfontosságú, mivel lehetővé teszi a vírusok, alkalmazások és különböző szerverek tesztelését anélkül, hogy a saját számítógépét befolyásolná.
Egy pár dolog, amit szem előtt kell tartania, amikor kísérleteket végez
- Minden kísérlet előtt készítsen biztonsági mentést.
- Kicsiben kezdj, és legyenek ellenőrzési pontjaid.
- Tudd, mikor kell abbahagyni.
- Dokumentáld a fejlődésedet
- Folyamatosan improvizálj
- Automatizáld az ismétlődő feladatokat
9. lépés: Olvass néhány jó könyvet szakértőktől
Az olvasás mindig növeli a tudásodat. Próbálj meg minél több könyvet és cikket elolvasni, amelyeket az etikus hackelés és a vállalati biztonság szakértői írtak
A hackerek világában annyira fontos, hogy az olvasási sebességed növelésére is gondolnod kell. Ha az olvasási sebességed lassú, akkor nem biztos, hogy gyorsan tudsz fejlődni ezen a területen. Gyakorold a gyorsolvasási technikákat, mint például a skimming, a chunk reading stb.
Amikor a sok olvasásról van szó, azt is fontos tudni, hogy a világhálón található tartalmak többsége nem éri meg az idődet. Sokan keresőmotoros trükkökkel próbálnak forgalmat vonzani, de kevés értéket képviselnek. Ha másodpercek alatt átfutsz egy cikket, és úgy döntesz, hogy nem olvasod el, azzal rengeteg időt spórolsz meg néhány igazán jól kutatott tartalomra.
The Art of Exploitation by Jon Erickson egy kiváló könyv, amely megtanít arra, hogy haladó hackerré válj.
10. lépés: Vegyél részt hackerkihívásokban
A hackerkihívásokban való rendszeres részvétel segíthet abban, hogy többet tanulj és csiszold a tudásodat. Számos vállalat szervez ilyen kihívásokat, hogy ellenőrizze a szoftvertermékeik sebezhetőségét. A leggyakoribb hackerkihívás a szoftver biztonsági rendszerének feltörése és a harmadik fél számítógépes rendszerei feletti irányítás átvétele. Ezen kívül van néhány alább felsorolt weboldal, amelyek rendszeresen kínálnak online hackerkihívásokat.
- hackquest.de
- hacktissite.org
- www.trythis0ne.com
- www.hackchallenge.net
- hacking-lab.com
11. lépés: Következő szint: Sebezhetőség írása
A program sebezhetősége a program gyenge pontja. Jó megközelítés egy meglévő program sebezhetőségét megkeresni és megosztani másokkal. Ily módon lehetősége lesz változatos véleményeket gyűjteni különböző forrásokból, ami lehetővé teszi, hogy csiszolja jelenlegi készségeit.
A számítógépes sebezhetőségek példái közé tartozik a memóriabiztonság megsértése, a bemeneti érvényesítési hiba, a jogosultságok összezavarásának hibái és a felhasználói felület hibája. Például a Microsoft Internet Explorer 11-es verziójának előnézeti változatában volt a sebezhetőségi hiba, amelyet több hacker is kihasznált.
Minden szoftver új gyenge pontjának azonosítása az igazi munka, amelyet minden szakértő hacker elvégezne.
12. lépés: Hozzájárulás nyílt forráskódú biztonsági projektekhez
A nyílt forráskódú számítógépes biztonsági projekthez való hozzájárulás remek platform a képességeid tesztelésére. Ez nem mindenkinek a kedvence. Számos szervezet, például a Mozilla és az Apache kínál ilyen típusú nyílt forráskódú projekteket. Próbáljon meg részt venni ezekben a projektekben, és értékes hozzájárulást nyújtani a közösség javára.
A nyílt forráskódú biztonsági projektekben, például a spam- és vírusirtásban, a tűzfal- és adateltávolításban való részvétel segít növelni a hackerként való ügyességét.
Tegye hozzá a sebezhetőségi felfedezéseit a globális sebezhetőségi adatbázisokhoz, és adjon vissza a közösségnek.
Ne feledd, hogy nem számít, ha a hozzájárulásod kicsi, amíg részt veszel és értéket teremtesz, az segít.
13. lépés: Folytasd a tanulást és hallgass folyamatosan biztonsági előadásokat
A hacker karriered sikerének kulcsa a folyamatos tanulás. Olvasás blogok hacker elérhető oldalakon, mint hackerfactor blog és IKEA hacker blog; részt vesz a fórumokon, mint hackforums.net és elite hack nagyszerű módja annak, hogy frissítse a tudás, mint egy hacker. Az olyan online videofórumok, mint a TED vagy a TechTalk jó források arra, hogy többet tudj meg a kialakulóban lévő hacker technikákról és technológiákról. Meg kell próbálnod követni az olyan híres hackerek bejegyzéseit is, mint Adrian Lamo, Kevin Mitnick, Kevin Poulsen és Robert Tappan Morris.
Összefoglaló
A fentiekben néhány kimerítő lépést ismertetünk, amelyek megtanítanak arra, hogyan lehetsz hacker, és segítenek végigjárni a szakértő hackerré válás útját. Azonban felelősségteljes állampolgárnak kell lenned, és szelektívnek kell lenned, biztosítva, hogy ne használd ezt a képességet fontos intézmények biztonságának megsértésére, mivel ezzel súlyos helyzetbe kerülhetsz. Mindig emlékeznie kell arra, hogy minden hackereszközhöz mindig van egy ellen-hackereszköz. Ezért legyen okos hacker, és ami még fontosabb, legyen felelős hacker.