OWASP Summit 2011 alebo keď sa stretne svetová WebAppSec špička - Nethemba

BLOG

OWASP Summit 2011 alebo keď sa stretne svetová WebAppSec špička

V piatok 11.2.2011 skončil druhý svetový OWASP Summit 2011. Podobne ako prvý OWASP Summit 2008 aj tento sa konal v Portugalsku, nie však vo Fare ale asi 50 km od Lisabonu v príjemnom letovisku CampoReal. OWASP Summitu sa zúčastnilo množstvo WebAppSec špičiek z celého sveta, kompletný zoznam účastníkov k dispozícii tu.

Účastníci OWASP Summit 2011

Účastníkov Summitu bolo možné rozdeliť do nasledujúcich kategórií:

1. OWASP board (Dinis Cruz, Tom Brennan, Dave Wichers, Jeff Wiliams, … )

2. Vedúci OWASP pobočiek po celom svete (z najväčšej diaľky pricestoval asi Zaki Akhmad z Indonézie, zo slovanských krajín sme mali zastúpenie len traja – Wojciech Dworakovski z Krakova, Vlatko Kosturjak zo Zagrebu a ja zo Slovenska)

3. Svetová elita WebApsec výskumníkov (Mario Heiderich, David Lindsay, Gareth Heyes, David Campbell, Eduardo Vela, Stefano Di Paola, Ryan Barnett, Robert Hansen (Rsnake) a množstvo ďalších)

4. Vývojári Firefoxu/Mozilly (Michael Coates, Chris Lyon, Lucas Adamski, Justin Fitzhugh, Brandon Sterne, Chris Hofmann)

5. Vývojári Chrome/Chromium a Google bezpečnostní experti (Jasvir Nagra, Eduardo Vela, Justin Schuh, Ian Fette)

6. Množstvo ďalších WebAppSec špecialistov z rôznych spoločností (Microsoft, Paypal, Facebook, ..) zodpovední za WebAppSec.

V prvom rade je dobré zdôrazniť, že nešlo o „klasickú“ konferenciu, ale o veľké množstvo osobných interaktívnych stretnutí „worksessions“ špecialistov v danej oblasti. Programy stretnutí boli dva – jeden statický definovaný dopredu hneď na začiatku konferencie, druhý dynamický, ktorý sa vytváral interektívne jeden deň pred samotnými stretnutiami.

Oblasť prezentácií bola skutočne široká, osobne som uprednostňoval technické stretnutia – XSS and the Frameworks, WAF mitigations for XSS, DOM Sandboxing, EcmaScript 5 Security, HTML 5 Security, Mobile Security a iné.

Asi najzaujímavejšie bolo sledovať panelové diskusie, kedy WebAppSec výskumníci na jednej strane (Mario Heiderich, David Lindsay, Gareth Heyes, Stefano Di Paola, či Robert Hansen) vysvetľovali bezpečnostné problémy súčasných prehliadačov, či potrebu DOM Sandboxingu samotným vývojárom prehliadačov – Firefoxu, či Chrome, ktorí ich pripomienky upravovali, akceptovali, prípadne aj zamietali ako veľmi náročné na implementáciu. Niektoré takéto výmeny názorov boli skutočne vysoko-technické a bez detailných znalostí zdrojových kódov prehliadačov, hĺbkových znalostí EcmaScriptu 5/HTML5 pre bežného smrteľníka dosť ťažko pochopiteľné. Počas týchto stretnutí bolo zaujímavé sledovať diverzitu súčasných prehliadačov a ich rôzne prístupy k riešenie bezpečnosti (Same-Origin-Policy, či Sandboxing).

Špeciálne veľkú radosť som mal z prítomnosti ľudí ako Mario Heiderich, Eduardo Vela, Gareth Heyes, či David Lindsay, ktorí všetci štyria sú spoluautori novej knihy Web Application Obfuscation, ktorá predstavovala moju hlavnú inšpiráciu pre novú prezentáciu týkajúcu sa možnosti obchádzať súčasné webové aplikačné firewally (WAFs). Mal som tak skvelú príležitosť prakticky konzultovať všetky nejasnosti a rôzne odchýlky v bezpečnostných prístupoch súčasných prehliadačov. Mario Heiderich (autor PHPIDS) na moju otázku, prečo v knihe nepublikovali, ktoré konkrétne „obfuskované“ vektory je možné použiť na obídenie konkrétnej implementácie/verzie webového aplikačného firewallu, mi odpovedal, že aj napriek tomu, že pôvodne nad tým uvažovali, tak vzhľadom na rozporuplnú „legálnosť“ a silný tlak výrobcov súčasných WAF riešení to nakoniec nespravili.

Počas Summitu som sa najviac skamarátil s talianmi zo spoločnosti Minded Security, možno preto lebo som s nimi kvôli tvorbe novej OWASP Testing Guide v4 trávil najviac času.

S Matteom Meuccim (OWASP Testing Guide leader) pripomienkujeme novú OWASP Testing Guide v4.0

S Matteom Meuccim (project leader projektu OWASP Testing Guide a šéf Talianskej OWASP chapter) sme strávili niekoľko hodín prezentovaním našich pripomienok k novej OWASP Testing Guide v4. K mojim pôvodným pripomienkam:

1. doplnenie nových opensource testovacích nástrojov, ktoré sa behom posledných 3 rokov objavili, sú dôležité a v OWASP Testing Guide v3 chýbajú

2. detailnejšie rozviesť kapitolu „Business Logic Testing“ špeciálne o konkrétne príklady typických bezpečnostných chýb v biznis logike aplikácie s ktorými sme sa v našich detailných bezpečnostných auditoch stretli

3. do sekcie „Session Management Testing“ dopísať kapitolu „Brute force testing“ (ktorá sa bude zaoberať útokmi a ochranou na session ID hrubou silou) a „Session ID entropy analysis“, kde budú detailne rozobraté metódy na dôkladnú analýzu Session ID
4. do sekcie „Data Validation Testing“ dopísať kapitolu o možnosti obfuskovať injektovaný kód, čo je veľmi dôležité na detailné otestovanie aplikácie
5. oddeliť fázu „Logout and Browser Cache Management“ na samostatné dve kapitoly (nakoľko ide o 2 odlišné veci)
som pridal a prezentoval ďalšie 2 body týkajúcich sa CSS-related útokov, ktoré je potrebné zahrnúť do OWASP Testing Guide v4.0:
6. „Redressing“ útoky na používateľské rozhranie ako Clickjacking – s jednoduchým popisom ako na úrovni javascriptu znemožňiť „framing“, teda obsluhu stránky, ktorej obsah je „frameovaný“
7. CSS History hack – toto je síce primárne problém prehliadačov, ale je možné sa do istej miery chrániť aj na úrovni aplikácií, napríklad neposielaním citlivých údajov cez GET žiadosti, ktoré sa ukladajú v histórii prehliadača a sú teda predmetom CSS History útokov.
Všetky uvedené pripomienky boli úspešne prijaté, Stefano Di Paola podporil myšlienku rozpísať tvorbu obfuscovaných útokov v sekcii „Data validation testing“. Sekcia „Brute force testing“ bude zjednotená (ako pre loginy/heslá, tak pre session ID).
Pri tejto príležitosti mi Stefano ukázal svoj nový nástroj DOMIntruder, ktorý plánuje o pár mesiacov zverejniť. Je to zrejme prvý prakticky použiteľný nástroj na „taint“ dynamickú analýzu vstupov (konkrétne reťazcov) v javascripte a hľadanie DOM-XSS zraniteľností. DOMIntruder „on-the-fly“ overridne pár javascriptových funkcií a dokáže presne zanalyzovať akým spôsobom sa v aplikácií rozširujú znečistené („tainted“) používateľské vstupy. Tým pádom odpadá potreba pri detailnom audite analyzovať stovky, či tisícky riadkov javascriptu/AJAXu, nakoľko DOMIntruder automaticky odhalí, ktoré presné vstupy sú zaujímavé na injektovanie nebezpečného obsahu. Stefano pomocou uvedeného nástroja objavil obrovské množstvo DOM-based XSS zraniteľností na svetových weboch. Jeho DOM XSS Wiki stojí určite za prečítanie.
Nemenej zaujímavé bolo stretnutie lídrov OWASP pobočiek z celého sveta, kde sa riešili hlavne odlišnosti fungovania jednotlivých pobočiek v rôznych štátoch sveta ako aj odlišné spôsoby financovania hlavne medzi USA a krajinami EU. Uvedené stretnutie ma definitívne nabudilo na spustenie pravidelných WebAppSec stretnutí v Bratislave.
Nakoľko náš nový priestor v Progressbare na Cukrovej ulici v Bratislave je už plne funkčný, 3.3.2011 o 19:00 štartujeme pravidelné (mesačné) OWASP WebAppSec stretnutia. Hneď prvá prezentácia bude veľmi technická  a bude sa týkať  možnosti obchádzania webových aplikačných firewallov, viac informácii o prednáške – Bypassing Web Application Firewalls (WAFs).
Už teraz sa na to veľmi teším a pevne verím, že o bezpečnosť webových aplikácií bude na Slovensku minimálne taký záujem ako je teraz v zahraničí.