Návrh Školení
A01:2025 – Porušení ovládacího přístupu
Ovládací přístup vynucuje pravidla tak, aby uživatelé nemohli jednat mimo rozsah svých zamýšlených oprávnění. Selhání v této oblasti typicky vede k neoprávněnému odhalení, úpravě nebo zničení dat, nebo k výkonu obchodní funkce mimo limity daného uživatele.
Praktické aspekty
-
Praktické příklady porušeného ovládacího přístupu
-
Bezpečné ovládací přístupové mechanismy a nejlepší praktiky
A02:2025 – Nesprávné nastavení bezpečnosti
Nesprávné nastavení bezpečnosti nastává, když je systém, aplikace nebo cloudová služba z bezpečnostního hlediska nesprávně nakonfigurována, čímž vznikají zranitelnosti.
Praktické aspekty
-
Reálné příklady nesprávných nastavení
-
Postupy pro prevenci nesprávného nastavení, včetně nástrojů pro správu konfigurace a automatizace
A03:2025 – Poruchy v softwarovém dodavatelském řetězci
Poruchy v softwarovém dodavatelském řetězci jsou přerušení nebo jiné kompromitace v procesu budování, distribuce nebo aktualizace softwaru. Často jsou způsobeny zranitelnostmi nebo škodlivými změnami ve třetí strany kódu, nástrojích nebo jiných závislostech, na nichž systém závisí.
A04:2025 – Kryptografické poruchy
Obecně by všechna data v tranzitu měla být šifrována na transportní vrstvě (OSI vrstva 4). Původní překážky, jako je výkon CPU a správa soukromých klíčů/certifikátů, jsou nyní řešeny procesory s instrukcemi pro akceleraci šifrování (např. podpora AES) a zjednodušenou správou soukromých klíčů a certifikátů prostřednictvím služeb jako je LetsEncrypt.org, přičemž hlavní cloudoví poskytovatelé nabízejí ještě těsněji integrované služby správy certifikátů pro své konkrétní platformy.
Navíc k zabezpečení transportní vrstvy je důležité určit, která data potřebují šifrování při ukládání (at rest) a která data potřebují další šifrování v tranzitu (na aplikační vrstvě, OSI vrstva 7).
Například hesla, čísla platebních karet, zdravotní záznamy, osobní údaje a obchodní tajemství vyžadují zvýšenou ochranu, zejména pokud spadají pod zákony o ochraně osobních údajů, např. Obecné nařízení Evropské unie o ochraně osobních údajů (GDPR), nebo předpisy jako Standard bezpečnosti platebních karet (PCI DSS).
Praktické aspekty
-
Podrobná analýza kryptografických poruch, jako jsou slabé šifrovací algoritmy nebo nesprávná správa klíčů
-
Důležitost silných kryptografických mechanismů, bezpečných protokolů (SSL/TLS) a příklady moderní kryptografie v zabezpečení webu
A05:2025 – Injekce
Chyba typu injektace je slabina systému, která umožňuje útočníkovi vložit škodlivý kód nebo příkazy (např. SQL nebo shell kód) do vstupních polí programu a navede systém k jejich spuštění, jako by byla součástí systému. To může mít skutečně závažné důsledky.
Praktické aspekty
-
Podrobný rozbor SQL, NoSQL, OS a LDAP injektací
-
Techniky zmírnění rizika pomocí předpřípravených dotazů, parametrizovaných dotazů a escapování vstupů
A06:2025 – Nebezpečný návrh
Nebezpečný návrh je široká kategorie představující různé slabiny, vyjádřené jako „chybějící nebo neúčinný návrh ovládacích prvků.“
Nebezpečný návrh není zdrojem všech ostatních kategorií rizik Top Ten. Všimněte si, že existuje rozdíl mezi nebezpečným návrhem a nebezpečnou implementací. Rozlišujeme mezi chybami návrhu a defekty implementace z důvodu, že mají odlišné příčiny, vyskytují se v různých fázích vývojového procesu a vyžadují odlišné metody nápravy.
Bezpečný návrh může stále obsahovat defekty implementace vedoucí k zranitelnostem, které lze zneužít. Nebezpečný návrh nelze opravit dokonalou implementací, protože požadované bezpečnostní ovládací prvky nikdy nebyly vytvořeny pro obranu proti specifickým útokům.
Jedním z faktorů přispívajících k nebezpečnému návrhu je nedostatek profilování obchodních rizik inherentních ve vyvíjeném softwaru nebo systému, a tím pádem neschopnost určit požadovanou úroveň bezpečnostního návrhu.
Praktické aspekty
-
Prozkoumáme chyby návrhu, které mohou vést k zranitelnostem, jako je nesprávná validace vstupů
-
Prosttudujeme strategie bezpečné architektury a principy bezpečného návrhu
A07:2025 – Poruchy autentizace
Tato zranitelnost vzniká, když je útočník schopen navednout systém k tomu, aby uznal neplatného nebo chybného uživatele jako legitimního.
Praktické aspekty
-
Běžné problémy s autentizací
-
Bezpečné strategie autentizace, jako je vícefaktorová autentizace a správná správa relací
A08:2025 – Poruchy integrity softwaru nebo dat
Poruchy integrity softwaru a dat se týkají kódu a infrastruktury, které neochraňují proti tomu, aby neplatný nebo nedůvěryhodný kód nebo data byla považována za důvěryhodná a platná.
Příkladem tohoto je situace, kdy aplikace spoléhá na pluginy, knihovny nebo moduly z nedůvěryhodných zdrojů, repositarií a sítí pro distribuci obsahu (CDN).
Nebezpečný CI/CD pipeline bez spotřeby a poskytování kontrol integrity softwaru může zavést potenciál pro neoprávněný přístup, nebezpečný nebo škodlivý kód, nebo kompromitaci systému.
Jiným příkladem je CI/CD, který stahuje kód nebo artefakty z nedůvěryhodných míst a/nebo je neprověřuje před použitím (kontrolou podpisu nebo podobným mechanismem).
Praktické aspekty
-
Zaměření na problémy, jako jsou nedůvěryhodné aktualizace softwaru a manipulace s daty
-
Bezpečné mechanismy aktualizací a kontroly integrity dat
A09:2025 – Poruchy logování a signalizace bezpečnostních událostí
Bez logování a monitorování nemohou být útoky a prolomení zabezpečení detekovány, a bez signalizace je velmi těžké reagovat rychle a efektivně během bezpečnostní události.
Nedostatečné logování, nepřetržité monitorování, detekce a signalizace pro zahájení aktivní reakce se děje kdykoli.
Praktické aspekty
-
Důležitost logování bezpečnostně relevantních informací a monitorování podezřelých aktivit
-
Nástroje a praktiky pro správné logování a monitorování v reálném čase pro včasné detekci prolomení zabezpečení
A10:2025 – Nepochopení mimořádných stavů
Nepochopení mimořádných stavů v softwaru nastává, když programy nedokážou zabránit, detekovat a reagovat na neobvyklé a nepředvídatelné situace, což vede k pádům, neočekávanému chování a někdy k zranitelnostem.
To může zahrnovat jednu nebo více z následujících tří chyb:
-
Aplikace nezabrání vzniku neobvyklé situace
-
Nerozpozná situaci, když se děje
-
Reaguje špatně nebo vůbec nereaguje na situaci později
SAST – Statické testování bezpečnosti aplikací
-
Co je statická analýza a kdy ji spouštět v SDLC (posun doleva)
-
Typy zranitelností detekovatelných prostřednictvím SAST, zranitelný kód versus bezpečný kód
-
Přehled nástrojů SAST (např. Semgrep, SonarQube, Checkmarx, v závislosti na technologiích klienta)
-
Praktická cvičení: spuštění SAST skenu na repositáři s úmyslně zavedenými zranitelnostmi, interpretace výsledků, třídění falešných pozitivních nálezů versus reálných zranitelností
DAST – Dynamické testování bezpečnosti aplikací
-
Rozdíl mezi SAST a DAST, black box testování na běžící aplikaci
-
Průběh DAST skenu, plížení (crawling), fuzzing, analýza odpovědí
-
Přehled nástrojů DAST (např. OWASP ZAP, Burp Suite)
-
Praktická cvičení: spuštění DAST skenu na zranitelné testovací aplikaci (např. OWASP Juice Shop), identifikace a validace nálezů
SCA – Analýza složení softwaru
-
Riziko třetí strany závislostí a knihoven, zděděné zranitelnosti
-
SBOM, Softwarový seznam materiálů, co je to a proč je důležité
-
Přehled nástrojů SCA (např. Dependency Check, Snyk, GitHub Dependabot)
-
Praktická cvičení: spuštění SCA skenu na reálném projektu, identifikace zranitelných závislostí a sestavení plánu nápravy (aktualizace, záplata, zmírnění rizika)
Požadavky
Účastníci by měli mít:
- Základní znalosti konceptů vývoje softwaru
- Základní porozumění webovým aplikacím a běžným webovým technologiím
- Oznámenost s životním cyklem vývoje softwaru (SDLC)
- Základní porozumění zdrojovému kódu a závislostem softwaru
- Základní znalosti bezpečnostních konceptů jsou výhodou, ale nejsou povinné
Cílová skupina
- Softwaroví vývojáři
- Softwaroví inženýři
- Testovací inženýři a inženýři kvality (QA)
- DevOps a DevSecOps inženýři
- Profesionáři v oblasti bezpečnosti aplikací
- Bezpečnostní inženýři
- Softwaroví architekti
- Techničtí vedoucí
- Profesionáli zapojeni do bezpečného vývoje softwaru a testování bezpečnosti aplikací
Reference (3)
Sdílení zkušeností, učitelova odbornost a hodnoty.
Carey Fan - Logitech
Kurz - C/C++ Secure Coding
Přeloženo strojem
přijít o lepší pochopení produktu a některých klíčových rozdílů mezi RHDS a open source OpenLDAP.
Jackie Xie - Westpac Banking Corporation
Kurz - 389 Directory Server for Administrators
Přeloženo strojem
znalost trénера byla velmi vysoká - věděl, o čem mluví, a znal odpovědi na naše otázky
Adam - Fireup.PRO
Kurz - Advanced Java Security
Přeloženo strojem