Shvatite što hakiranje je. Općenito govoreći, hakiranje se odnosi na različite tehnike koje se koriste za kompromitiranje ili dobivanje pristupa digitalnom sustavu. To može biti računalo, mobilni telefon ili tablet ili cijela mreža. Hakiranje uključuje brojne specijalizirane vještine. Neki su vrlo tehnički. Drugi su više psihološki. Postoji mnogo različitih tipova hakera koji su motivirani različitim razlozima.
razumjeti etiku hakiranja. Unatoč načinima na koje se hakeri prikazuju u popularnoj kulturi, hakiranje nije ni dobro ni loše. Može se koristiti za oboje. Hakeri su jednostavno tehnički potkovani ljudi koji vole rješavati probleme i prevladavati ograničenja. Možete upotrijebiti svoje hakerske vještine za pronalaženje rješenja za probleme ili možete upotrijebiti svoje vještine za stvaranje problema i sudjelovanje u ilegalnim aktivnostima.
Upozorenje: Dobivanje pristupa računalima koja ne pripadaju vama vrlo je nezakonito. Odlučite li svoje hakerske vještine koristiti u takve svrhe, imajte na umu da postoje i drugi hakeri koji svoje vještine koriste za dobro (oni se nazivaju bijeli hakeri). Neki od njih dobivaju velike novce da napadaju loše hakere (hakere s crnim šeširom). Ako te uhvate, ići ćeš u zatvor.
Naučite koristiti Internet i HTML. Ako namjeravate hakirati, morat ćete znati koristiti internet. Ne samo kako koristiti web preglednik, već i kako koristiti napredne tehnike preglednika. Također ćete morati znati kako stvoriti internetski sadržaj koristeći HTML. Učenje HTML-a također će vas naučiti nekim dobrim mentalnim navikama koje će vam pomoći u učenju programiranja.
Naučite programirati. Učenje programskog jezika može potrajati, stoga morate biti strpljivi. Usredotočite se na učenje razmišljanja kao programer umjesto učenja pojedinačnih jezika. Usredotočite se na slične koncepte u svim programskim jezicima. C i C++ su jezici na kojima su izgrađeni Linux i Windows. On (zajedno s asemblerskim jezikom) uči nešto vrlo važno u hakiranju: kako memorija radi. Python i Ruby moćni su skriptni jezici visoke razine koji se mogu koristiti za automatizaciju raznih zadataka. PHP se isplati naučiti jer većina web aplikacija koristi PHP. Perl je razuman izbor iu ovom polju. Potrebna je bash skripta. Unix/Linux sustavima se stoga lako manipulira. Možete koristiti Bash za pisanje skripti, koje će obaviti većinu posla umjesto vas. Asemblerski jezik se mora poznavati. To je osnovni jezik koji vaš procesor razumije, a postoje mnoge varijacije. Ne možete stvarno koristiti program ako ne znate asembler.
Nabavite otvoreni sustav temeljen na Unixu i naučite ga koristiti. Postoji široka obitelj operativnih sustava temeljenih na Unixu, uključujući Linux. Velika većina web poslužitelja na Internetu temeljena je na Unixu. Dakle, morat ćete naučiti Unix ako želite hakirati internet. Također, sustavi otvorenog koda kao što je Linux dopuštaju vam da čitate i mijenjate izvorni kod kako biste ga petljali. Postoji mnogo različitih Unix i Linux distribucija. Najpopularnija Linux distribucija je Ubuntu. Možete instalirati Linux kao primarni operativni sustav ili možete stvoriti Linux virtualni stroj. Također možete Dual Boot Windows i Ubuntu.
Prvo osigurajte svoj stroj. Da biste mogli hakirati, morate imati sustav za vježbanje svojih izvrsnih hakerskih vještina. Međutim, provjerite imate li ovlasti za napad na svoju metu. Možete napasti svoju mrežu, zatražiti pismeno dopuštenje ili postaviti svoj laboratorij s virtualnim strojevima. Napad na sustav bez dopuštenja, bez obzira na njegov sadržaj, nezakonit je i htjeti dovesti te u nevolju. Boot2root su sustavi posebno dizajnirani za hakiranje. Ove sustave možete preuzeti online i instalirati pomoću softvera virtualnog stroja. Možete vježbati hakiranje ovih sustava.
Upoznajte svoju metu. Proces prikupljanja informacija o vašoj meti poznat je kao enumeracija. Cilj je uspostaviti aktivnu vezu s metom i pronaći ranjivosti koje se mogu koristiti za daljnju eksploataciju sustava. Postoji niz alata i tehnika koje mogu pomoći u procesu popisivanja. Nabrajanje se može izvesti na raznim internetskim protokolima uključujući NetBIOS, SNMP, NTP, LDAP, SMTP, DNS te Windows i Linux sustave. Evo nekih informacija koje želite prikupiti: Korisnička imena i nazivi grupa. Imena hostova. Mrežne dijeljene i servisne IP tablice i tablice usmjeravanja. Postavke usluge i konfiguracije revizije. Aplikacije i banneri. SNMP i DNS detalji.
Testirajte metu. Možete li doći do daljinskog sustava? Iako možete koristiti uslužni program ping (uključen u većinu operativnih sustava) da vidite je li meta aktivna, ne možete uvijek vjerovati rezultatima – oslanja se na ICMP protokol, koji paranoični administratori sustava mogu lako isključiti. Također možete koristiti alate za provjeru e-pošte da vidite koji poslužitelj e-pošte koriste. Alate za hakiranje možete pronaći pretraživanjem foruma za hakiranje.
Pokrenite skeniranje porta. Možete koristiti mrežni skener za pokretanje skeniranja priključaka. To će vam pokazati koji su portovi otvoreni na stroju, OS-u i može vam čak reći koju vrstu vatrozida ili usmjerivača koriste kako biste mogli planirati postupak.
Pronađite način ili otvorena luka u sustavu. Uobičajeni priključci kao što su FTP (21) i HTTP (80) često su dobro zaštićeni i mogu biti ranjivi samo na iskorištavanja koja tek treba otkriti. Pokušajte s drugim TCP i UDP portovima koji su možda zaboravljeni, kao što su Telnet i razni UDP portovi koji su ostavljeni otvoreni za LAN igranje. Otvoreni port 22 obično je dokaz SSH (sigurne ljuske) usluge koja radi na cilju, što se ponekad može brutalno forsirati.
Provali lozinku ili postupak provjere autentičnosti. Postoji nekoliko metoda za probijanje lozinke. Oni uključuju nešto od sljedećeg:
Sirova snaga: Brute force napad jednostavno pokušava pogoditi korisničku lozinku. Ovo je korisno za dobivanje pristupa lozinkama koje se lako mogu pogoditi (tj. password123). Hakeri često koriste alate koji brzo pogađaju različite riječi iz rječnika kako bi pokušali pogoditi lozinku. Kako biste se zaštitili od napada grubom silom, izbjegavajte korištenje jednostavnih riječi kao lozinki. Svakako koristite kombinaciju slova, brojeva i posebnih znakova.
socijalni inženjering: Za ovu tehniku, haker će kontaktirati korisnika i prevariti ga da da svoju lozinku. Na primjer, tvrde da su iz IT odjela i kažu korisniku da im je potrebna lozinka za rješavanje problema. Također mogu ići roniti po kontejneru kako bi potražili informacije ili pokušali pristupiti sigurnoj sobi. Zato nikada nikome ne biste trebali dati svoju lozinku, ma tko se predstavljao. Uvijek uništite sve dokumente koji sadrže osobne podatke.
phishing: U ovoj tehnici haker šalje lažnu e-poštu korisniku za koju se čini da je od osobe ili tvrtke kojoj korisnik vjeruje. E-pošta može sadržavati privitak koji instalira špijunski softver ili keylogger. Također može sadržavati poveznicu na lažnu poslovnu web stranicu (koju je izradio haker) koja izgleda autentično. Od korisnika se tada traži da unese svoje osobne podatke, kojima haker zatim dobiva pristup. Kako biste izbjegli ove prijevare, ne otvarajte e-poštu u koju ne vjerujete. Uvijek provjerite je li web mjesto sigurno (sadrži “HTTPS” u URL-u). Prijavite se izravno na poslovne stranice umjesto klikanja na veze u e-poruci.
ARP spoofing: U ovoj tehnici haker koristi aplikaciju na svom pametnom telefonu kako bi stvorio lažnu Wi-Fi pristupnu točku na koju se može prijaviti bilo tko na javnoj lokaciji. Hakeri mu mogu dati ime koje izgleda kao da pripada lokalnoj ustanovi. Ljudi se prijavljuju na njega misleći da se prijavljuju na javni Wi-Fi. Aplikacija tada bilježi sve podatke koje preko interneta prenose ljudi koji su u nju prijavljeni. Ako se prijave na račun pomoću korisničkog imena i lozinke preko nekriptirane veze, aplikacija će pohraniti te podatke i hakeru dati pristup. Kako biste izbjegli da postanete žrtva ove prijevare, izbjegavajte korištenje javnog Wi-Fija. Ako morate koristiti javni Wi-Fi, provjerite kod vlasnika ustanove jeste li se prijavili na ispravnu internetsku pristupnu točku. Provjerite je li vaša veza šifrirana tako da u URL-u potražite lokot. Također možete koristiti VPN.
Nabavite superkorisnika privilegije. Većina informacija koje će biti od vitalnog interesa su zaštićene i potrebna vam je određena razina autentifikacije da biste ih dobili. Da biste vidjeli sve datoteke na svom računalu, potrebne su vam privilegije superkorisnika—korisnički račun koji ima iste privilegije kao “root” korisnik na operativnim sustavima Linux i BSD. Za usmjerivače, ovo je zadani “admin” račun (osim ako se ne promijeni); za Windows, ovo je administratorski račun. Postoji nekoliko trikova pomoću kojih možete dobiti privilegije superkorisnika:
Prelijevanje međuspremnika: Ako znate raspored memorije sustava, možete mu dati unos koji međuspremnik ne može pohraniti. Vlastitim kodom možete prebrisati lozinku pohranjenu u memoriji i preuzeti kontrolu nad sustavom. Na sustavima sličnim Unixu, to će se dogoditi ako softver s greškama ima bit setUID postavljen za pohranu dopuštenja za datoteke. Program će se izvršiti kao drugi korisnik (na primjer superkorisnik).
Napravite stražnja vrata. Nakon što dobijete potpunu kontrolu nad strojem, bilo bi dobro provjeriti možete li se ponovno vratiti. Da biste stvorili backdoor, trebate instalirati zlonamjerni softver na važnu uslugu sustava, kao što je SSH poslužitelj. To će vam omogućiti da zaobiđete standardni sustav provjere autentičnosti. Međutim, vaša stražnja vrata mogu biti uklonjena tijekom sljedeće nadogradnje sustava. Iskusni haker napravio bi backdoor samom kompajleru, tako da bi bilo koji kompilirani softver bio potencijalni način da se vrati.
Prikriti tragove. Ne dajte administratoru do znanja da je sustav ugrožen. Ne radite nikakve izmjene na web stranici. Nemojte stvarati više datoteka nego što vam je potrebno. Nemojte stvarati dodatne korisnike. Djelujte što je brže moguće. Ako ste zakrpali poslužitelj kao što je SSHD, provjerite ima li vašu tajnu lozinku tvrdo kodiranu. Ako se netko pokuša prijaviti ovom lozinkom, poslužitelj bi ga trebao pustiti, ali ona ne bi trebala sadržavati nikakve ključne informacije.