OWASP Top Ten je dokumentem, který představuje konsensus mnoha odborníků z celého světa o tom, které slabiny webů jsou nejzávažnější. OWASP Top Ten je seznam první desítky nejzávažnějších bezpečnostních rizik webových aplikací.
Hlavní cíl OWASP Top Ten spočívá ve vzdělávání vývojářů, designérů, architektů, manažerů a organizací o důsledcích nejzávažnějších slabin webových aplikací. Naposled byl dokument aktualizován 19. dubna 2010. Ke stažení je k dispozici na stránkách projektu OWAP Top Ten.
V dokumentu nalezneme nejen seznam nejzávažnějších rizik, ale k jednotlivým bodům také příklady a vysvětlení, srozumitelným způsobem podávající popis rizik pro vývojáře i manažery. Tento materiál je volně šiřitelný.
OWASP vyzývá, aby všechny vývojářské firmy tento dokument vzaly na vědomí a zamezily výskytu uváděných nedostatků. Adopce OWASP Top Ten často bývá jedním z prvních nejefektivnějších kroků ve společnostech, kde se zavádí vývoj bezpečných aplikací.
Přehled
Vedoucí projektu: Dave Wichers
Mailing list: Owasp-topten
Hlavní odkazy:
OWASP Top Ten 2010 – PDF
OWASP Top Ten 2010 – prezentace pptx
OWASP Top Ten 2010 – Wiki
Příklad společností, které si osvojily OWASP Top Ten
A.G. Edwards, Bank of Newport, Best Software, British Telecom, Bureau of Alcohol, Tobacco, and Firearms (ATF), Citibank, Cboss Internet, Cognizant, Contra Costa County, CA, Corillian Corporation, Digital Payment Technologies, Foundstone Strategic Security, HP, IBM Global Services, National Australia Bank, Norfolk Southern, OneSAS.com, Online Business Systems, Predictive Systems, Price Waterhouse Coopers, Recreational Equipment, Inc. (REI), SSP Solutions, Samsung SDS (Korea), Sempra Energy, Sprint, Sun Microsystems, Swiss Federal Institute of Technology, Symantec, Texas Dept of Human Services, The Hartford, Zapatec, ZipForm, PCI, DoD FTC a mnoho dalších.
OWASP Top Ten se promítá např. i do doporučení SDL (Security Development Lifecycle) společnosti Microsoft, OWAPS Top Ten je doporučován jako hlavní postup, který by měl používán jako součást DoD DIACAP (Information Assurance Certification and Accreditation Process). Některé školy OWASP Top Ten přijaly jako součást svého vzdělávacího programu: University of California v San Diegu (UCSD), Michigan State University (MSU) aj.
A1 – Injection |
Napadení aplikace vsunutím kódu přes neošetřený vstup. Např. SQL, LDAP, OS injection. |
A2 – Cross Site Scripting (XSS) |
Narušení webových aplikací vkládáním skriptů či jejich částí do webového prohlížeče. |
A3 – Broken Authentication and Session Management |
Napadení funkcí aplikací, které souvisí s autentizací a správou sezení s cílem převzít identitu jiného uživatele. |
A4 – Insecure Direct Object References |
Přístupy k neoprávněným datům nezabezpečeným přístupem k vnitřnímu objektu aplikace (souboru, adresáři, databázovému klíči). |
A5 – Cross Site Request Forgery (CSRF) |
Útok podvržením požadavku webové aplikace. |
A6 – Security Misconfiguration |
Útoky využívající nedostatků v zabezpečení konfigurací aplikačních serverů, webových serverů, databázových serverů, softwarových platforem atd. (např. ponecháním výchozích hodnot, neaktualizování aj.) |
A7 – Insecure Cryptographic Storage |
Rizika vyplývající z nedostatečně chráněných citlivých dat (čísla kreditních karet, rodná čísla atd.). |
A8 – Failure to Restrict URL Access |
Nedostatečně zabezpečené řízení přístupu ke zdrojům informací (dokument, služba) přes URL. |
A9 – Insufficient Transport Layer Protection |
Útoky odposlechem sítí. |
A10 – Unvalidated Redirects and Forwards |
Útoky přesměrováním na jiné stránky |
OWASP Top Ten 2010
OWASP Top Ten 2010 vs. 2004, 2007
Oproti dokumentům vydaným v letech 2004 a 2007 v tom letošním je daleko více zřejmé, že se jedná o rizika, nikoliv primárně o chyby způsobující bezpečnostní problém (zranitelnosti). To vede k většímu pochopení smyslu jednotlivých položek seznamu – určování priorit zranitelností bez souvislostí příliš nedávalo smysl.
OWASP Top Ten byl vždy o riziku, ale ten současný tuto skutečnost činí daleko jasnější. Pod každou položkou Top Ten je zmínka o faktorech pravděpodobnosti a o faktorech dopadů, což jsou základní proměnné při určení závažnosti rizika. To nám může pomoci s nastavením OWASP Top Ten vůči rozdílným projektům, produktům či firemním metrikám.
Poslední verze dokumentu vychází z více informačních zdrojů než ty předchozí, čímž je mnohem přesnější. Rozdíl, kterého si na první pohled všimnete, je ve změně pořadí některých rizik, jiná zmizela či se dostala pod jiný název.
2010 |
2007 |
2004 |
A1 – Injection |
A1 – Cross Site Scripting (XSS) |
A1 – Unvalidated Input |
A2 – Cross Site Scripting (XSS) |
A2 – Injection Flaws |
A2– Broken Access Control |
A3 – Broken Authentication and Session Management |
A3 – Malicious File Execution |
A3 – Broken Authentication and Session Management |
A4 – Insecure Direct Object References |
A4 – Insecure Direct Object Reference |
A4 – Cross Site Scripting |
A5 – Cross Site Request Forgery (CSRF) |
A5 – Cross Site Request Forgery (CSRF) |
A5 – Buffer Overflow |
A6 – Security Misconfiguration |
A6 – Information Leakage and Improper Error Handling |
A6 – Injection Flaws |
A7 – Insecure Cryptographic Storage |
A7 – Broken Authentication and Session Management |
A7 – Improper Error Handling |
A8 – Failure to Restrict URL Access |
A8 – Insecure Cryptographic Storage |
A8 – Insecure Storage |
A9 – Insufficient Transport Layer Protection |
A9 – Insecure Communications |
A9 – Application Denial of Service |
A10 – Unvalidated Redirects and Forwards |
A10 – Failure to Restrict URL Access |
A10 – Insecure Configuration Managemen |
Odkazy na wiki uvedených let:
OWASP Top Ten je dokumentem o nejkritičtějších zranitelnostech webových aplikací. Takový seznam lze pojmout také jako minimální scénář, podle něhož by měl každý zodpovědný vývojář testovat své aplikace a v případě pozitivních nálezů patřičně nedostatky ošetřit – že si o tom zatím můžeme nechat jenom zdát, to ukážeme hned příští díl seriálu; nyní jsme pouze nastínili, čemu se věnuje projekt OWASP Top Ten, ale v několika dalších dílech seriálu si více povíme o jednotlivých položkách z uvedeného seznamu nejzávažnějších rizik webových aplikací.