Bezpečnost webových aplikací mě zajímá a baví mě ji zkoumat. Je to citlivé téma a každá zapomenutá drobnost může dostat do problémů vás i vaše uživatele. O zabezpečení webu často píšu články a přednáším. Rád se s vámi podělím o svoje zkušenosti a naučím vás, jak webové aplikace zabezpečit a jak je na bezpečnost testovat.

Název školení

Bezpečnost PHP aplikací


Náplň

Popis, rizika a obrana proti útokům, které jsou vedeny proti webovým aplikacím:

  • Full Path Disclosure

    Proč je zobrazení chybových hlášek PHP pro útočníka lákavé a co se z nich dozví?

  • Cross-Site Scripting (XSS)

    Útoky na návštěvníky webu a jejich prohlížeče, typy XSS (stored, reflected, DOM-based), obrana na serveru i v browseru pomocí vyjmenování povolených zdrojů (Content Security Policy) a XSS Auditoru.

  • SQL Injection

    O „dolování“ a změně dat v tabulkách, ke kterým standardně není přístup. Vysvětlení Blind SQL Injection, Time-based blind SQL Injection, i rozdílů mezi technologií prepared statements a vázáním proměnných.

  • Vkládání souborů a vzdálené spuštění

    Jak na nahrávání souborů od uživatelů, kam je ukládat a pod jakým jménem. Spouštění externích programů (např. pro změnu velikosti obrázků) „v cloudu“, nebezpečí skrývající se v deserializaci uživatelských vstupů.

  • Cross-Site Request Forgery (CSRF), Clickjacking

    Útočník může uživatele donutit provést nějakou akci bez jeho vědomí nebo ho naláká na kliknutí na prvek stránky, na který by normálně nekliknul. K čemu se to dá použít a jak proti tomu aplikace obránit?

  • Session Hijacking, Session Fixation

    Kdo má identifikátor sezení (session id), ten je pán, takže je vhodné takový identifikátor dobře chránit. O HTTP-only cookies, přegenerování session id a rozumně vyřešeném přihlášení z více míst současně.

  • XML External Entity Injection (XXE)

    Pomocí definice vlastních entit v XML souborech lze během jejich zpracování ze serverů získávat konfigurační soubory nebo zdrojové kódy. Ukážeme si jak a prozradíme jak tomu nejlépe zabránit.

  • Ukládání a hashování hesel

    Jak se lámou hesla, k čemu slouží „salt“, proč používat algoritmus bcrypt nebo Argon2i a ne MD5 nebo SHA-1 (ani SHA-2, SHA-3). A jak změnit hashování bez vynucené změny hesel všech uživatelů?

Další probíraná témata:

  • Generování „bezpečných“ náhodných dat
  • Šifrování dat, authenticated encryption (AE)
  • Využití HTTPS, HTTP Strict Transport Security (HSTS), útok BREACH
  • Neautorizovaný přístup k cizím datům
  • Zneužití formulářů pro odesílání nevyžádané pošty
  • Konfigurace serveru
  • Ochrana zdrojových kódů při „releasování“ ze SVN a Gitu
  • Bezpečnostní HTTP hlavičky

Potřebujete otestovat vaši webovou aplikaci, jestli nemá problémy a chyby, které na školení probíráme? Napište mi!


Lektor

Michal Špaček (o lektorovi, kontakt na lektora)


Předpoklady

Stačí základní znalost HTML, JavaScriptu, PHP a SQL. Školení je vhodné i pro vývojáře, kteří pracují v jiných jazycích (např. v Javě nebo Pythonu), většina principů a útoků je shodných.


Určeno pro

Školení je určeno jak pro stávající tvůrce webových aplikací, tak pro uchazeče o pozici vývojáře PHP, kterým dá konkurenční výhodu.


Termín a místo

13. 9. 2017 Praha, 10:0018:00, hodinová přestávka na oběd (přihlásit)
Školení se dle situace může až o hodinu protáhnout.

Node 5, Radlická 180/50, Praha

Přineste si notebook, bezdrátové připojení k Internetu je k dispozici. Pokud přenosný počítač nemáte, dejte mi vědět, notebook Vám zajistím. Oběd, káva, čaj a minerálka je v ceně školení.

Školení v Praze probíhají pravidelně jednou za čtvrt roku, vždy v polovině března, června, září a prosince, v jiných městech nepravidelně.


Kapacita

Nejvýše 12 účastníků


Cena

3990 Kč bez DPH, 4828 Kč s DPH, 30% sleva pro studenty


Materiály

Účastníci dostanou tištěnou prezentaci a certifikát. Dostatek prostoru bude věnován na dotazy. Po skončení školení zasílám komentovanou prezentaci e-mailem i s příklady použitými na školení.


Ohlasy na školení

Martin Ambrož, AVAST Software a.s.

Školení o bezpečnosti PHP aplikací Michala Špačka předčilo má očekávání. Vývoji webových aplikací se profesionálně věnuji 13 let, přesto musím zkonstatovat, že pořád je co nového se učit. Je vidět, že pan Špaček má o bezpečnosti velký přehled a že je to i jeho koníček. Kromě přehledně zpracovaných podkladů ke školení jsem uvítal i mnoho praktických ukázek a dostatečný prostor pro dotazy přímo při probírání každého tématu.

Adam Tyroň, Růžový slon s.r.o.

Školení se mi líbilo a splnilo má očekávání. Skvěle připravené, teorie proložena praktickými ukázkami. Školení mi sjednotilo a rozšířilo dosavadní znalosti o problematice. Doporučuji aby školením prošli všichni weboví vývojáři.

Filip Klimeš, Startupedia s.r.o.

Na VŠ jsem absolvoval předmět týkající se bezpečnosti webových aplikací, ale chyběly mi praktické znalosti. Michal Špaček je uznávaný odborník na toto téma, proto jsem zamířil na jeho školení. To perfektně splnilo svoji roli, doplnilo i některé mezery v teorii a nuda se na něm rozhodně nekonala. Za tu cenu bezkonkurenční.

Všechny ohlasy


Přihláška

Termín
13. 9. 2017 Praha
Účastník
Fakturační údaje (nepovinné)
načíst zbytek čekejte… nenalezeno, chyba, znovu Nejdříve vyberte zemi a zadejte IČO

Zadané údaje budou použity pro vystavení faktury, která vám bude zaslána e-mailem během několika dní, případně pro zaslání pozvánky, pokud se hlásíte na předběžný termín.

Pokud se školení z jakéhokoliv důvodu neuskuteční nebo se přesune na jiný termín, který vám nebude vyhovovat (živelní pohroma, nemoc přednášejícího, …), bude vám vrácena celá zaplacená částka. Pokud nastanou překážky na straně účastníka, může za sebe poslat náhradníka nebo se zúčastnit náhradního termínu.

Školení v tomto rozsahu je možné uspořádat i ve vaší firmě. Nabízím i konzultaci pro vaši firmu, napište mi!

English