CL-WSC

Új Webes alkalmazások biztonsága

Részvételi forma
Képzési Forma
Képzés hossza
  • 3 nap (3×8 tanóra)
  • naponta 9:00 - 17:00
Elérhető képzési nyelvek
  • Magyar
Időpontok
Szeretne a témában testre szabott megoldást, csoportos képzést?
Egyedi képzési szolgáltatásainkról részletesen itt olvashat.

Ismertető

Jelentkezzen Webes alkalmazások biztonsága tanfolyamunkra, és ismerje meg hogyan kell biztonságosan webalkalmazást készíteni, és melyek azok a biztonsági szempontból releváns hibák, amelyek a webalkalmazás készítése során felléphetnek, hogyan kell védekezni ellenük, illetve hogyan lehet őket elkerülni.

Ennek megfelelően a tanfolyam egyrészt gyakorlatokkal alátámasztva lépésenként bemutatja a webalkalmazások biztonsági felépítményét, megmutatja az egyes szolgáltatások helyes használatát és kitér a megoldások kriptográfiai hátterére is. Másrészt bemutatjuk és elmagyarázzuk a webalkalmazások leggyakoribb és legveszélyesebb sérülékenységeit. Az egyes hibákat a támadási módok bemutatásával demonstráljuk, amit minden esetben a helyes gyakorlati és a védelmi módok ismertetése követ.

A képzés programozóknak, fejlesztőknek, szoftvertervezőknek, tesztelőknek, biztonsági szakembereknek ajánljuk, akik szeretnék megismerni a minél biztonságosabb programok, alkalmazások készítésének technikáit webalkalmazásuk elkészítéséhez.

Tematika

  • Az IT biztonságtól a biztonságos programozásig: A biztonság természete, Mi a kockázat? IT-biztonság vs. biztonságos kódolás, a sebezhetőségektől a botnetekig és a kiberbűnözésig, a biztonsági hibák természete, a fertőzött számítógéptől a célzott támadásokig, a biztonsági hibák osztályozása.
  • Webalmazások biztonsága: Injection: alapelvek, SQL injection (tipikus SQL injection támadási módszerek, Blind és time-based SQL injection, SQL injection védelmi módszerek), egyéb injection hibák (parancs injection). Broken authentication: Munkamenet kezelési veszélyek, a munkamenetkezelés legjobb gyakorlatai, Cookie-attribútumok beállítása, Oldalközi kérés meghamisítása - CSRF (login CSRF és CSRF megelőzés). Érzékeny adatok kitettsége: szállítási réteg biztonsága, HTTPS érvényesítés. XML külső entitás (XXE): XML entitás bevezetése, XML külső entitással kapcsolatos támadás (XXE) (erőforrás bevonása, URL meghívás, paraméter entitás, megelőzés). Broken access control: Tipikus hozzáférés-szabályozási gyengeségek, bizonytalan közvetlen objektumhivatkozás (IDOR), védelem az IDOR ellen. Biztonsági félrekonfigurálás: a környezet konfigurálása, bizonytalan fájlfeltöltés, fájlfeltöltések szűrése - érvényesítés és konfiguráció. Cross-Site Scripting (XSS): állandó, visszavert, DOM-alapú, CSS injection, injection the tag, XSS megelőzés. Insecure deserialization: a Serialization és a deserialization alapjai, biztonsági kihívások, a deserialization-al kapcsolatos problémák – JSON. Ismert sebezhetőségű komponensek használata: sebezhetőségi attribútumok, Common Vulnerability Scoring System – CVSS. Elégtelen naplózás és felügyelet: észlelés és válaszadás, naplózás és naplóelemzés, behatolásérzékelő rendszerek és webalkalmazás-tűzfalak.
  • Ügyféloldali biztonság: JavaScript biztonság, azonos eredetpolitika, egyszerű kérések, Preflight kérések, Javascript használat, veszélyek és globális objektum, ügyféloldali hitelesítés és jelszókezelés, Javascript kód védelme. Clickjacking (Clickjacking elleni védelem, keretfeltörés elleni védelem - védelmi szkriptek elutasítása, védelem a frame-busting ellen). AJAX biztonság: XSS az AJAX-ban, szkript injection támadás AJAX-ban, XSS elleni védelem AJAX-ban, CSRF védelem AJAX-ban, MySpace worm, AJAX biztonsági iránymutatások. HTML5 biztonság: Új XSS lehetőségek a HTML5-ben, ügyféloldali tartós adattárolás, HTML5 clickjacking támadás - szöveges mező injection és tartalomkivonás, formanyomtatványok manipulálása, Cross-origin kérések, HTML proxy cross-origin kérésekkel.
  • Gyakorlati kriptográfia: a kriptográfia megvalósításának első szabálya, kriptoszisztémák: kiptorendszer elemei. Szimmetrikus kulcsú kriptográfia: bizalmasság biztosítása, szimmetrikus kriptográfiával, szimmetrikus titkosítási algoritmusok, működési módok. Egyéb kriptográfiai algoritmusok: Hash vagy message digest, Hash algoritmusok, SHAttered, Message Authentication Code (MAC), integritás és hitelesség biztosítása szimmetrikus kulccsal, véletlenszám-generálás (véletlenszámok és kriptográfia, kriptográfiailag erős PRNG-k, hardveralapú TRNG-k). Aszimmetrikus (nyilvános kulcsú) kriptográfia: titoktartás biztosítása nyilvános kulcsú titkosítással, Ökölszabály - a magánkulcs birtoklása, az RSA algoritmus: bevezetés, titkosítás RSA-val, szimmetrikus és aszimmetrikus algoritmusok kombinálása, digitális aláírás RSA-val. Nyilvános kulcsú infrastruktúra (PKI): Man-in-the-Middle (MitM) támadás, digitális tanúsítványok MitM-támadás ellen, tanúsítványhivatalok a nyilvános kulcsú infrastruktúrában, X.509 digitális tanúsítvány.
  • Biztonsági protokollok: a TLS protokoll (SSL és TLS, használati lehetőségek, a TLS biztonsági szolgáltatásai, SSL/TLS kézfogás), protokollszintű sebezhetőségek (BEAST, CRIME, IDŐ, IDŐ MitM nélkül, BREACH, Védelem a CRIME/TIME/BREACH ellen, FREAK, FREAK – SSL/TLS elleni támadás, logjam attack), padding oracle támadások (adaptív választott kódszöveges támadások, Padding oracle támadás, CBC visszafejtés, Padding oracle példa, Lucky Thirteen, POODLE.
  • A webszolgáltatások biztonsága: a webszolgáltatások védelme - két általános megközelítés, SOAP - egyszerű objektum-hozzáférési protokoll, a RESTful webszolgáltatások biztonsága (a felhasználók hitelesítése RESTful webszolgáltatásokban, hitelesítés JSON Web Tokens-el (JWT), engedélyezés REST-tel, a RESTtel kapcsolatos sebezhetőségek), XML biztonság (bevezetés, elemzés, injection: (ab)using CDATA to store XSS payload in XML, védelem szanálással és XML-érvényesítéssel, XML-bomba). XML aláírás (bevezetés, felépítés, Hash ütközés az XML digitális aláírással, kanonikalizáció, dokumentumok aláírása, Signature Wrapping (XSW) támadás, Signature Wrapping ellenintézkedések), JSON biztonság: beágyazása szerveroldalon, injection, eltérés, XSS hamisított JSON elemen keresztül.
  • Gyakori kódolási hibák és sebezhetőségek: a biztonsági funkciók helytelen használata, a biztonsági funkciók használatával kapcsolatos tipikus problémák, jelszókezelés (a hashed jelszavak gyengeségei, jelszókezelés és -tárolás, Brute forcing, különleges célú hash-algoritmusok jelszavak tárolására, tipikus hibák a jelszókezelés során), elégtelen automatizálás elleni védelem (Captcha – gyenge pontok).
  • Szolgáltatásmegtagadás: DoS bevezetése, aszimmetrikus DoS, szolgáltatásmegtagadás ICD-k ellen (szolgáltatásmegtagadás: az akkumulátor lemerülése), ReDos a Stack Exchange-ben, Hashtable ütközéses támadás (Hashtáblák használata adatok tárolására és ütköztetés).
  • A biztonság és a biztonságos kódolás alapelvei: Matt Bishop robusztus programozásának alapelvei és Saltzer és Schroeder biztonsági elvei.

Szükséges előképzettség

Legalább kétéves gyakorlat általános webes alkalmazásfejlesztésben. Alapvető kriptográfiai fogalmak és módszerek alapfokú gyakorlati ismerete ajánlott. Mivel a tananyag angol nyelvű, ezért alapfokú, dokumentumolvasás szintű angol nyelvtudás szükséges. Az előadás magyar nyelven zajlik.