Top 10 sebezhetőség az owasp-ból
Az Open Web Application Security Project (OWASP) nyílt projekt a webes alkalmazások védelmére. Az OWASP közösség magában foglalja a vállalatok, oktatási szervezetek és a világ minden tájáról érkező magánszemélyeket. A közösség olyan cikkek, kézikönyvek, dokumentáció, eszközök és technológiák létrehozásával foglalkozik, amelyek szabadon elérhetőek.
Az OWASP Top 10 listája hét vállalat nyolc adatbázisából áll, köztük négy tanácsadó cég és három SaaS-gyártó. A közös adatbázis több mint 500 000 sebezhetőséget tartalmaz több száz szervezetben és több ezer alkalmazásban.
A1 kód végrehajtása
A2 Helytelen hitelesítés és munkamenet-kezelés
A3 Crossite parancsfájlkészítés (XSS)
A4 Nem biztonságos közvetlen objektum hivatkozások
A5 Nem biztonságos konfiguráció
A6 Érzékeny adatszivárgás
A7 A beléptetés funkciójának hiánya
A8 helyszíni lekérdezés-hamisítás (CSRF)
A9 Ismert sérülékenységgel rendelkező összetevők használata
A10 Nem átirányított átirányítások
Minden adat általában tárolja speciális adatbázisok, amelyre való hivatkozás van kialakítva formájában lekérdezések, gyakran írt egy speciális nyelven SQL lekérdezések (Structured Query Language - Structured Query Language).
Az alkalmazások SQL lekérdezéseket használnak az adatok fogadására, hozzáadására, módosítására vagy törlésére, például egy felhasználó személyes adatainak szerkesztésénél vagy egy űrlap kitöltésekor a webhelyen. Ha a felhasználó nem rendelkezik elegendő adatellenőrzéssel, a támadó az alkalmazás webes felületére külön kódot is tartalmazhat, amely egy SQL lekérdezést tartalmaz.
Például módosíthatja fiókjának egyenlegét a név és vezetéknév mellett, megnézheti egy másik fiókjának egyenlegét, vagy ellophatja a bizalmas személyes adatokat.
Ez a biztonsági rés a felhasználó adatai elégtelen ellenőrzésének eredménye. Ez lehetővé teszi a támadó számára #xAB; slip # xBB; például webes űrlapokra, speciálisan elkészített lekérdezésekre #xAB; csalt # xBB; és lehetővé teszi számodra az illegális adatok olvasását vagy írását.
Általában ez a fajta támadás közös név #xAB; Érvényesítési hibák # xBB ;, nem csak az SQL injekciók érintettek, és többször említjük ezt a vektort.
A munkamenetek hitelesítésének és tárolásának rendszerhiba (Broken Authentication and Session Management)
Crossite Scripting - XSS (Cross Site Scripting)
Először is, egy támadó el tudja lopni a munkamenet cookie-ját, amelynek következményeit a második bekezdés írta le, szó szerint néhány bekezdésből. Meg kell jegyezni, hogy nem minden alkalmazáskiszolgáló van ilyen típusú támadásokkal szemben, ezért erről külön foglalkozunk az 5. tételben.
Másodszor, a fertőzött oldal formanyomtatványaira beadott adatok ellophatók. És ez lehet bizalmas személyes adatok, vagy még rosszabb, hitelkártya-adatok a CVC kóddal együtt.
Bizonytalan közvetlen objektum hivatkozások
Nem biztonságos konfiguráció (Biztonsági hibaelhárítás)
Ezen kívül a szoftver kell legyen naprakész: minden nap sebezhető pontok találhatók a különböző szoftver komponenseket - operációs rendszer, web-szerverek, adatbázis szerverek, e-mail szerverek, stb És akkor is, ha az alkalmazás helyesen írt és gondosan ellenőrzi az összes bejövő adatokat, és általában jól védett, ez nem jelenti azt, hogy egy napon nem lesz biztonsági rés az operációs rendszer vagy a web-alapú szerver.
Nem védett, érzékeny adatok (érzékeny adatkijelölés)
Számos webes alkalmazás nem védi a bizalmas adatokat, például hitelkártyákat és hitelesítő adatokat a hitelesítéshez. A támadók ellopthatják vagy módosíthatják az ilyen gyengén védett adatokat a saját zsoldos célokból való használatra.
A legegyszerűbb példa - az adattovábbítás HTTP-n keresztül. Az a tény, hogy az adatok átvitele a HTTP protokollon keresztül nem lesz titkosítva, és a folyosón adatokat a felhasználó számítógépén a Web-szerver, az adatok lesznek a sok különböző részből áll: útválasztó vagy otthoni irodai router, a szolgáltató router, a router a csatorna, dátum-router központ hosting szerver és így tovább. Mindegyik ilyen csomópontok rejtik kártékony, ún szippantás programot, amely beolvassa az összes forgalmat és továbbítja a támadó. Az utóbbi pedig megvizsgálja a személyes adatokat és a hitelkártya adatait.
Az SSL-tanúsítvány egy másik feladata (vagyis a HTTPS hitelesítéséhez és titkosításához használt speciális kulcs) meg kell erősítenie, hogy a webhely erre a webhelyre készült. Abban az esetben, ha a tanúsítvány lejárt vagy hamis, a következő képet fogja látni:
Egy másik példa - hiánya titkosítás a kritikus adatok, például jelszavak vagy hitelkártya-számokat. Ha az adatok titkosítva vannak, még abban az esetben való jogosulatlan hozzáférést a szerverhez, a támadó ellopja az érzékeny adatokat. Jelszóval különösen kell alkalmazni visszafordíthatatlan hash függvény - megfejteni a kriptogram nem lehetséges, és a jelszó ellenőrzése történik képződése kriptogram beírt jelszó, és hasonlítsa össze a jelenlegi az adatbázisban.
Hiányzó funkciószintű hozzáférés-vezérlés
A kiszolgáltatottság lényege, amint azt a név is jelzi, hiányzik a kért objektumhoz való megfelelő hozzáférés rendelkezésre állásának ellenőrzésére.
A legtöbb internetes alkalmazás ellenőrzi a hozzáférési jogokat, mielőtt az adatokat megjelenítené a felhasználói felületen. Azonban az alkalmazásoknak ugyanazokat a hozzáférési ellenőrző ellenőrzéseket kell végrehajtaniuk a kiszolgálón, amikor valamilyen funkciót kérnek. Végül is sok segédszolgáltatási lekérdezés létezik, amelyeket gyakran a háttérben aszinkron módon küldenek az AJAX technológia használatával.
Ha a kérelem paramétereit nem alaposan ellenőrizték, akkor a támadók megfelelő engedély nélkül kérvényezhetik az adatokhoz való hozzáférést.
Ez a sérülékenység privát, és talán leggyakoribb esetét már tárgya negyedik bekezdésében is lefedtük - a felhasználó privát üzenetekben történő ellenőrzésének hiánya.
Cross-Site Request Forgery (CSRF / XSRF)
A támadásvektor CSRF, más néven XSRF, lehetővé teszi a támadó számára, hogy az áldozat nevében eljárást hajtson végre olyan szerveren, ahol további ellenőrzéseket nem hajtanak végre.
Ha az áldozat felkeresi a webhelyet által létrehozott támadó arcáról titokban küldött kérelmet a fenti oldalon a fizetési rendszer. Ennek eredményeként - a pénz megy a számla egy betolakodó, akkor valószínűleg gyorsan átalakítható Bitcoin, vagy átadja egy másik visszavonhatatlan fizetési rendszer és kap vissza fog sikerülni.
Feltételezzük, hogy az áldozatot előre hitelesíteni kell a fizetési rendszerben, és aktív szekciót kell nyitni (például a fizetési rendszer oldala nyitva van a böngésző másik lapján).
A probléma egyszerűen megoldódott, és egy különálló, a CSRF-re vonatkozó cikkre fogunk rájönni.
Az ismert biztonsági résekkel rendelkező összetevők használata (ismert összetevők használata ismert résekkel)
Gyakran előfordul, hogy a webes alkalmazások speciális könyvtárak vagy #xAB; keretek # xBB; (Angol - keret), amelyek harmadik fél biztosítja. A legtöbb esetben ezek az alkatrészek, nyílt forráskódú, ami azt jelenti, hogy nem csak te, hanem emberek millióinak szerte a világon, akik shtudiruet a forráskódot, többek között, és a biztonsági rések. És meg kell jegyezni, hogy ők nem hiába.
Továbbá a rendszer alacsonyabb szintű összetevőire, például az adatbázis-kiszolgálóra, a webszerverre és végül az operációs rendszer összetevőire a legmagasabb szintig terjedő biztonsági réseket keresnek (és találnak).
Nagyon fontos, hogy az összetevők legfrissebb verzióit használják, és figyelemmel kísérjék az olyan ismert biztonsági réseket, mint a securityfocus.com.
Az ilyen típusú biztonsági rések, valamint a fent felsoroltak közül sok más, a bemeneti érvényesítési hibák egyik típusa.