Cunoașterea unei mari varietăți de subiecte din domeniul informaticii este necesară, însă cunoașterea lucrurilor în profunzime este cheia succesului unui hacker. Prin urmare, a avea o atitudine pozitivă față de învățare este esențială în călătoria de învățare pentru a deveni un hacker.
Mai jos este ghidul pas cu pas pe care l-am creat pentru a vă învăța cum să deveniți un hacker:
- Pasul 0: Citiți Manifestul Hacking
- Pasul 1: Învățați să programați în C
- Pasul 2: Învățați mai mult de un limbaj de programare
- Pasul 3: Învățați UNIX
- Pasul 4: Învățați mai mult de un sistem de operare
- Pasul 5: Învață conceptele de rețea
- Step 6: Start Simple: Citiți câteva tutoriale despre hacking
- Pasul 7: Învățați criptografia
- Pasul 8: Experimentați mult
- Pasul 9: Citiți câteva cărți bune de la experți
- Pasul 10: Participați la provocări de hacking
- Etapa 11: Treceți la nivelul următor: Scrieți Vulnerabilitatea
- Pasul 12: Contribuiți la proiecte de securitate cu sursă deschisă
- Pasul 13: Continuați să învățați și continuați să ascultați discuții despre securitate
- Rezumat
Pasul 0: Citiți Manifestul Hacking
Nu este o sarcină ușoară să fii un hacker. Ca hacker, trebuie să ai o atitudine și curiozitate. Citirea manifestului hacking poate să vă învețe atitudinea unui hacker. Cultivarea atitudinii de hacker constă mai degrabă în dezvoltarea competenței în limbaje decât în a avea o atitudine stereotipică.
Deși mulți oameni consideră că un hacker este un infractor; Cu toate acestea, în viața reală, aceștia sunt angajați de marile companii pentru a proteja informațiile și a minimiza potențialele daune. Actul de hacking este, de fapt, acela de a fi o persoană prea curioasă și de a păcăli autoritatea. În calitate de hacker, ar trebui să fii hotărât să încalci regulile autoritare, secretul și cenzura. Înșelăciunea este un alt arsenal care vă va permite să vă feriți de ochii vigilenți ai autorității.
Acțiunea de a fura ceva sau de a face rău cuiva nu este hacking. Astfel de oameni sunt numiți în mod obișnuit crackeri în comunitate. Crackerii sunt implicați în activități ilegale și nu vă voi recomanda să vă implicați în astfel de activități.
Pasul 1: Învățați să programați în C
Programarea în C este unul dintre cele mai puternice limbaje în programarea calculatoarelor, Este necesar să stăpâniți cu adevărat acest limbaj. Acest limbaj de programare a fost inventat de Denise Ritchie între anii 1969 și 1973 la AT& T Bell Labs. Programarea C vă va ajuta, în esență, să împărțiți sarcina în bucăți mai mici, iar aceste bucăți pot fi exprimate printr-o secvență de comenzi. Încercați să scrieți un program pe cont propriu evaluând logica.
Există sute de tutoriale gratuite de programare C PDF & disponibile pe web pentru a învăța, însă v-aș recomanda să începeți cu o carte de programare c simplă și bine scrisă la alegere și apoi să citiți această carte (C Programming Language
By Brian W. Kernighan and Dennis M. Ritchie) pentru a înțelege adevărata putere a limbajului c.
Această carte nu este o lectură ușoară, cu toate acestea este o carte pe care trebuie să o citiți pentru a obține o înțelegere în profunzime pentru programarea C.
Pasul 2: Învățați mai mult de un limbaj de programare
Când încercați să deveniți un hacker, este foarte important să învățați alte limbaje moderne de programare pentru calculatoare, cum ar fi Java, Perl, PHP și Python. Una dintre cele mai bune modalități de a le învăța acestea este prin citirea unor cărți ale experților. De asemenea, vă va ajuta să cunoașteți limbaje de marcare precum XML, HTML și formate de date precum JSON, Protobuf și altele, care reprezintă o modalitate obișnuită de a transfera date între client și server.
Java este unul dintre cele mai populare limbaje de programare. S-a afirmat că este, de asemenea, foarte sigur. Cunoașterea modelului de securitate Java vă va permite să înțelegeți modul în care acest limbaj realizează securitatea. Aflați care sunt lacunele de securitate din limbajul Java și din cadrele aferente. Alegeți și citiți din multe PDF-uri, tutoriale și cărți electronice gratuite disponibile pentru a învăța java online.
Perl este un limbaj de programare dinamic de uz general, care este de nivel înalt și poate fi interpretat. Acest limbaj împrumută unele caracteristici ale limbajului C. Pe de altă parte, JAVA este un limbaj de programare concurent, bazat pe clase și orientat pe obiecte. Python este foarte util atunci când încercați să automatizați unele sarcini repetitive.
HTML este limbajul de marcare pe baza căruia sunt proiectate, create și afișate paginile web. Browserele web citesc codul HTML pentru a afișa pagina web.
Python este cel mai bun limbaj pentru dezvoltarea web și limbajul favorit al multor programatori datorită simplității și rapidității sale. O mulțime de oameni folosesc Python pentru a face automatizări simple și complexe.
Pentru mai multe tutoriale de limbaj de programare verificați – cele mai bune tutoriale de programare.
Pasul 3: Învățați UNIX
UNIX este un sistem de operare pentru computere multi-tasking și multi-utilizator care este proiectat pentru a oferi o bună securitate sistemelor. acest sistem de operare a fost dezvoltat de unii angajați ai AT&T în Bell Labs. cel mai bun mod de a-l învăța este să intrați într-o versiune open-source (de exemplu centos) și să instalați/executați același lucru pe cont propriu. Puteți opera internetul fără să învățați UNIX, dar nu este posibil să fiți un hacker de internet fără să înțelegeți UNIX.
Dacă nu ați folosit încă sistemul de operare Unix, câteva comenzi linux esențiale vă vor face să vă simțiți confortabil pentru a începe rapid.
Unix in a Nutshell de Arnold Robbins este o modalitate bună de a începe. Această carte vă va învăța cum să folosiți Unix.
Următorul lucru pe care trebuie să îl cunoașteți este partea internă a acestui sistem de operare. Vă recomand
The Design of the UNIX Operating System de Maurice J. Bach pentru a înțelege în profunzime sistemul de operare Unix.
Un număr mare de servere web sunt găzduite pe servere bazate pe Unix și cunoașterea elementelor interne ale acestui sistem de operare va fi cu adevărat un mare imbold pentru abilitățile dumneavoastră.
Pasul 4: Învățați mai mult de un sistem de operare
Există multe alte sisteme de operare în afară de UNIX. Sistemul de operare Windows este unul dintre cele mai frecvent compromise sisteme, prin urmare este bine să învățați hackingul sistemelor Microsoft, care sunt sisteme cu sursă închisă.
Conform National Vulnerability Database, sistemele de operare Microsoft au un număr mare de vulnerabilități.
Instalatorii sistemului de operare Windows sunt distribuiți în format binar, prin urmare nu este ușor pentru dumneavoastră să citiți codul. Codul binar este, în principiu, reprezentarea digitală a textului și a datelor pe care calculatorul le înțelege. Cu toate acestea, cunoașterea modului în care sunt scrise programele pentru Windows și a modului în care diferite aplicații se comportă pe acest sistem de operare va fi de ajutor.
Una dintre vulnerabilitățile recente ale unui sistem de operare popular a fost faptul că aplicațiile Java Web Start sunt lansate automat chiar dacă plug-in-urile Java sunt dezactivate. Cum să fii hacker înseamnă să cunoști punctele slabe ale acestor sisteme de operare și să le țintești în mod sistematic.
Pasul 5: Învață conceptele de rețea
Conceptul de rețea trebuie să fie ascuțit atunci când vrei să fii hacker.
Înțelegerea modului în care sunt create rețelele este importantă, cu toate acestea, trebuie să cunoașteți diferențele dintre diferitele tipuri sunt rețele. A avea o înțelegere clară a protocolului TCP/IP și UDP este o necesitate pentru a putea exploata vulnerabilitățile de pe world wide web.
Înțelegeți ce este o subrețea, LAN, WAN și VPN.
Vă recomand Computer Networking: A Top-Down Approach de James F. Kurose și Keith W. Ross
Comandațiile de rețea pentru a face o cerere HTTP trebuie să fie la îndemână. Protocolul HTTP este poarta prin care se intră în lumea internetului. Prin urmare, este necesar să se învețe acest protocol pentru a sparge barierele. Hackerii folosesc adesea poarta de acces HTTP pentru a încălca securitatea sistemului și a prelua controlul asupra acestuia.
Apache Httpd este unul dintre cele mai utilizate servere web și cunoașterea lui în și din afara lui vă va împuternici în orice demersuri legate de HTTP sau de alte protocoale de nivel de aplicație.
Nmap este un instrument puternic de scanare a rețelei care este folosit de hackeri și de profesioniștii în securitate din întreaga lume pentru a identifica gazdele vulnerabile. Cu toate acestea, pentru a începe să-l utilizați în mod eficient, trebuie să înțelegeți elementele de bază ale rețelei. Pentru a obține abilități avansate pe NMap puteți consulta cartea creatorilor – Nmap Network Scanning: The Official Nmap Project Guide to Network Discovery and Security Scanning
Step 6: Start Simple: Citiți câteva tutoriale despre hacking
Acesta este cel mai simplu și cel mai bun mod de a începe. Citiți cât mai multe tutoriale care sunt destinate hacking-ului. Aceste articole vă vor oferi o perspectivă și vă vor ajuta să vă dezvoltați atitudinea de a fi un hacker. Unele tutoriale vă vor iniția cu Nmap, Nessus și SuperScan, unele dintre programele sau instrumentele de hacking pe care hackerii le folosesc în general. Aceste tutoriale sunt disponibile cu ușurință pe internet; Atât tutoriale text, cât și tutoriale video sunt disponibile pentru a vă răspunde la întrebarea cum să fiți un hacker.
Pasul 7: Învățați criptografia
Ca un hacker expert, trebuie să înțelegeți și să stăpâniți arta criptografiei. Tehnologia de criptografie și criptare este foarte importantă pentru internet și rețele. Este practica și studiul tehnicilor care sunt folosite pentru o comunicare sigură în prezența unor terțe părți. Criptarea se face pentru diferite aspecte ale securității informațiilor, cum ar fi confidențialitatea datelor, integritatea datelor și autentificarea. În plus, tehnologia criptografiei este utilizată pe scară largă în cazul cardurilor ATM, al parolelor de calculator și al comerțului electronic. În timpul pirateriei informatice, aceste coduri criptate trebuie să fie sparte, ceea ce se numește decriptare.
Criptografia este foarte utilizată în comunicarea pe internet bazată pe SSL. Un hacker expert ar trebui să fie capabil să înțeleagă cum funcționează SSL și care este importanța criptografiei în menținerea securității SSL.
Încercați să citiți despre diverși algoritmi de criptare și vedeți de ce sunt greu de decriptat. Participați la provocări pentru decriptarea criptării puternice. Un hacker expert va fi capabil să demonstreze punctele slabe ale unui algoritm de criptare și ar trebui să fie capabil să scrie un program care să arate cum se poate realiza decriptarea fără prea multe informații despre chei.
Înțelegeți diverse tehnici folosite pentru spargerea parolelor. Există zeci de instrumente disponibile pentru a face spargerea parolelor, iar utilizarea lor nu înseamnă hacking. Pentru a fi un expert în hacking este important să înțelegeți cum să creați un program care poate sparge o parolă din textul cifrat.
Vă recomand acest curs gratuit de criptografie ținut de Dan Boneh de la Universitatea Stanford la Coursera
Pasul 8: Experimentați mult
Este un pas important pentru a vă configura ca un hacker expert. Configurați un laborator pe cont propriu pentru a experimenta învățarea pe aplicații practice. Cel mai simplu laborator va avea calculatorul tău, însă, odată ce avansezi, s-ar putea să vrei să adaugi din ce în ce mai multe calculatoare și hardware-ul necesar pentru experimentele tale.
Este bine să încerci să experimentezi pe propriile calculatoare, unde poți rectifica dacă ai făcut vreo greșeală. Mulți hackeri încep inițial prin a descărca aplicații de laborator virtual, cum ar fi Oracle VirtualBox. Aveți nevoie de cel puțin 3 GB de memorie RAM și de un procesor relativ puternic pentru a vă realiza experimentele de hacking. Configurarea mașinii virtuale este crucială, deoarece vă va permite să testați viruși, aplicații și diferite servere fără să vă afectați propriul PC.
Câteva dintre lucrurile pe care ar trebui să le aveți în vedere atunci când faceți experimente
- Păstrați o copie de rezervă înainte de orice experiment.
- Începeți cu un număr mic și aveți puncte de control.
- Știți când să vă opriți.
- Documentați-vă progresul
- Continuați să improvizați
- Automatizați sarcinile repetitive
Pasul 9: Citiți câteva cărți bune de la experți
Căutarea vă va îmbunătăți întotdeauna cunoștințele. Încercați să citiți cât mai multe cărți și articole scrise de experții în domeniul hackingului etic și al securității întreprinderilor
Căutarea multor lucruri legate de orice este atât de importantă în lumea hackerilor încât trebuie să luați în considerare și îmbunătățirea vitezei de citire. Dacă viteza dvs. de citire este lentă, atunci este posibil să nu puteți progresa rapid în acest domeniu. Practicați tehnici de citire rapidă, cum ar fi skimming, chunk reading, etc.
Când vine vorba de a citi mult, este de asemenea important să știți că majoritatea conținutului de pe web nu merită timpul dumneavoastră. Mulți oameni se folosesc de trucuri ale motoarelor de căutare pentru a atrage trafic, dar nu au prea multă valoare în el. Dacă parcurgeți un articol în câteva secunde și decideți să nu citiți, asta vă va economisi mult timp pentru un conținut cu adevărat bine documentat.
The Art of Exploitation de Jon Erickson este o carte excelentă pentru a vă învăța să deveniți un hacker avansat.
Pasul 10: Participați la provocări de hacking
Participarea regulată la provocări de hacking vă poate ajuta să învățați mai mult și să vă ascuțiți cunoștințele. Există mai multe companii care organizează aceste provocări pentru a verifica vulnerabilitatea produselor lor software. Cea mai frecventă provocare de hacking include spargerea sistemului de securitate al software-ului și preluarea controlului asupra sistemelor informatice ale terților. În afară de aceasta, există câteva site-uri web enumerate mai jos care oferă în mod regulat provocări de hacking online.
- hackquest.de
- hacktissite.org
- www.trythis0ne.com
- www.hackchallenge.net
- hacking-lab.com
Etapa 11: Treceți la nivelul următor: Scrieți Vulnerabilitatea
Vulnerabilitatea unui program este punctul slab al programului. Este o abordare bună să căutați vulnerabilitatea unui program existent și să împărtășiți același lucru cu ceilalți. În acest fel, veți avea opțiunea de a colecta opinii variate din diferite surse, ceea ce vă va permite să vă perfecționați setul actual de abilități.
Exemplele de vulnerabilități informatice includ încălcarea siguranței memoriei, eroarea de validare a intrărilor, erori de confuzie a privilegiilor și eșecul interfeței cu utilizatorul. De exemplu, Microsoft’s Internet Explorer 11 a avut în versiunea sa de previzualizare bug-ul de vulnerabilitate pe care mai mulți hackeri l-au exploatat.
Identificarea unui nou punct slab în orice software este adevărata muncă pe care orice hacker expert ar efectua-o.
Pasul 12: Contribuiți la proiecte de securitate cu sursă deschisă
Contribuirea la un proiect de securitate informatică cu sursă deschisă este o platformă excelentă pentru a vă testa abilitățile. Acest lucru nu este pe placul tuturor. Multe organizații precum Mozilla și Apache oferă aceste tipuri de proiecte open source. Încercați să faceți parte din aceste proiecte și adăugați o contribuție valoroasă în beneficiul comunității.
Participarea la proiectele de securitate open source, cum ar fi anti-spam, anti-virus, firewall și eliminări de date, vă ajută să vă măriți dexteritatea ca hacker.
Contribuiți descoperirile dvs. de vulnerabilități la bazele de date globale de vulnerabilități și dați înapoi comunității.
Amintiți-vă că nu contează dacă contribuția dvs. este mică, atâta timp cât participați și adăugați valoare, aceasta ajută.
Pasul 13: Continuați să învățați și continuați să ascultați discuții despre securitate
Cheia succesului în cariera de hacker este învățarea continuă. Citirea blogurilor de hacking disponibile pe site-uri precum hackerfactor blog și IKEA hacker blog; participarea la forumuri precum hackforums.net și elite hack sunt modalități excelente de a vă reîmprospăta cunoștințele ca hacker. Forumurile video online precum TED sau TechTalk sunt surse bune pentru a afla mai multe despre tehnicile și tehnologiile emergente de hacking care sunt implementate. De asemenea, ar trebui să încercați să urmăriți postările unor hackeri faimoși precum Adrian Lamo, Kevin Mitnick, Kevin Poulsen și Robert Tappan Morris.
Rezumat
Cele de mai sus sunt câțiva pași exhaustivi care vă pot învăța cum să fiți un hacker și vă pot ajuta să parcurgeți drumul de a fi un hacker expert. Cu toate acestea, ar trebui să fiți un cetățean responsabil și să fiți selectiv, asigurându-vă că nu folosiți această abilitate pentru a încălca securitatea unor instituții importante, deoarece acest lucru vă poate aduce în situații dificile. Ar trebui să vă amintiți întotdeauna că, pentru fiecare instrument de hacking, există întotdeauna un instrument de contra-hacking. Prin urmare, fiți un hacker inteligent și, mai ales, fiți un hacker responsabil.