In viitor vreau sa devin Penetration Tester/Ethical Hacker si as avea nevoie de ceva sfaturi despre cum sa imi incep cariera. Tin sa mentionez ca nu am scolarizarea in domeniul IT si ma gandeam sa fac cursuri de Front End Developer in viitorul apropiat.
Ce cursuri ar trebui sa fac mai specifice pentru a ajunge Penetration Tester/Ethical Hacker?
Ce joburi se gasesc pentru cei fara experienta sau eventual cu ceva cunostinte de la curs, atunci cand o sa il fac?
Offensive Security (creatorii Kali Linux) sunt cam top-notch in acest domeniu. Ofera certificari + cursuri, in care ai acces inclusiv la penetration testing labs, adica niste servere/sisteme vulnerabile pe care sa te poti antrena, in siguranta. Tot la capitolul asta mai putem aduce in discutie si HackTheBox, BinaryGhost (proiect romanesc).
Comunitatile de security din Romania: RST Forums - cam cea mai veche si cea mai mare (am cont acolo din 2009, dar nu mai activez de ceva ani) Rough Tech - comunitate mai noua, dar si mai restransa, pe Discord.
Cam cel mai mare site de news feed, din industrie
Aici ar 2 cursuri de 10+ ore pe youtube, de la freeCodeCamp/edureka care sunt un punct bun de pornire.
Aici iarasi prezentare foarte buna despre cum se poate exploata in PHP vulnerabilitati ca RCE (Remote Code Execution), Privilege Escalation…
Incepe cu CTF-uri (Capture the flag) intr-o echipa, o sa inveti extrem de multe lucruri care nici nu credeai ca sunt posibile, am putea crea un subiect pe forum.
De obicei primele challenge-uri sunt foarte simple, dar te poti duce pe multe fire gresite.
Dupa se ingroasa treaba, am avut challenge care necesita inclusiv sa stii ca in jocul The Secret of Monkey Island cd-key-ul se introducea sub foma unui cerc numit Dial-a-Pirate pe care trebuia sa nimeresti fetele ca sa obtii cd-key-ul.
Dupa o sa ai nevoie si de cunostiinte de programare, de exemplu trebuie sa implementezi un cititor de QR code colorat care ia qr-code-urile de pe fiecare culoare si le incearca pana gaseste combinatia care se poate decoda. Sau ai un zip in care ai 10000 de fisiere zip recursiv si parola fiecarui fisier e un caracter dintr-un string base64.
Instaleaza-ti Burp Suite Community si cauta pe YouTube tutoriale despre Burp Suite sa te familiarizezi cu aplicatia.
hackerone.com e o platforma dedicata pt. Bug Bounty aka “ethical hacker”. Au si o sectiune pt. inceput LEARN HOW TO HACK. Apoi exista un forum secret rusesc pe care stau majoritatea hackerilor, cauta dupa #bugbountytips.
Dar… daaaar… daca o faci pt. strict “ca se fac bani” si nu din pasiune, nu te astepta ca o sa faci bani prea curand, e foarte mult de studiat la inceput, plus ca este un domeniu care evolueaza constant.
Intradevar, dar posibil nu cu el trebuie sa incepi, ci cu intelegerea a ce inseamna vulnerabilitati. Sunt foarte multe tool-uri pentru diferite scopuri.
Daca macar deschide Burp si vede ce face, poate intelege ce-i un proxy si cum functioneaza. Daca se uita prin request-uri, poate aprofundeaza teoria HTTP si care-i diferenta dintre HEAD si GET. Spre exemplu, eu am reinventat roata acum ceva timp si am dezvoltat un framework de bots pentru IRC; asta m-a facut sa fac research pe TCP, IRC, parsing, cum sa structurezi un framework dintr-o aplicatie simpla, etc. Mi-am scris propriul web fuzzer, asta m-a facut sa citesc gramada despre HTTP, headers, restul de prostii. Sunt doar exemple.
Revenind la postarea originala: pentru toate astea nu ai nevoie de “front end” sau “back end” - puse intentionat in ghilimele, pentru ca de ce ai nevoie este cunostinta generala. Inveti singur front end, si in cel mai bun caz identifici niste XSS, si cam aia e. Dar strict doar cu cunostinte de front end, n-o sa fii capabil sa intelegi cum functioneaza un back end, pentru a putea sa gasesti “probleme”. Nu iti plasa toata atentia pe un limbaj, framework, sau zona.
De mult timp ma gadesc sa trec pe partea de IT ca si activitate profesionala doar ca anul asta a fost si cel in care am facut ceva in privinta asta. Am ales “Front-End” pentru ca nu am scolarizarea in domeniu IT sau apropiat si m-am gandit ca asa ar fi mai bine sa procedez pentru a incepe de undeva.
Prin ianuarie eram hotarat si am luat decizia de a face cursul de “Front-End” pana cand am vorbit pe la jumatea lui martie cu cineva care a lucrat pe WebDesign si ma facut sa imi dau seama ca ceva nu se leaga cand mi-a zis, citez: “nu te mai intinde ca o liana ca nu faci nici o cepa…”(ii multumesc pe calea asta), apoi am inceput sa caut informatii si am realizat ca Penetration Tester/Ethical Hacker este ceea ce imi place cu adevarat.
Penetration Tester/Ethical Hacker din cate am mai citit pe internet se pare ca nu poti ajunge decat dupa ce ai experienta destul de mare si multe cunostinte in domeniu.
M-am gandit sa fac cursul de “Front-End”, de inceput, care incepe in mai (sa pot lucra in IT) iar apoi sa merg mai departe cu ce imi place si ce pot sa fac.
Sună foarte pompos “ethical hacking” și este unul din cele mai dificile domenii de testare. Este un fel de full stack developer care se specializează pe security. Trebuie să fii familiar cu tot: frontend, backend, sisteme de operare. La care adaugi și testare.
Este o alegere bună să începi cu ceva mai simplu. Atenție însă, front end, backend și testarea sunt 3 ramuri diferite. Adică dacă ți-ai început cariera ca și frontend, ai ajuns la un nivel de cunoștințe (sau mai bine zis nu mai ai răbdare/motivație să faci frontend) trebuie să o iei de la capăt cu învățatul pentru backend. Același lucru pentru testare. Un pronostic optimist: 8 ani ca să le acumulezi pe toate.
Dar te rog nu mă lăsa să te descurajez, ci să te motivez.
Ca să o luăm cu începutul: cum ai ajuns să dorești cariera asta? Nu știu dacă se merită efortul având în vedere cât de puține cereri sunt pe piață specific legat de ramura asta. Și mie mi-a surâs la un moment dat ideea de a învăța hacking.
Poate că și @invatamprogramare ar putea să te ajute cu niște sugestii mai practice, ținând cont că de asta se ocupă.
Sfatul meu. GO FOR IT.
Dar, dacă nu faci asta din plăcere și nu ai nici un fel de “rush” când ai reverse shell pe Armitage atunci nu e de tine. Domeniul e foarte dynamic, complex și de multe ori se întâmplă lucruri atât de imprevizibile încăt tot ce era posibil/imposibil ieri, devine posibil/imposibil mâine. Serios vorbind cred ca sunt șanse mai mari sa poți prezice bursa pe Wall Street decât ce se întâmplă in următoarele 2 săptămâni în domeniul ăsta.
Se fac bani, destul de mulți chiar. Sunt diverse corporații care plătesc bani grei pentru astfel de pen test-uri. Secretul, think out of the box. Citește tot ce prinzi, de la coding la bârfa din media de la networking la manuale pentru echipamente industriale.
Ma repet, dacă nu simți satisfacție când faci asta și o faci doar pentru titlu și bani, nu vei putea sa o faci niciodată.