Minden eddiginél többen férnek hozzá az internethez. Ez sok szervezetet arra késztetett, hogy olyan webalapú alkalmazásokat fejlesszen ki, amelyeket a felhasználók online módon használhatnak a szervezettel való interakcióhoz. A webalkalmazások rosszul írt kódja kihasználható az illetéktelen adatokhoz és a webszerverekhez való illetéktelen hozzáféréshez.
Ebben az oktatóanyagban megtudhatja, hogyan kell feltörni a webhelyeket, és bemutatjuk Önnek a webalkalmazások feltörési technikáit és az ilyen támadások elleni védekezésre szolgáló ellenintézkedéseket .
A bemutató témái
- Mi az a webalkalmazás? Mik azok a webes fenyegetések?
- Hogyan védhetjük meg webhelyét a feltörések ellen?
- Webhely-hackelési trükkök: Hack on a Website online!
Mi az a webalkalmazás? Mik azok a webes fenyegetések?
A webalkalmazás (más néven weboldal) a kliens-szerver modellen alapuló alkalmazás. A szerver biztosítja az adatbázis-hozzáférést és az üzleti logikát. Webszerveren van tárolva. Az ügyfélalkalmazás az ügyfél webböngészőjén fut. A webalkalmazásokat általában olyan nyelveken írják, mint a Java, a C # és a VB.Net, a PHP, a ColdFusion Markup Language stb., A webalkalmazásokban használt adatbázis-motorok közé tartozik a MySQL, MS SQL Server, PostgreSQL, SQLite stb.
A legtöbb webalkalmazást az Interneten keresztül elérhető nyilvános szervereken tárolják. Ez kiszolgáltatottá teszi őket a támadásokkal szemben a könnyű hozzáférés miatt. A következők a webalkalmazások általános fenyegetései.
- SQL Injection - ennek a fenyegetésnek a célja lehet a bejelentkezési algoritmusok megkerülése, az adatok szabotálása stb.
- Szolgáltatási támadások megtagadása - ennek a fenyegetésnek az lehet a célja, hogy megtagadja a törvényes felhasználók hozzáférését az erőforráshoz
- Cross Site Scripting XSS - ennek a fenyegetésnek az a célja lehet, hogy olyan kódot adjon be, amely végrehajtható az ügyféloldali böngészőben.
- Cookie / munkamérgezés - ennek a fenyegetésnek az a célja, hogy a támadók módosítsák a cookie-kat / munkamenet adatait, illetéktelen hozzáférés megszerzése érdekében.
- Formabontás - ennek a fenyegetésnek az a célja, hogy módosítsa az űrlapadatokat, például az e-kereskedelmi alkalmazások árait, hogy a támadó kedvezményes áron kaphasson tételeket.
- Kódinjektálás - ennek a fenyegetésnek a célja a szerveren futtatható kódok (például PHP, Python stb.) Injektálása . A kód hátsó ajtókat telepíthet, érzékeny információkat tárhat fel stb.
- Defacement - ennek a fenyegetésnek az a célja, hogy módosítsa a webhelyen megjelenített oldalt, és az összes oldalkérést átirányítsa egyetlen oldalra, amely tartalmazza a támadó üzenetét.
Hogyan védhetjük meg webhelyét a feltörések ellen?
Egy szervezet a következő házirendet alkalmazhatja a webkiszolgáló támadásainak megvédésére.
- SQL Injection - a felhasználói paraméterek megtisztítása és érvényesítése, mielőtt feldolgozásra adnák őket az adatbázisba, csökkentheti az SQL Injection által megtámadott esélyeket. Az olyan adatbázis-motorok, mint az MS SQL Server, a MySQL stb., Támogatják a paramétereket és az elkészített utasításokat. Sokkal biztonságosabbak, mint a hagyományos SQL utasítások
- Szolgáltatásmegtagadási támadások - a tűzfalak felhasználhatók a forgalom elvetésére a gyanús IP-címekről, ha a támadás egyszerű DoS. A hálózatok és a behatolás-érzékelő rendszer megfelelő konfigurálása szintén hozzájárulhat ahhoz, hogy a DoS-támadás sikeres legyen.
- Webhelyek közötti szkriptek - a fejlécek, az URL-en keresztül továbbított paraméterek, az űrlapparaméterek és a rejtett értékek ellenőrzése és fertőtlenítése segíthet csökkenteni az XSS támadásokat.
- Cookie / munkamérgezés - ez megakadályozható a sütik tartalmának titkosításával, a sütik időzítésével, a sütik társításával a kliens IP-címével, amelyet a létrehozásukhoz használtak.
- Az űrlap temperálása - ezt meg lehet előzni a felhasználói bemenet validálásával és ellenőrzésével a feldolgozás előtt.
- Kódinjektálás - ezt meg lehet akadályozni, ha az összes paramétert adatként kezeljük, nem pedig futtatható kódként. Ennek megvalósítására a fertőtlenítés és az érvényesítés használható.
- Defacement - egy jó webalkalmazás-fejlesztési biztonsági házirendnek biztosítania kell, hogy lezárja a webkiszolgáló eléréséhez gyakran használt sebezhetőségeket. Ez lehet az operációs rendszer, a webkiszolgáló szoftver és a webalkalmazások fejlesztése során a legjobb biztonsági gyakorlatok megfelelő konfigurációja.
Webhely-hackelési trükkök: Hack egy weboldalt online
Ebben a hackelési gyakorlati forgatókönyvben eltérítjük a webalkalmazás felhasználói munkamenetét a www.techpanda.org címen. Webhelyek közötti szkripteket fogunk használni a cookie munkamenet azonosítójának elolvasására, majd a törvényes felhasználói munkamenet megszemélyesítésére.
Feltételezzük, hogy a támadónak hozzáférése van a webalkalmazáshoz, és el akarja téríteni az ugyanazt az alkalmazást használó más felhasználók munkameneteit. Ennek a támadásnak az lehet a célja, hogy rendszergazdai hozzáférést kapjon a webalkalmazáshoz, feltéve, hogy a támadó hozzáférési fiókja korlátozott.
Elkezdeni
- Nyissa meg a http://www.techpanda.org/ oldalt
- Gyakorlási célokból erősen ajánlott hozzáférést elérni az SQL Injection használatával. Ebben a cikkben további információkat talál arról, hogyan kell ezt megtenni.
- A bejelentkezési e-mail: Ez az e-mail cím a spamrobotok elleni védelem alatt áll. Engedélyezze a Javascript használatát, hogy megtekinthesse., A jelszó: Password2010
- Ha sikeresen bejelentkezett, megkapja a következő irányítópultot
- Kattintson az Új névjegy hozzáadása elemre
- Írja be a következőt keresztnévként
ITT,
A fenti kód JavaScript-et használ . Hiperhivatkozást ad hozzá egy onclick eseményhez . Amikor a gyanútlan felhasználó rákattint a linkre, az esemény lekéri a PHP cookie munkamenet azonosítóját, és elküldi a snatch_sess_id.php oldalra az URL-ben szereplő munkamenet azonosítóval együtt.
- Írja be a fennmaradó részleteket az alábbiak szerint
- Kattintson a Változások mentése elemre
- Az irányítópult most a következő képernyőnek fog kinézni
- Mivel a helyek közötti parancsfájl kód az adatbázisban van tárolva, a hozzáférési jogokkal rendelkező felhasználók minden alkalommal be lesznek töltve
- Tegyük fel, hogy az adminisztrátor bejelentkezik és rákattint a Dark feliratú hiperhivatkozásra
- Megkapja azt az ablakot, amelyben a munkamenet azonosítója megjelenik az URL-ben
Megjegyzés : a parancsfájl elküldheti az értéket valamilyen távoli szerverre, ahol a PHPSESSID tárolva van, majd a felhasználó visszairányítja a webhelyre, mintha mi sem történt volna.
Megjegyzés : a kapott érték eltérhet a weboldal feltörési útmutatójában szereplő értéktől, de a koncepció ugyanaz
Munkamenet-megszemélyesítés a Firefox és a Tamper Data kiegészítő használatával
Az alábbi folyamatábra bemutatja azokat a lépéseket, amelyeket meg kell tennie ennek a gyakorlatnak a teljesítéséhez.
- Ehhez a szakaszhoz Firefox böngészőre és a Tamper Data kiegészítőre lesz szükség
- Nyissa meg a Firefoxot, és telepítse az add-ot az alábbi ábrák szerint
- Keresd meg a szabotázsadatokat, majd kattints a telepítésre a fent látható módon
- Kattintson az Elfogadás és telepítés gombra.
- A telepítés befejeztével kattintson az Újraindítás gombra
- Engedélyezze a menüsort a Firefoxban, ha nem jelenik meg
- Kattintson az Eszközök menüre, majd válassza ki a Szabotázsadatokat az alábbiak szerint
- A következő ablakot kapja meg. Megjegyzés: Ha a Windows nem üres, nyomja meg a Törlés gombot
- Kattintson a Szabotázs indítása menüre
- Váltson vissza Firefox böngészőre, írja be a http://www.techpanda.org/dashboard.php fájlt, majd nyomja meg az Enter billentyűt az oldal betöltéséhez
- A következő előugró ablakot kapja meg a Tamper Data-tól
- Az előugró ablak három (3) opcióval rendelkezik. A szabotázs opció lehetővé teszi a HTTP fejléc információinak módosítását, mielőtt azokat elküldenék a szerverre .
- Kattintson rá
- Megkapja a következő ablakot
- Másolja ki a támadás URL-jéről a PHP munkamenet azonosítóját, és illessze be az egyenlőségjel után. Értékének most így kell kinéznie
PHPSESSID = 2DVLTIPP2N8LDBN11B2RA76LM2
- Kattintson az OK gombra
- Ismét megjelenik a Szabotázs adatok felugró ablak
- Törölje a jelet a Jelölés folytatása?
- Ha elkészült, kattintson a beküldés gombra
- Látnia kell az irányítópultot az alábbiak szerint
Megjegyzés : nem jelentkeztünk be, a PHPSESSID értéket használtuk fel, amely a webhelyek közötti parancsfájlok használatával került be
Összegzés
- A webalkalmazás a kiszolgáló-kliens modellen alapszik. Az ügyféloldal a webböngészővel használja a kiszolgáló erőforrásait.
- A webalkalmazások általában az interneten keresztül érhetők el. Ez kiszolgáltatottá teszi őket a támadásokkal szemben.
- A webalkalmazások fenyegetései közé tartozik az SQL Injection, Code Injection, XSS, Defacement, Cookie mérgezés stb.
- A webalkalmazások fejlesztésekor a megfelelő biztonsági irányelv elősegítheti azok biztonságát.