Nedávno jsem absolvoval v práci obsáhlejší přednášku o bezpečnosti webových aplikací. Několik popisovaných problémů jsem znal, jmenovitě například cross-site request forgery (CSFR), csoss-site scripting (XSS), SQL Injection a spoustu dalších; některé jsem jen znal, ale nevěděl, že se jim nějak říka (pak jsem vědel a už zase nevím :); některé jsem neznal a některé přímo šokovaly, i když si nejsem jist, zda mě to přímo šokovalo nebo jsem jen nevěřil vynalézavosti záškodníků.
Nemám v plánu tu popisovat všechno, co jsem se dozvěděl – jen vám tu hodím seznam bezpečnostních hrozeb, abyste si jich alespoň všimli a měli o nich povědomí, že existují:
- Authentication
- Dictionary / Brute Force Attack
- Insufficient Authentication
- Weak Password Recovery Validation
- Authorization
- Credential/Session Prediction
- Insufficient Authorization
- Insufficient Session Expiration
- Session Fixation
- Cross-site request forgery (CSRF)
- Clickjacking
- JavaScript Hijacking
- Client-side Attacks
- Content Spoofing
- Cross-site scripting (XSS)
- Cross-site Tracing (XST)
- Browser and Plug-in vulnerabilities
- Protocol Attacks
- HTTP Response Splitting
- HTTP Request Smuggling
- Injection Attacks
- Buffer Overflows
- Format String
- OS Commanding
- LDAP Injection
- SQL Injection
- XPATH Injection
- SSI Injection
- SOAP Injection
- Information Disclosure
- Directory Indexing
- Information Leakage
- Path Traversal
- Predictable Resource Location / Forced Browsing
- Insecure Direct Object Reference
- Webserver/Application Fingerprinting
- Server-Side Script Execution
- Unprotected Upload
- Remote File Inclusion
- Local File Inclusion
- Logical Attacks
- Abuse of functionality
- Insufficient Anti-Automation
- Insufficient Process Validation
- Parameter Tampering/Cookie Poisoning / Hidden Field Manipulation
Že jich je hodně? Ano, je, ale doporučuju vložit čas do jejich projití, minimálně prolétnutí. :) Abyste však měli inspiraci si je projít, příkládám některá zajímavá videa:
VIDEA NEDOSTUPNÁ
Taky zajímavá praktika (na kterou jsem bohužel nenašel video) je vložit stránku do iframe, do vyšší vrstvy vložit různé divy s jiným obsahem a pokusit se zaujmout uživatele natolik, aby sám klikl na místa, která se hackrovi hodí, aniž by uživatel věděl, co vlastně na pozadí provádí.
Až po této přednášce, kde mi byly ukázány podobné praktiky, jsem vlastně pochopil všechny ty reklamy typu „chyť 10x míč a vyhraj bla bla!“. Asi už všechny interaktivní reklamy a podobné hříčky budete taky ignorovat, že? :) Nakonec doporučím občas se podívat na server soom.cz, díky kterému jsme měli v práci zmíněnou přednášku a kde naleznete další informace na toto téma.