420 likes | 537 Views
Show me your Kung Fuzz. No Con Name 2011 @ virtualminds_es / irodriguez at virtualminds.es. Who is this guy ?. Iñaki Rodríguez CISSP, CEH Security Manager at Ackstorm S.L. About fuzzing.
E N D
Show me your Kung Fuzz No Con Name2011 @virtualminds_es / irodriguez at virtualminds.es
Whoisthisguy? • Iñaki Rodríguez • CISSP, CEH • Security Manager at Ackstorm S.L.
Aboutfuzzing • Attempting to cause a program or network to fail by feeding it randomly (or not so) generated data. • Generate a lot of craptocrashanapplication.
Targets • Understandthemostbasicconcepts of fuzzing • Complexity vs Knoweldge • Notyourbussines • Real vulnerabilities • Commonissues
WhyweFuzz • Wedon’t trust our software • Wedon’t trust ourproviders software • $$$ or €€€ • CorporateImage
THE lab (I) • Virtual Servers • Lot of memory • Fasthard disk (SSD) • Snapshotshelpstorevert
THE lab (II) • Physical Servers • Old Hardware • More isbetter • Youlostsnapshots • Butyouhavedeepfreezeand fssnapshots
Software • Unpackers (upx, aspack, *lordpe, *importRec, PeID …) • (Un)Compressors (7zip) • Sysinternal suite • Api Monitor • InterpretedLanguages (perl y python) • Debuggers(gdb, radare, ImmunityDebugger, Olly, …) • Decompilers (Ida Free, Ida Pro $$$ y theother)
inventory • CMDB • Nmap (-sV) • OcsInventory • Repositories
Automatinginventory • Database • CPE Normalization • Stats (use, vulnerabilities, …) • Informationfromoutside (securitylists, osvdb, nvd, …) • Scripting isyourfriend
Clasificationcriteria • Qualitative • Vulnerabilitiesimpact • Complexity • Widelyused • Personal preferences • Cuantitative • Number of installations • Number of knownvulnerabilities • Assetvalue • Visibility (local, remote) • Number of threats (none, few, many)
FuzzingModels • Mutation (Dumbfuzzing) • Generation (Smart fuzzing)
Knowyourenemy • Whatkind of applicationis? • Network Services • Web Applications • Libraries • ActiveX • Whatkind of inputs? • Command Line • Files • Network • Forms • Environment Variables • Url • …
Files (I) • Ifwe are lucky, previouslydocumented • www.wotsit.org • www.fileformat.info • 010 Editor / Hexedit / Others. • Ifnotdocumented • Throughvalid files repository • Google – ext:svg • Bing – type:svg • Reverse engineering
Files (II) • SomeinterestingAPIs • CreateFile / CloseHandle / open / close • Lseek • WriteFile / ReadFile / write / read
Files (III) eax=00000000 cmpwordptr [eax+edx*2],0ffffh
Network services (I) • Open protocols (RFC) • Sniffingtrafficbetweenclient and server • Whataboutclients? • Frompcaptomodel
DEMO I – Network Services • ACTFAX FTP SERVER • Video: http://www.youtube.com/watch?v=yOKVIgZso4M • Python • Sulley • Paimei
Libraries (I) • Probablywelldocumented • “Hidden” api • Exported symbols • Argumentsguessing
DEMO II – LIBRARY • ASPEMAIL • Video: http://www.youtube.com/watch?v=7DxXiChy_Oc • Perl • Vbscript • Do ityourself • Windbg
Active x (I) • Probablywelldocumented • Internet Explorer only • ActiveX Interfaces • AxMan / Comraider
Web applications (I) • Lot of documentation • Notonlyurl (Headers, cookies, methods,…) • Ajax / Javascript / Apptesting • OWASP
Commonproblems • Encryption • Checksum • Unknownformat/protocol/whatever • Relations • Conditions • Codecoverage
AND nowwhat? • Responsibledisclosure • Sellit • Exploit • Patch (binaryorsource) • Full disclosure • IDS signature
Improvements • Parallelprocessing • Modifiedapplication • In-memoryfuzzing • Reversingskillsneeded • Codecoverage
In memoryfuzzing Breakpoint sub_0xC0FF33 Takesnapshot Change input Input interaction Exception? Jumptosnapshot Restoresnapshot End sub Jumptosnapshot
Thanks (ackstormteam) Juan Carlos Fer Joan Carles Me Joan Pau Xavi Jordi Gonzalo Toni Victor