Szóval hacker akarsz lenni?

A közelmúltban rengeteg kérdést, hozzászólást és általános vitát olvastam az “információbiztonsági” játékba való belépésről, és legalábbis véleményem szerint ezt jellemzően elég sok félrevezető információ követi. Ez talán egy kicsit durva, tekintve, hogy biztos vagyok benne, hogy jó szándékú, még az is lehetséges, hogy a tanácsok működtek nekik (nincs mindenre egyforma tanács), de úgy gondoltam, hogy kiterítem ide a gondolataimat abban a reményben, hogy segítek egy új kezdő hackernek továbblépni.

Sportolni szeretnék, hol kezdjem el?
Ez a homályos, nyílt végű és nagyon kétértelmű kérdés nagyon hasonlít ahhoz, amikor valaki azt kérdezi, hogyan kellene belevágnia az információbiztonságba. Az első dolog, amit fel kell ismerni, hogy az információbiztonsági területek hatalmas skálája létezik, és minden egyes ilyen hatalmas területen belül egy életre elegendő tanulási tartalom van. Csakúgy, mint a sportágválasztásnál, nincs “legjobb”, egyszerűen csak van olyan terület, amit jobban élvezel, mint másokat. A fejem tetejéről itt van néhány példa területre, ami korántsem teljes körű.

  • Web Application Security
  • Reverse Engineering
  • Malware Reverse Engineering
  • Network Security
  • Incident Response
  • Standards Compliance
  • Programozás / Eszközök létrehozása mások számára
  • Exploit fejlesztés
  • Forensics
  • Egy részük inkább technikai jellegű, míg mások inkább elméleti fókuszúak. Garantálom, hogy bármit is szeretsz, vannak mások, akik unalmasnak fogják találni, ahogyan azt is, ami másokat érdekel néha. Jelenleg várható, hogy ha ezt olvasod, lehet, hogy nagyon keveset tudsz bármelyik területről, de ami fontos, az a tanulási hajlandóságod és az, hogy milyen motivációval rendelkezel.

    A hacker típus
    Az egyik védjegy, ami szinte univerzálisan jellemző az emberekre ezeken a területeken, az a független, önirányított tanulásra való összpontosítás. Sajnos a biztonság bizonyos szempontból még mindig “sötét művészetnek” számít, úgy értem, miért akarná bárki is tudni, hogyan kell betörni egy számítógépes rendszerbe, ha nem akarja ezt megtenni? Ennek eredményeképpen sok ember megvetést vagy egyenesen ellenséges magatartást tanúsít, amikor biztonsággal kapcsolatos kérdéseket tesz fel, abban a hamis (talán néha igaz) feltételezésben, hogy ez csupán egy “szkriptgyerek”, aki meg akarja tanulni a rendszerek feltörését, ahelyett, hogy tanulni és jó célra használni akarná ezt a tudást. Az is tény, hogy az információbiztonság “tanulási” forrásai meglehetősen széttagoltak, és nincs igazi központi tananyagtáruk.

    Az a lényeg, hogy ezt kiemeljük, hogy ha boldogulni és sikeresen be akarsz lépni az információbiztonság területére, akkor készen kell állnod arra, hogy beleugorj és megtaláld az utadat anélkül, hogy arra várnál, hogy valaki fogja a kezed és vezessen a helyes útra. Guglizzon be néhányat a fenti kifejezések közül, és nézze meg, mi hangzik jól. Annak ellenére, hogy néha úgy tűnik, hogy állandó harc folyik a “legjobb” tanulási terület, vagy a “legjobb” forrás, vagy a “legjobb” tanulási mód megtalálásáért, gyakran több időt töltünk azzal, hogy halogatjuk ezeket a kérdéseket, ahelyett, hogy a tényleges tanulásra fordítanánk az időt. Nézz meg videókat a youtube-on a hacker példákért – nem baj, ha nem tudod, mit jelent sok minden, de írj le egy listát, majd google ezeket a kifejezéseket. Használja az érdekeltségi pontokat, hogy egy egyre növekvő tudáshálóval izzadjon ki az Önt érdeklő témák körül.

    Meg kell tanulnom először X-et?
    Természetesen az OSI réteg teljes ismeretére van szükséged, mielőtt belekezdesz. Igen, el kell olvasnod azt az 1000 oldalas könyvet a TCP protokollról. Igen, 5 programozási nyelvben kell jártasnak lenned (legalább!), mielőtt fontolóra vennéd a hackelést. Le tudod fordítani a saját Linux kerneledet a forráskódból? Nem? Ne fáradj a hackertanulással. Tulajdonképpen…. mindez tele van hülyeséggel, mégis ez az egyik leggyakoribb válasz, amit az információbiztonságot tanulni vágyóknak adnak. A tisztességes hackerré válásnak egyetlen feltétele van – az érdeklődés. A különbség egy leendő hacker és egy szkriptgyerek között nem a tudás, hanem a tanulási hajlandóság.

    Amíg van egy halvány elképzelésed arról, hogyan kell használni egy számítógépet, addig a kiindulási ponton vagy, amivel dolgozhatsz. Igen, ha nincs szilárd fogalmad arról, hogyan működik a TCP, akkor ezt fel kell venned a teendőid listájára, hogy utánanézz, amikor valaki beszél róla egy hacking tutorialban – de nevetséges azt gondolni, hogy egy csomó előfeltételes tudásra van szükséged, mielőtt elkezdhetsz tanulni a téma iránt érdeklődő témákról. Ha megnézed, hogyan működik az a bejelentkezési rejtvény egy hackeroldalon, és JavaScriptet használ, akkor meg fogod tanulni, hogyan működik a JavaScript. Amikor végigolvasod, hogyan működik egy puffer túlcsordulás, és van egy Python sablon, akkor megtanulod a Python alapjait. Nem, nem fogsz munkát kapni fejlesztőként ezeken a nyelveken a végén, de elsajátítod a nyelv törésének gyakori módjait.

    Informális tanulás
    “Oké, értem a célzást – magamnak kell megtanulnom a dolgokat, de tudnál legalább egy kiindulási pontot adni?”

    Naná, rengeteg nagyszerű ingyenes vagy olcsó forrás létezik, amivel elkezdheted, attól függően, hogy milyen téma vonz téged. Íme néhány példa.

    Web Application Security

  • HackThisSite – Jó néhány alapvető webes alapú kihíváshoz (link)
  • Enigma Group – Hasonló a Hack this site-hoz (link)
  • OWASP Top 10 – Ötlet, hogy melyek a legjelentősebbek. leggyakoribb sebezhetőségek (link)
  • OWASP Broken Wep Apps – Egy virtuális számítógép, amit feltölthetsz, hogy gyakorold a hacker készségeket a hálózatodon (link)
  • Pentesting Lab – Egy másik webes fókuszú virtuális gép (link)
  • Tulajdonképpen bármi a vulnhubról, ami érdekel, az jó (link)
  • The Web Application Hackers Handbook – A könyv a webes hackelésről és a sebezhetőségekről (link)
  • Reverse Engineering / Malware Reversing

  • Lena’s Tutorials – Ismert, mint nagyjából az egyik legjobb bevezetés a reverse engineeringbe (link)
  • The Legends of Random – Ismét egy másik szilárd oktatóanyag a reverse engineeringhez (link)
  • Reversing: Secrets of Reverse Engineering – Egy jó könyv a reverse engineering alapjairól (link)
  • Practical Malware Analysis – Egy remek könyv, amely a rosszindulatú programok visszafordítására összpontosít (link)
  • Malware Analysts Cookbook – Egy másik könyv, amely a rosszindulatú programok visszafordítására összpontosít (link)
  • Network Security

  • Virtuális gépek dominálnak ebben a kategóriában, mivel lehetővé teszik, hogy valódi gépek ellen gyakoroljunk. Irány a vulnhub, és töltsön le minden érdekesnek tűnő VM-et (link)
  • Metasploit Unleashed – A metasploit tesztelési keretrendszer szilárd átfutása, amelyet VM-ek ellen együtt kell használni. (link)
  • The Basics of Hacking and Penetration Testing – Egy nagyon alapszintű áttekintés a penetrációs tesztelésről, amely hasznos azok számára, akik teljesen újak a területen. (link)
  • Metasploit – The Penetration Testers Guide – Egy másik könyv, amely a metasploit penetrációs tesztelésben való felhasználása köré összpontosít (link)
  • Mert ez egy ilyen hatalmas terület gyakran egy-egy aspektusra bontja le, majd kifejezetten azt az aspektust kutatja. A blogok itt a legjobb barátod. (link)
  • Exploit fejlesztés

  • Corelan – Ez messze a legjobb forrás az exploit fejlesztés megismeréséhez. (link)
  • FuzzySecurity – Egy másik jó tanulási forrás, ahol néhány oktatóanyag is elérhető (link)
  • Exploit-DB – Az egyik legjobb dolog, amit tehetsz, hogy találsz példákat exploitokra (gyakran alkalmazásokkal együtt) és megpróbálod önállóan megismételni az exploitot (link)
  • Hacking – The Art of Exploitation – Egy fantasztikus könyv, ami rengeteg különböző exploit technikát tartalmaz (link)
  • The Shellcoders Handbook – Egy másik fantasztikus könyv az exploit fejlesztésről és a shellkódolásról (link)
  • Más egyéb, Google, Google, és még több Google. Kihagytam néhány területet, mint például a törvényszéki és a megfelelés, mert személy szerint nem érdekelnek, így nem kerestem forrásokat, biztos vagyok benne, hogy vannak fantasztikusak.

    Formális tanulás
    Az ingyenes forrásokon kívül is elkezdhetsz tanúsítványokat szerezni, hogy vonzóbbá tedd magad a munkáltatók számára, ha szeretnél átmenni a területre, mint inkább karrierút. Néhány tanúsítvány, amit nagyon ajánlok, lenne a “Penetration Testing with Kali Linux” tanfolyam az Offensive Security-től (link), ha érdekel a hálózati biztonság. Ez könnyen az egyik legjobb tanulási tapasztalat, amit valaha is szereztem a területen, és 60 nap alatt többet tanultam, mint amit egy év alatt tanultam egyedül. A “Cracking the Perimeter” szintén nagyszerű tanfolyam, amely egy kicsit inkább az exploitok fejlesztésére összpontosít (link).

    Ha a programozási készségeid fejlesztését keresed, akkor az olyan dolgok, mint a SecurityTube “Python for Pentesters and Hackers” (link) egy nagyszerű alap, ami megtanít arra, hogyan csinálj rengeteg ügyes dolgot, mint például saját port scannerek, jelszó feltörők stb. építése. Nem helyezek hatalmas értéket az általuk kínált tanúsítványokba a foglalkoztatás szempontjából, de inkább úgy tekintenék rá, mint egy összevont tudás- és példatárra, amely még mindig értékes lehet.

    A “Certified Ethical Hacker” tanfolyam egy másik gyakran említett tanfolyam. Őszintén szólva jellemzően lenézik, így nem hiszem, hogy feltétlenül megéri a pénzt – de ha szükséged van egy formális tanfolyamra, hogy megtanulj dolgokat, akkor lehet, hogy megéri a pénzt neked. Sok ilyen tanúsítványok és azok értékét vitatják meg a TheEthicalHacker.net fórumokon található itt.

    “Csak megnézed, hogy tudod-e”
    A hackelés arról szól, hogy olyan dolgokhoz is hozzáférjünk, amikhez nem kellene. Egy exploit létrehozása, egy SQL injekció megtalálása, jelszó feltörése mind azt a célt szolgálja, hogy a megtámadott doboz feletti irányítás átvételét tűzzük ki célul. Garantálom, hogy szinte minden új hacker elkezdett álmodozni arról, hogy “Csak megnézik, hogy tudnak-e” hozzáférést szerezni ahhoz az iskolai weboldalhoz. “Csak megnézik, hogy tudnak-e” hozzáférést szerezni a szomszédok WiFi hálózatához. Elküldeni a barátjuknak egy trójai vírust, “hátha” átvehetik az irányítást. Még rosszabb, ha végül olyan helyekre látogatsz el, mint a HackForums.net, és sok embert látsz, akik megpróbálnak megfertőzni másokat RAT-okkal, botneteket építeni stb. abban a benyomásban, hogy ez a hackelés, vagy sajnos, hogy ez az egyetlen módja annak, hogy megtanulj.

    Hangsúlyoznom kell, hogy ez nem így van. Bármilyen “csak megnézzük, hogy tudod-e” típusú gyakorlatok megismételhetők virtuális gépek, saját routerek vagy akár capture the flag / wargame versenyek használatával odakint. Mivel reális, még ha hozzá is tudsz férni egy másik személy gépéhez, mit fogsz csinálni vele? Tényleg megpróbálod ellopni a hitelkártyaadatokat és csalárd tranzakciókat végrehajtani? Tényleg jelszavakat fogsz lopni, és paranoiás leszel, hogy a tevékenységed visszavezethető lesz hozzád, csak azért, hogy belekukkants valakinek az e-mailjeibe? Rengeteg példa volt már arra, hogy újoncokat vádoltak meg, akik nem voltak tisztában az általuk elkövetett bűncselekmények súlyosságával. Ha az FBI-nál jelentkeznél egy állásra, és átnéznék a hozzászólási előzményeidet, szeretnéd, ha elolvasnák azt a hozzászólást, amiben azt kérdezed, hogyan lehet botnetet üzemeltetni? Ez egy klasszikus példája annak, hogy ami az interneten van, az örökre szól, és ha tényleg az információbiztonság területén akarsz karriert csinálni, akkor szükséged van erre a tiszta nyilvántartásra, hogy megkapd a munkádhoz szükséges biztonsági engedélyeket. Az, hogy hülyeségek miatt lebuksz, egyszerűen nem éri meg.

    Összefoglaló
    A hosszú eszmefuttatás után tehát mi a lényeg?

  • A hacker aktívan keresi az információt, nem várja meg, hogy mások adják neki
  • A különbség egy szkriptgyerek és egy új hacker között a tanulási vágyban rejlik
  • Az információbiztonsági területek széles skálájával kell kísérletezned, hogy megtaláld, ami érdekel
  • Ne hagyd, hogy bárki azt mondja neked, hogy az információbiztonság megtanulásának előfeltételei vannak, nincsenek.
  • Nem érdemes “csak úgy megnézni, hogy tudsz-e” bármit is csinálni, ami nem legális, a kockázat vs. jutalom miatt nincs értelme ezt tenni
  • A tanfolyamokkal, hadijátékokkal, capture the flags és ami még fontosabb, virtuális gépekkel nincs olyan hackelési forgatókönyv, amit ne lehetne legálisan megismételni
  • Kellemes szórakozást, bocs, ha a vége felé prédikálós lett, és jó pwning boxokat! Az információbiztonság egy fantasztikus terület, és minden nap, amikor részt veszel benne, valami újat fogsz tanulni. Nincs helyes válasz a területre való bejutásra azon kívül, hogy két lábbal beleugrasz. Legyél vizes, tanulj meg vizet taposni és a felszínen maradni, egy nap talán még úszni is tudsz egy kicsit!

    Vélemény, hozzászólás?

    Az e-mail-címet nem tesszük közzé.