nist samate project and omg michael kass nist information technology laboratory march 11, 2008

9
NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory http://samate.nist.gov March 11, 2008

Upload: derrick-griffith

Post on 18-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

NIST SAMATE Project and OMG

Michael Kass

NIST Information Technology Laboratory

http://samate.nist.gov

March 11, 2008

Page 2: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

Overview

• NIST SAMATE Project

• Testing the Tools

• Automated Test Case Generation

• CWE Formalization

• SAMATE and CWE Effectiveness Program

• TCG: Where are we now?

• Other SAMATE work

Page 3: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

SAMATESoftware Assurance Metrics and Tool Evaluation Project

• Co-sponsored by DHS to:– Create tests and tool specifications for software

assurance (SwA) tool evaluations– Develop metrics for measuring SwA tool

effectiveness– Identify gaps in current SwA technology– Make recommendations to DHS for areas of

research

Page 4: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

Testing the Tools

• SAMATE Reference Dataset (SRD)– Online repository of tool tests

– Thousands of source code samples containing examples of CWE’s

• Discrete tests – developed by NIST, contributed by tool developers, academia and public

• Tests are based upon interpretation of a particular weakness definition (currently no formal white-box definitions)

• Tests are freely available at http://samate.nist.gov/SRD

Page 5: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

Automated Test Case Generation (TCG)

• Funded by DHS• Part of SAMATE effort to expand SRD to cover

as many CWE’s as possible• Based upon OMG MDA Technology (MOF,

UML, XMI)– Uses formalized CWE definitions (SBVR)

• Contractual Formalization that is based on OMG standard, Semantics of Business Vocabulary and Rules (SBVR) and

• Technical Formalization that is based on OMG standard, Knowledge Discovery Metamodel (KDM)

Formal CWE Definitions (SBVR/KDM)

Tool Tests (code)Code Analysis Tool

KDM

Page 6: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

CWE Formalization

• White Box Definitions : Focus on the structure patterns of the inner components and their interactions (that determine certain observable behavior) – Provide “compliance points” that:

• Describe patterns of code (as they can be directly identified in code)

• Identify discernable properties of patterns of code• Enable automation• Enable direct step-by-step comparisons of the decision

procedures implemented within tool

Page 7: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

SAMATE and CWE Effectiveness Program

• Long-term goal : To auto-generate tool tests using formal CWE definitions in collaboration with MITRE’s CWE Effectiveness program– Provide tests “ad hoc” to tool developers– Developers run tests against their tool– Developers can publish test results

Page 8: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

TCG: Where are we now?

• TCG Status:– Can generate tests for 3 CWE’s

– Near term, NIST will expand formal CWE definitions to 25 “high priority” CWE’s based upon their:

• Occurrence

• Severity

• Recognized by tools today

– Long term, TGC will cover as many CWEs as possible• With coding complexities

Page 9: NIST SAMATE Project and OMG Michael Kass NIST Information Technology Laboratory  March 11, 2008

Other SAMATE Projects

• Ongoing work– Developing tests for web application scanners – Adding to existing tests for source code security analyzers– Performing tool effectiveness studies

• New areas– Testing binary analyzers– The static analyzer tool exposition (SATE)– Software transparency/pedigree information– Malware research protocols