app assessments reloaded

22
App Assessments Reloaded OWASP Austin Chapter August 2010

Upload: ernest-mueller

Post on 15-Jul-2015

133 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: App Assessments Reloaded

App Assessments Reloaded

OWASP Austin Chapter

August 2010

Page 2: App Assessments Reloaded

Problems with Security in the SDLC

• Waterfall versus Agile (Technical debt)• Security backlogs, Hardening sprints• Ratcheting is pen-testing for the SDLC

Page 3: App Assessments Reloaded

Testing in Prod

• [Almost] Never test in production• Configure temporary DNS/IP for test box• Run only test cases that require on-Internet

Page 4: App Assessments Reloaded

AppSec Programs & App Assessments

• Don’t blindly hire external pen-testers• Don’t blindly follow the maturity models• Lead with a tool, but instrumentation• Not app|code scanners, manual pen-tests

Page 5: App Assessments Reloaded

Start with Instrumentation

• DBI (Pintool, DynamoRIO, IDA+PaiMei/PyDbg)• Compiler-based (does only gcc support this?)• Actually is perfect for web applications• Fortify PTA, Aspect Security, Morcilla PHP

Page 6: App Assessments Reloaded

TAOSSA Code-Audit Strategies

• Instrumentation (CC5) takes care of inputs (filters/validation) and outputs (escaping)• Candidate-points mostly taken care of

• CC1-4: Don’t worry about object-oriented• DGs: Use OOA&D with Patterns, EAI/Web2.0

Page 7: App Assessments Reloaded

Which Apps to Test?

• Don’t enumerate or discover web apps• Locate databases and understand data• Find where the data flows to• Threat-model and refactor to security

patterns. Then do posture assessments

Page 8: App Assessments Reloaded

How to Test Risky Apps

• Do the manual penetration-testing• Reverse testing• Tiered testing• Make somebody else do it for you

Page 9: App Assessments Reloaded

Dev-Test and SQE (Quality)

• Leverage any existing test-harness• Outsource to large usability tests• Company-wide bug hunt days

Page 10: App Assessments Reloaded

Leverage the Test Harness

• Webapp: HtmlUnit, Selenium RC, JsTestDriver• Fatapp: Test|Fake client, Corpus distillation• RESTful apps: SoapUI, Unit testing frameworks• Continuous-prevention development

Page 11: App Assessments Reloaded

Usability Outsourcing

• E.g. Nielsen Norman Group• Testing Intranets

• If you can’t do this, then do bug-hunts• Invite everybody

Page 12: App Assessments Reloaded

Bug-Hunts

<configuration>

<sessionstate timeout=”1” /> (or 1 million)</configuration>

• Red-Gate, Exceptioneer, Lambda Probe, NetLoony, App Logs, Ounce Open (O2)

Page 13: App Assessments Reloaded

Epic-Fail Guy (EFG) Revisited

• Required static analysis doesn’t stop EFG• OWASP ESAPI doesn’t stop EFG• Appsec training doesn’t stop EFG• They are legion

Page 14: App Assessments Reloaded

Static Analysis Tools Suck

• Too expensive in both money and time• 3k/2wk/app, 30k/yr, 60k/yr• Security coverage costs 25k/yr

• SATE 2009, ManVsAutoVulnAssessment

Page 15: App Assessments Reloaded

Fuzzers and Scanners Suck

• Software Security Testing & Quality Assurance• “… the fuzzers found, on average, over 50% more bugs

than just running the most effective fuzzer by itself “• “every 1% of code coverage = finding 1% more bugs”

• Wivet and SQLiBENCH results are still poor

Page 16: App Assessments Reloaded

Code Reviews Don’t Scale

• Walkthroughs rarely happen/useful• Specs and Requirements rarely happen/useful• They are awesome though

Page 17: App Assessments Reloaded

Pen-Tests Don’t Scale

• All pen-tests should include free, automated regressions that can be run in e.g. cron and provided to the business with free support

• The Appsec SaaS companies do this already

Page 18: App Assessments Reloaded

Types of Pen-Testing

• Peripheral (mostly point-and-shoot + reports)• Adversarial (threat-modeling required)• Still doesn’t scale, but pretty cool guy

Page 19: App Assessments Reloaded

State of the Art AppSec Risk Management

• Combine methods (SAST+DAST, VA+WAF, etc)• Threadfix, HoneyApps, O2, Aspect Security

• Pen-test specific: The Dradis Framework• Vendor specific: 360, AMP, Hybrid 2.0

Page 20: App Assessments Reloaded

The DevTest Security Analyst

• aka Security Bugfixer aka “Security Buddy”• Uses test harness, HP Test Data Management• Reads InfoQ, Hacker News, SpotTheVuln• Stamps out classes of security bugs

Page 21: App Assessments Reloaded

Tahnks

Page 22: App Assessments Reloaded

Info

@[email protected] (Active GReader)

http://www.agilegamedevelopment.comhttp://www.fortify.com/products/fortify-360/ (PTA and RTA)http://pintool.orgThe Art of Software Security Assessment (taossa.com)Advanced Object-Oriented Analysis and Design Using UMLhttp://www.eaipatterns.comhttp://oreilly.com/catalog/9780596514433http://www.nngroup.comhttp://www.useit.com/alertbox/outsource_recruiting.htmlhttp://www.securityacts.com/securityacts02.pdf