Graph Analysis for WebApps: From Nodes to Edges
360 likes | 381 Vues
Discover how graph analysis can improve web assessments by saving time, focusing on what matters, and surgical testing. Learn about success cases, security visualization, and future developments.
Graph Analysis for WebApps: From Nodes to Edges
E N D
Presentation Transcript
Graph Analysis for WebApps: From Nodes to Edges Simon Roses Femerling Security Technologist and Researcher
Intro - Who I am • Natural from wonderful Mallorca Island in the Mediterranean Sea • Postgraduate in E-Commerce from Harvard University and a B.S. from Suffolk University at Boston, Massachusetts • Former PwC, @Stake among others… • Security Technologist (ACE Team) at Microsoft
Talk Objectives • Success Cases using graphs in security space • Not a class on graphs • Improve web assessments by • Saving time • Focus on what matters • Surgical Testing
Agenda • Overview • Process • Data Analysis • Summary • Q&A
Why? • Apps are more complex daily • Tired of using poor tool set • Move away from raw text • Need identify patterns quickly • Time is precious and usually you don’t have enough
Security Visualization • Becoming a popular field • Needs a lot of research • Makes easier to analyze data • We perform better with visual images that raw data
Success Cases Visualization • Reverse Engineering • IDS Log Analysis • Network Analysis • Source Code Review http://secviz.org/
Process • 3 steps process SOURCE NORMALIZATION ANALYSIS
SOURCE • Black box or White box independency • As much data we got the better (everything is important) • Lot of tools that can help us • Proxies • Crawlers • Scanners SOURCE
NORMALIZATION • Raw data normalized • XML for convenience • Normalize / Analysis Engine is key NORMALIZATION
ANALYSIS • Start identifying issues easier and faster • Visual approach • Take decisions and focus testing • Data Mining is the key ANALYSIS
Target Relationship • Query: Pages that link to Home • Objectives: • Learning about target • Mapping Application
FORMS + HIDDEN • Query: Pages that contains a form and hidden tag • Objectives: • Data Entry Point • Tamper with hidden tag
COOKIES • Query: Pages that set a cookie • Objectives: • Contains session ID? • Tamper Cookie
SSL • Query: Pages that uses SSL • Objectives: • Check SSL Certificate • Can I call pages without SSL?
Attack Surface • Query: All data points • Objectives: • Have fun
Analysis tips • Diff between pages • What pages contain more data entries? • What pages contain more issues? • Identify pages with script code, comments, etc… • We are constrained to: • What we know from target • Our imagination
Now what? • Improve our Security Testing • Fuzzing • Generate Attack Trees / Attack Graphs • Threat Modeling
Data Analysis Goal Build a focus attack roadmap to test target
Security Visualization Coolness • Makes our lives easier • Allows for easy pattern identification • Cuts down our analysis time • Focus security testing • Add cool visuals to report
Future • Adding graphs analysis into PANTERA • Some current research into web sec graphs • Build an automated process • Check out OWASP Tiger (http://www.owasp.org/index.php/OWASP_Tiger)
Nice toolset to play with… • Python • Pydot (http://code.google.com/p/pydot/) • pGRAPH (included in PAIMEI) • Java • JUNG (http://jung.sourceforge.net/) • JGraphT (http://www.jgrapht.org/) • .NET • QuickGraph (http://www.codeproject.com/KB/miscctrl/quickgraph.aspx) • MSAGL (http://research.microsoft.com/research/msagl/)
The End • Q&A • Important: Beer / hard liquor (Vodka Lemon, Margaritas, Mojitos, you named it…) are always welcome • Simon Roses Femerlingwww.roseslabs.com