SlideShare a Scribd company logo
1 of 53
Tagging Your Code with a Useful Assurance Label
Engineering Your Software For Attack
Robert A. Martin
Senior Principal Engineer
Cyber Security Center
Center for National Security
The MITRE Corporation
About Me

• About Me

Identified

Hosted by OWASP & the NYC Chapter
What We’ve Learned

Making systems secure by just reducing attack surface
really hard – maybe impossible
 Software Systems & Networks too large and complex
 Zero vulnerabilities for all assets on network?
– Assumes you know all assets
– Assumes you can know all vulnerabilities
Cyber Attack Lifecycle
Recon

Deliver

Weaponize

Control

Exploit

Maintain

Execute
Characteristics of the Advanced
Persistent Threat

1. We won’t always see the initial attack
2. We can’t keep the adversary out

3. Advanced Persistent Threat is not a “hacker”
Cyber Threat Intelligence Sharing
Building Blocks – Phases of a
Cyber Attack Lifecycle
Recon

Deliver

Weaponize

Proactive Detection Mitigation

Recon
Weaponize

Control

Exploit

Maintain

Execute

Incident Response & Mission Assurance
• Obtain information to conduct the attack
• Place payload into delivery vehicle

Deliver

• Send the attack to the potential victim

Exploit

• The point of no return

Control

• Direct the victim system to take actions

Execute

• Fulfill mission requirements

Maintain

• Insure future access
Hockey Goalie

6
Elements of an Attacker Aware Cyber
Threat Intelligence Sharing-Based
Approach

1. Understanding of the Attackers Building Blocks
2. Effective Cyber Threat Intelligence Sharing Model

3. Agile defensive posture aligned with threat from the
attackers and attack techniques
4. Development team working side-by-side with
operators (DevOps)
Extending the Threat-Driven
Perspective Beyond
Operational Defense

Risk-Based, Attack-Aware, and Threat-Driven

Operational

Strategic
From Just a Mitigation
Approach
A traditional information assurance approach based solely
on regulation, which resulted in an approach based on
mitigation and compliance around static defenses
To a threat/attacker based cyber defense that
understands attacks and balances Mitigation with
Detection and Response

M

• Defenders become demanding consumers of
intelligence, informed by understanding of the attacks their
software systems face

D

• Producers of intelligence

R
What is “Cyber Threat Intelligence?”
Consider these questions:
 What activity/attacks are we seeing?

 What attacks should I look for on my networks and
systems and why?
 Where has this attack been seen?

 What does it do?
 What weaknesses does this attack exploit?
 Why does attacker do this?
 Who is responsible for this attack?
 What can I do about it?
A1
Threat
Agents

Risk

Application Specific

Application Security Risks

What Are Application Security Risks?
Attackers can potentially use many different paths through your application to do harm to your business or organization. Each of
these paths represents a risk that may, or may not, be serious enough to warrant attention.
Threat
Agents

Attack
Vectors

Security
Weaknesses

Security
Controls

Weakness

Control

Attack

Technical
Impacts

Business
Impacts
Impact

Asset
Attack

Weakness

Attack

Impact

Weakness

Control
Function

Impact
Asset

Weakness

What’s  My Risk?

References

The OWASP Top 10 focuses on identifying the most serious risks for a broad array
of organizations. For each of these risks, we provide generic information about
likelihood and technical impact using the following simple ratings scheme, which is
based on the OWASP Risk Rating Methodology.

OWASP

Weakness
Prevalence

Weakness
Detectability

Technical
Impacts

Easy

Widespread

Easy

Severe

Average

Common

Average

Moderate

Difficult

App
Specific

Attack
Vectors

Uncommon

Difficult

Minor

Attack
Vectors

Business
Impacts

App /
Business
Specific

Only you know the specifics of your environment and your business. For any given
application, there may not be a threat agent that can perform the relevant attack,
or the technical impact may not make any difference to your business. Therefore,
you should evaluate each risk for yourself, focusing on the threat agents, security
controls, and business impacts in your enterprise. We list Threat Agents as
Application Specific, and Business Impacts as Application / Business Specific to
indicate these are clearly dependent on the details about your application in your
enterprise.
The names of the risks in the Top 10 stem from the type of attack, the type of
weakness, or the type of impact they cause. We chose names that accurately
reflect the risks and, where possible, align with common terminology most likely to
raise awareness.

• OWASP Risk Rating Methodology
• Article on Threat/Risk Modeling

External
• FAIR Information Risk Framework
• Microsoft Threat Modeling (STRIDE
and DREAD)

Security
Weakness

Exploitability
EASY
Attacker sends
simple text-based
attacks that exploit
the syntax of the
targeted
interpreter. Almost
any source of data
can be an injection
vector, including
internal sources.

Control

Sometimes, these paths are trivial to find and exploit and sometimes they are extremely difficult. Similarly, the harm that is
caused may be of no consequence, or it may put you out of business. To determine the risk to your organization, you can
evaluate the likelihood associated with each threat agent, attack vector, and security weakness and combine it with an estimate
of the technical and business impact to your organization. Together, these factors determine the overall risk.

Threat
Agents

Consider anyone
who can send
untrusted data to
the system,
including external
users, internal
users, and
administrators.

Injection
Prevalence
COMMON

Detectability
AVERAGE

Injection flaws occur when an application
sends untrusted data to an interpreter.
Injection flaws are very prevalent,
particularly in legacy code. They are often
found in SQL, LDAP, Xpath, or NoSQL
queries; OS commands; XML parsers,
SMTP Headers, program arguments, etc.
Injection flaws are easy to discover when
examining code, but frequently hard to
discover via testing. Scanners and fuzzers
can help attackers find injection flaws.

Technical
Impacts

Business
Impacts

Impact
SEVERE

Application /
Business Specific

Injection can result
in data loss or
corruption, lack of
accountability, or
denial of access.
Injection can
sometimes lead to
complete host
takeover.

Consider the
business value of
the affected data
and the platform
running the
interpreter. All data
could be stolen,
modified, or
deleted. Could your
reputation be
harmed?

Am I Vulnerable To Injection?

How Do I Prevent Injection?

The best way to find out if an application is vulnerable to
injection is to verify that all use of interpreters clearly
separates untrusted data from the command or query. For
SQL calls, this means using bind variables in all prepared
statements and stored procedures, and avoiding dynamic
queries.

Automated dynamic scanning which exercises the application
may provide insight into whether some exploitable injection
flaws exist. Scanners cannot always reach interpreters and
have difficulty detecting whether an attack was successful.
Poor error handling makes injection flaws easier to discover.

Preventing injection requires keeping untrusted data
separate from commands and queries.
1. The preferred option is to use a safe API which avoids the
use of the interpreter entirely or provides a
parameterized interface. Be careful with APIs, such as
stored procedures, that are parameterized, but can still
introduce injection under the hood.
2. If a parameterized API is not available, you should
carefully escape special characters using the specific
escape syntax for that interpreter. OWASP’s  ESAPI
provides many of these escaping routines.
3. Positive  or  “white  list”  input  validation  is  also  
recommended, but is not a complete defense as many
applications require special characters in their input. If
special characters are required, only approaches 1. and 2.
above will make their use safe. OWASP’s  ESAPI has an
extensible library of white list input validation routines.

Example Attack Scenarios

References

Scenario #1: The application uses untrusted data in the
construction of the following vulnerable SQL call:

OWASP

Checking the code is a fast and accurate way to see if the
application uses interpreters safely. Code analysis tools can
help a security analyst find the use of interpreters and trace
the data flow through the application. Penetration testers can
validate these issues by crafting exploits that confirm the
vulnerability.

String query = "SELECT * FROM accounts WHERE
custID='" + request.getParameter("id") + "'";
Scenario #2:  Similarly,  an  application’s  blind  trust in
frameworks may result in queries that are still vulnerable,
(e.g., Hibernate Query Language (HQL)):
Query HQLQuery = session.createQuery(“FROM  accounts
WHERE custID='“  +  request.getParameter("id") + "'");

• OWASP SQL Injection Prevention Cheat Sheet
• OWASP Query Parameterization Cheat Sheet
• OWASP Command Injection Article
• OWASP XML eXternal Entity (XXE) Reference Article
• ASVS: Output Encoding/Escaping Requirements (V6)
• OWASP Testing Guide: Chapter on SQL Injection Testing

In  both  cases,  the  attacker  modifies  the  ‘id’  parameter  value  
in her browser to send: ' or '1'='1. For example:

External

http://example.com/app/accountView?id=' or '1'='1

• CWE Entry 89 on SQL Injection

This changes the meaning of both queries to return all the
records from the accounts table. More dangerous attacks
could modify data or even invoke stored procedures.

• CWE Entry 564 on Hibernate Injection

• CWE Entry 77 on Command Injection
Industry
Uptake

CWE
Software Assurance Methods
Countermeasure
Selection

Development Process
Apply assurance activities to the
procedures and structure imposed on
software development

Operational System
Implement countermeasures to the
design and acquisition of end-item
software products and their interfaces

Development Environment
Apply assurance activities to the
environment and tools for
developing, testing, and integrating
software code and interfaces

Additional Guidance in PPP Outline and Guidance
Public Law 113-239 Section
933 - Software Assurance
DoD Software-based System

Software Assurance.—The term ‘‘software
assurance’’ means the level of confidence
that software functions as intended and is
free of vulnerabilities, either intentionally or
unintentionally designed or inserted as part
of the software, throughout the life cycle. Sect933

confidence

functions as intended

Program Office
Milestone Reviews
with OSD on SwA
Program Protection Plan’s
“Application of Software
Assurance Countermeasures”

Development Process
• Static Analysis
• Design Inspection
• Code Inspections
• CVE
• CAPEC
• CWE
• Pen Test
• Test Coverage
Operational System
• Failover Multiple Supplier
Redundancy
• Fault Isolation
• Least Privilege
• System Element Isolation
• Input checking/validation
• SW load key
Development Environment
• Source
• Release Testing
• Generated code inspection

free of vulnerabilities
SQL Injection Attack Execution Flow
User

1. Web Form with ‘ in all fields

MS SQL
Database

2. One SQL error message

SELECT ITEM,PRICE FROM PRODUCT
WHERE ITEM_CATEGORY='$user_input'
3. Web Form with ‘ in ITEM_CATEGORY field
ORDER BY message
PRICE
4. SQL error
5. Web Form with: ' exec master..xp_cmdshell 'dir' -6. a listing of all directories
Simple test case for SQL Injection
Test Case 1: Single quote SQL injection of registration page web form fields
Test Case Goal: Ensure SQL syntax single quote character entered in registration page web
form fields does not cause abnormal SQL behavior
Context:
• This test case is part of a broader SQL injection syntax exploration suite of tests to
probe various potential injection points for susceptibility to SQL injection. If this test
case fails, it should be followed-up with test cases from the SQL injection
experimentation test suite.
Preconditions:
• Access to system registration page exists
• Registration page web form field content are used by system in SQL queries of the
system database upon page submission
• User has the ability to enter free-form text into
registration page web form fields
Test Data:
• ASCII single quote character
Action Steps:
• Enter single quote character into each web form
field on
the registration page
• Submit the contents of the registration page
Postconditions:
• Test case fails if SQL error is thrown
• Test case passes if page submission succeeds without
any SQL errors
Security
Feature
Cross-site Scripting (XSS)
Attack (CAPEC-86)
Improper Neutralization of
Input During Web Page
Generation
(CWE-79)

SQL Injection Attack (CAPEC-66)

Improper Neutralization of Special
Elements used in
an SQL Command
(CWE-89)
29
Software, Network
Traffic, Physical, Social
Engineering, and Supply Chain Attack
Patterns
Engineering For Attack – ISO/IEC TR 20004:
Refining Software Vulnerability Analysis Under
ISO/IEC 15049 and ISO/IEC 18045

Known
Threat
Actors

Attack Patterns
(CAPECs)

Attack

Weaknesses
(CWEs)

Weakness

Controls*
System & System
Security
Engineering
Trades

Technical
Impacts

Operational
Impacts

Impact

Item

Asset
Attack

Weakness

Impact

Item
Function

Attack

Impact

Weakness

Asset
Weakness

Item

* Controls include architecture choices, design choices, added security
functions, activities & processes, physical decomposition choices, code
assessments, design reviews, dynamic testing, and pen testing
Technical Impacts –
Common Consequences
Scoring Weaknesses
Based on Context
Archetypes:
• Web Browser User Interface
• Web Servers
• Application Servers
• Database Systems
• Desktop Systems
• SSL

Vignettes:
1. Web-based Retail Provider
2. Intranet resident health
records management system
of hospital

Web
Browser
Web
Browser

Web
Browser

2

1

Web
Browser

Web
Browser

Web
Browser

Web
Browser
Vignettes – Technology Groups & Business/Mission Domains

Common Weakness Risk Assessment Framework uses Vignettes with Archetypes to identify top CWEs in respective Domain/Technology Groups
Business Value Context (BVC)

• Identifies critical assets and security concerns
• Links Technical Impacts (derived from CWE
weaknesses) with business implications
• More fine-grained model than the CIA Triad
•

•

(Medical billing): Privacy is very important, claimed by one source to be the largest
obstacle for sharing medical records; yet life-and-death situations in (critical care)
may have different criteria than in a clinical setting. Electronic medical breaches
could lead to discrimination, not just personal embarrassment or discomfort.
Availability is less important - could cause delays in billing but do not directly affect
health of the patient.
(Implanted medical device): Power consumption and privacy a concern. Key
management important. Must balance ease-of-access during emergency care with
patient privacy and day-to-day security. Integrity and availability are essential improper execution or failure of the device could lead to illness or death.
Technical Impact Scorecard

• Links business value with the technical impact
of weakness exploitation
• Stays away from technical details of individual
weaknesses
• Operates within the context of a vignette
Calculating CWSS Impact
Weights
Scoring Weaknesses Discovered
in Code using CWSS
Utilizing Coverage Claims

Code
Review

CWE’s a capability
claims to cover

Static
Analysis
Tool A
Static
Analysis
Tool B
Pen Testing
Services

Most
Important
Weaknesses
(CWE’s)

Which static analysis tools
and Pen Testing services
find the CWE’s I care
about?
Leveraging and Managing to take
Advantage of the Multiple
Perspectives of Analysis

•
•
•
•
•

Null Pointer Dereference
Threading Issues
Issues in Dead Code
Insecure Crypto Functions
…

Total Potential
Security Weaknesses

Static
Analysis

 Application Logic Issues

•
•
•
•
•
•

Environment Configuration Issues
Issues in integrations of modules
Runtime Privileges Issues
Protocol Parser/Serializer Issues
Issues in 3rd party components
…

Dynamic
Analysis

•
•
•
•
•
•

SQL Injection
Cross Site Scripting
HTTP Response Splitting
OS Commanding
LDAP Injection
…
Leveraging and Managing to take
Advantage of the Multiple
Perspectives of Analysis
Different perspectives are effective at finding different types of weaknesses
 Some are good at finding the cause and some at finding the effect


Static
Code
Analysis

Penetration
Test

Data
Security
Analysis

Code
Review

Cross-Site Scripting (XSS)

X

X

X

SQL Injection

X

X

Architecture
Risk
Analysis

X

Insufficient Authorization Controls

X

X

X

X

Broken Authentication and Session Management

X

X

X

X

Information Leakage

X

X

Improper Error Handling

X

X

Insecure Use of Cryptography

X

X

Cross Site Request Forgery (CSRF)

X

X

Denial of Service

X

Poor Coding Practices

X

X

X

X

X
X
SwA and Systems
Development (example)
Abuse Case
Development

Cyber
Threat/
Attack
Analysis

Application Security Code
Review (developed and
purchased), Penetration
Testing & Abuse Case
Driven Testing

Gather All of the
Evidence for the
Assurance Case
and Get It Approved

and Systems
Design

Attack Analysis against
Supply Chain &
Application Architecture
Security Review

Attack-based
Application Design
Security Review

* Ideally Insert SwA before RFP release in Analysis of Alternatives

Application Security Code
Review, Penetration Testing &
Abuse Case Driven Testing of
Maintenance Updates
(Page 1 of 3)

Want Discernibility
Suggestions
Started with
Mitigation Suggestions
(3) DoS: unreliable
execution
(4) DoS: resource
consumption
(5) Execute
unauthorized code
or commands
(6) Gain privileges
/ assume identity
(7) Bypass
protection
mechanism
(8) Hide activities

Binary Static
Analysis

Automated
Dynamic
Analysis

81 CWEs
91 CWEs
56 CWEs
31 CWEs
69 CWEs
60 CWEs
74 CWEs
26 CWEs

Penetration
Testing

Review of Live System

(2) Read Data

Source
Code
Static
Analysis

Review of Code

(1) Modify data

Design
Review

Review of Architecture and
Design

Architecture
Analysis

Red Team
Assessment
“An Assurance Tag for Binaries”
Architecture
Analysis

(1) Modify data

Design
Review

Source
Code Static
Analysis

Binary Static
Analysis

Automated
Dynamic
Analysis

Penetration
Testing

CWE-23
CWE-23
Relative Path
Traversal

CWE-131 CWE-131
Incorrect Calculation
of Buffer Size

CWE-311

(2) Read Data

CWE-14
CWE-14
Compiler Removal of
Buffer Clearing

CWE-129 CWE-129
Improper Validation
of Array Index

CWE-209
CWE-209
CWE-209
Information Exposure Through an
Error Messages

(3) DoS: unreliable
execution

CWE-36

CWE-476 CWE-476
Null Pointer
Dereference

CWE-406

(4) DoS: resource
consumption

CWE-395
CWE-395
Use of
NullPointerException

CWE-190

CWE-412

(5) Execute
unauthorized code
or commands

CWE-88

CWE-120

(6) Gain privileges
/ assume identity

CWE-96

(7) Bypass
protection
mechanism
(8) Hide activities

CWE-89

CWE-36

Absolute Path
Traversal

CWE-88

Argument Injection
CWE-96

Static Code
Injection
CWE-89

SQL Injection
CWE-78
CWE-78
OS Command
Injection

CWE-190

Integer Overflow
CWE-120

CWE-489

Leftover Debug Code

CWE-311

Missing Encryption of Sensitive Data

CWE-406

CWE-406

Network Amplification
CWE-412

CWE-412

Unrestricted Externally Accessible Lock
CWE-120

Buffer Overflow
CWE-489

CWE-311

Red Team
Assessment

CWE-79

CWE-79

Cross-site Scripting
CWE-309

CWE-309

CWE-309

Use of Password System for Primary
Authentication

CWE-357 CWE-357
Insufficient UI
Warning of Dangerous

CWE-665

CWE-168 CWE-168
Improper Handling of
Inconsistent

CWE-444

CWE-665

CWE-665

Improper Initialization
CWE-444

CWE-444

HTTP Request Smuggling
© 2012 The MITRE Corporation. All rights reserved.

For internal MITRE use
Planning to Leverage “State of the Art
Resource” (SOAR): Software Table of
“Verification Methods”
Going Forward

• Put table of CWEs, by the 8 Technical Impact Types,
on the “SwA On-Ramp”
• Fill in missing remediation recommendations for the
rest of CWE
• Validate the CWEtechnical impact type in CWE
• Fill in “Discernibility” information for each CWE
leveraging the IDA SOAR
– those discernable in arch/design review;
– those discernable (findable) in the code; and
– those discernable on the live system.

• Other Ideas?
• Volunteers?
Big finish?

Sharing knowledge of our opponents and watching the plays develop,
we can make the saves that protect our networks and the software
running on them.
51
Optional: FFRDC name here

Optional
Image
Here

Optional
Image
Here

Optional
Image
Here

Optional
Image
Here

Optional
Image
Here

Optional
Image
Here
Questions?

ramartin@mitre.org

More Related Content

What's hot

Penetration Testing Tutorial | Penetration Testing Tools | Cyber Security Tra...
Penetration Testing Tutorial | Penetration Testing Tools | Cyber Security Tra...Penetration Testing Tutorial | Penetration Testing Tools | Cyber Security Tra...
Penetration Testing Tutorial | Penetration Testing Tools | Cyber Security Tra...Edureka!
 
Vulnerability Assesment
Vulnerability AssesmentVulnerability Assesment
Vulnerability AssesmentDedi Dwianto
 
A Brief Introduction to Penetration Testing
A Brief Introduction to Penetration TestingA Brief Introduction to Penetration Testing
A Brief Introduction to Penetration TestingEC-Council
 
The Security Vulnerability Assessment Process & Best Practices
The Security Vulnerability Assessment Process & Best PracticesThe Security Vulnerability Assessment Process & Best Practices
The Security Vulnerability Assessment Process & Best PracticesKellep Charles
 
Presentation on vulnerability analysis
Presentation on vulnerability analysisPresentation on vulnerability analysis
Presentation on vulnerability analysisAsif Anik
 
Penetration testing reporting and methodology
Penetration testing reporting and methodologyPenetration testing reporting and methodology
Penetration testing reporting and methodologyRashad Aliyev
 
Threat modelling(system + enterprise)
Threat modelling(system + enterprise)Threat modelling(system + enterprise)
Threat modelling(system + enterprise)abhimanyubhogwan
 
Application Threat Modeling
Application Threat ModelingApplication Threat Modeling
Application Threat ModelingMarco Morana
 
Penetration Security Testing
Penetration Security TestingPenetration Security Testing
Penetration Security TestingSanjulika Rastogi
 
An Introduction to Secure Application Development
An Introduction to Secure Application DevelopmentAn Introduction to Secure Application Development
An Introduction to Secure Application DevelopmentChristopher Frenz
 
Classification of vulnerabilities
Classification of vulnerabilitiesClassification of vulnerabilities
Classification of vulnerabilitiesMayur Mehta
 
Cyber security series Application Security
Cyber security series   Application SecurityCyber security series   Application Security
Cyber security series Application SecurityJim Kaplan CIA CFE
 
Application Security Architecture and Threat Modelling
Application Security Architecture and Threat ModellingApplication Security Architecture and Threat Modelling
Application Security Architecture and Threat ModellingPriyanka Aash
 
Security Compliance Web Application Risk Management
Security Compliance Web Application Risk ManagementSecurity Compliance Web Application Risk Management
Security Compliance Web Application Risk ManagementMarco Morana
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application SecurityAbdul Wahid
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineeringAHM Pervej Kabir
 

What's hot (20)

Penetration Testing Tutorial | Penetration Testing Tools | Cyber Security Tra...
Penetration Testing Tutorial | Penetration Testing Tools | Cyber Security Tra...Penetration Testing Tutorial | Penetration Testing Tools | Cyber Security Tra...
Penetration Testing Tutorial | Penetration Testing Tools | Cyber Security Tra...
 
Vulnerability Assesment
Vulnerability AssesmentVulnerability Assesment
Vulnerability Assesment
 
A Brief Introduction to Penetration Testing
A Brief Introduction to Penetration TestingA Brief Introduction to Penetration Testing
A Brief Introduction to Penetration Testing
 
The Security Vulnerability Assessment Process & Best Practices
The Security Vulnerability Assessment Process & Best PracticesThe Security Vulnerability Assessment Process & Best Practices
The Security Vulnerability Assessment Process & Best Practices
 
Presentation on vulnerability analysis
Presentation on vulnerability analysisPresentation on vulnerability analysis
Presentation on vulnerability analysis
 
Penetration testing reporting and methodology
Penetration testing reporting and methodologyPenetration testing reporting and methodology
Penetration testing reporting and methodology
 
Threat modelling(system + enterprise)
Threat modelling(system + enterprise)Threat modelling(system + enterprise)
Threat modelling(system + enterprise)
 
Vulnerability Assessment Report
Vulnerability Assessment ReportVulnerability Assessment Report
Vulnerability Assessment Report
 
Application Threat Modeling
Application Threat ModelingApplication Threat Modeling
Application Threat Modeling
 
Penetration Security Testing
Penetration Security TestingPenetration Security Testing
Penetration Security Testing
 
Application Security
Application SecurityApplication Security
Application Security
 
An Introduction to Secure Application Development
An Introduction to Secure Application DevelopmentAn Introduction to Secure Application Development
An Introduction to Secure Application Development
 
Classification of vulnerabilities
Classification of vulnerabilitiesClassification of vulnerabilities
Classification of vulnerabilities
 
Cyber security series Application Security
Cyber security series   Application SecurityCyber security series   Application Security
Cyber security series Application Security
 
Secure Coding and Threat Modeling
Secure Coding and Threat ModelingSecure Coding and Threat Modeling
Secure Coding and Threat Modeling
 
Application Security Architecture and Threat Modelling
Application Security Architecture and Threat ModellingApplication Security Architecture and Threat Modelling
Application Security Architecture and Threat Modelling
 
Security Compliance Web Application Risk Management
Security Compliance Web Application Risk ManagementSecurity Compliance Web Application Risk Management
Security Compliance Web Application Risk Management
 
Application Threat Modeling
Application Threat ModelingApplication Threat Modeling
Application Threat Modeling
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineering
 

Viewers also liked

Csrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equalCsrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equaldrewz lin
 
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitationsAppsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitationsdrewz lin
 
I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2drewz lin
 
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaolaAppsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaoladrewz lin
 
Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013drewz lin
 
Owasp2013 johannesullrich
Owasp2013 johannesullrichOwasp2013 johannesullrich
Owasp2013 johannesullrichdrewz lin
 
Phu appsec13
Phu appsec13Phu appsec13
Phu appsec13drewz lin
 
新浪微博稳定性经验谈
新浪微博稳定性经验谈新浪微博稳定性经验谈
新浪微博稳定性经验谈drewz lin
 
基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架drewz lin
 
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21drewz lin
 
Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2drewz lin
 
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_editsAppsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_editsdrewz lin
 
Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearyWeb security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearydrewz lin
 
Cyber Threats & Cybersecurity - Are You Ready? - Jared Carstensen
Cyber Threats & Cybersecurity - Are You Ready? - Jared CarstensenCyber Threats & Cybersecurity - Are You Ready? - Jared Carstensen
Cyber Threats & Cybersecurity - Are You Ready? - Jared Carstensenjaredcarst
 
Telecom security issues (Raoul Chiesa, day 1 )
Telecom security issues   (Raoul Chiesa, day 1 ) Telecom security issues   (Raoul Chiesa, day 1 )
Telecom security issues (Raoul Chiesa, day 1 ) ClubHack
 
Information Security
Information SecurityInformation Security
Information SecuritySamilMehdiyev
 
Breaking down the cyber security framework closing critical it security gaps
Breaking down the cyber security framework closing critical it security gapsBreaking down the cyber security framework closing critical it security gaps
Breaking down the cyber security framework closing critical it security gapsIBM Security
 
1 security goals
1   security goals1   security goals
1 security goalsdrewz lin
 
Cryptography and Encryptions,Network Security,Caesar Cipher
Cryptography and Encryptions,Network Security,Caesar CipherCryptography and Encryptions,Network Security,Caesar Cipher
Cryptography and Encryptions,Network Security,Caesar CipherGopal Sakarkar
 

Viewers also liked (20)

Csrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equalCsrf not-all-defenses-are-created-equal
Csrf not-all-defenses-are-created-equal
 
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitationsAppsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
Appsec 2013-krehel-ondrej-forensic-investigations-of-web-exploitations
 
I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2I mas appsecusa-nov13-v2
I mas appsecusa-nov13-v2
 
Appsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaolaAppsec usa2013 js_libinsecurity_stefanodipaola
Appsec usa2013 js_libinsecurity_stefanodipaola
 
Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013Via forensics appsecusa-nov-2013
Via forensics appsecusa-nov-2013
 
Owasp2013 johannesullrich
Owasp2013 johannesullrichOwasp2013 johannesullrich
Owasp2013 johannesullrich
 
Phu appsec13
Phu appsec13Phu appsec13
Phu appsec13
 
新浪微博稳定性经验谈
新浪微博稳定性经验谈新浪微博稳定性经验谈
新浪微博稳定性经验谈
 
基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架基于虚拟化技术的分布式软件测试框架
基于虚拟化技术的分布式软件测试框架
 
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
Chuck willis-owaspbwa-beyond-1.0-app secusa-2013-11-21
 
Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2Owasp advanced mobile-application-code-review-techniques-v0.2
Owasp advanced mobile-application-code-review-techniques-v0.2
 
Appsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_editsAppsec2013 presentation-dickson final-with_all_final_edits
Appsec2013 presentation-dickson final-with_all_final_edits
 
Web security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-kearyWeb security-–-everything-we-know-is-wrong-eoin-keary
Web security-–-everything-we-know-is-wrong-eoin-keary
 
Cyber Threats & Cybersecurity - Are You Ready? - Jared Carstensen
Cyber Threats & Cybersecurity - Are You Ready? - Jared CarstensenCyber Threats & Cybersecurity - Are You Ready? - Jared Carstensen
Cyber Threats & Cybersecurity - Are You Ready? - Jared Carstensen
 
Telecom security issues (Raoul Chiesa, day 1 )
Telecom security issues   (Raoul Chiesa, day 1 ) Telecom security issues   (Raoul Chiesa, day 1 )
Telecom security issues (Raoul Chiesa, day 1 )
 
Information Security
Information SecurityInformation Security
Information Security
 
Breaking down the cyber security framework closing critical it security gaps
Breaking down the cyber security framework closing critical it security gapsBreaking down the cyber security framework closing critical it security gaps
Breaking down the cyber security framework closing critical it security gaps
 
1 security goals
1   security goals1   security goals
1 security goals
 
Cryptography and Encryptions,Network Security,Caesar Cipher
Cryptography and Encryptions,Network Security,Caesar CipherCryptography and Encryptions,Network Security,Caesar Cipher
Cryptography and Encryptions,Network Security,Caesar Cipher
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.ppt
 

Similar to Tagging Your Code with a Useful Assurance Label to Engineer Software for Attack

Top 20 certified ethical hacker interview questions and answer
Top 20 certified ethical hacker interview questions and answerTop 20 certified ethical hacker interview questions and answer
Top 20 certified ethical hacker interview questions and answerShivamSharma909
 
What is the process of Vulnerability Assessment and Penetration Testing.pdf
What is the process of Vulnerability Assessment and Penetration Testing.pdfWhat is the process of Vulnerability Assessment and Penetration Testing.pdf
What is the process of Vulnerability Assessment and Penetration Testing.pdfElanusTechnologies
 
Application security testing an integrated approach
Application security testing   an integrated approachApplication security testing   an integrated approach
Application security testing an integrated approachIdexcel Technologies
 
Why Penetration Tests Are Important Cyber51
Why Penetration Tests Are Important Cyber51Why Penetration Tests Are Important Cyber51
Why Penetration Tests Are Important Cyber51martinvoelk
 
The 5 Layers of Security Testing by Alan Koch
The 5 Layers of Security Testing by Alan KochThe 5 Layers of Security Testing by Alan Koch
The 5 Layers of Security Testing by Alan KochQA or the Highway
 
The 5 Layers of Security Testing by Alan Koch
The 5 Layers of Security Testing by Alan KochThe 5 Layers of Security Testing by Alan Koch
The 5 Layers of Security Testing by Alan KochQA or the Highway
 
Best Practices, Types, and Tools for Security Testing in 2023.docx
Best Practices, Types, and Tools for Security Testing in 2023.docxBest Practices, Types, and Tools for Security Testing in 2023.docx
Best Practices, Types, and Tools for Security Testing in 2023.docxAfour tech
 
For Business's Sake, Let's focus on AppSec
For Business's Sake, Let's focus on AppSecFor Business's Sake, Let's focus on AppSec
For Business's Sake, Let's focus on AppSecLalit Kale
 
(VAPT) Vulnerability Assessment And Penetration Testing
(VAPT) Vulnerability Assessment And Penetration Testing(VAPT) Vulnerability Assessment And Penetration Testing
(VAPT) Vulnerability Assessment And Penetration TestingBluechip Gulf IT Services
 
Security Testing Approach for Web Application Testing.pdf
Security Testing Approach for Web Application Testing.pdfSecurity Testing Approach for Web Application Testing.pdf
Security Testing Approach for Web Application Testing.pdfAmeliaJonas2
 
01_Metasploit - The Elixir of Network Security
01_Metasploit - The Elixir of Network Security01_Metasploit - The Elixir of Network Security
01_Metasploit - The Elixir of Network SecurityHarish Chaudhary
 
What is penetration testing and why is it important for a business to invest ...
What is penetration testing and why is it important for a business to invest ...What is penetration testing and why is it important for a business to invest ...
What is penetration testing and why is it important for a business to invest ...Alisha Henderson
 
Vulnerability Assessment and Penetration Testing Framework by Falgun Rathod
Vulnerability Assessment and Penetration Testing Framework by Falgun RathodVulnerability Assessment and Penetration Testing Framework by Falgun Rathod
Vulnerability Assessment and Penetration Testing Framework by Falgun RathodFalgun Rathod
 
Enterprise Class Vulnerability Management Like A Boss
Enterprise Class Vulnerability Management Like A BossEnterprise Class Vulnerability Management Like A Boss
Enterprise Class Vulnerability Management Like A Bossrbrockway
 
Fendley how secure is your e learning
Fendley how secure is your e learningFendley how secure is your e learning
Fendley how secure is your e learningBryan Fendley
 
Security engineering 101 when good design & security work together
Security engineering 101  when good design & security work togetherSecurity engineering 101  when good design & security work together
Security engineering 101 when good design & security work togetherWendy Knox Everette
 
Break it while you make it: writing (more) secure software
Break it while you make it: writing (more) secure softwareBreak it while you make it: writing (more) secure software
Break it while you make it: writing (more) secure softwareLeigh Honeywell
 

Similar to Tagging Your Code with a Useful Assurance Label to Engineer Software for Attack (20)

Introduction to security testing raj
Introduction to security testing rajIntroduction to security testing raj
Introduction to security testing raj
 
Top 20 certified ethical hacker interview questions and answer
Top 20 certified ethical hacker interview questions and answerTop 20 certified ethical hacker interview questions and answer
Top 20 certified ethical hacker interview questions and answer
 
What is the process of Vulnerability Assessment and Penetration Testing.pdf
What is the process of Vulnerability Assessment and Penetration Testing.pdfWhat is the process of Vulnerability Assessment and Penetration Testing.pdf
What is the process of Vulnerability Assessment and Penetration Testing.pdf
 
Application security testing an integrated approach
Application security testing   an integrated approachApplication security testing   an integrated approach
Application security testing an integrated approach
 
Why Penetration Tests Are Important Cyber51
Why Penetration Tests Are Important Cyber51Why Penetration Tests Are Important Cyber51
Why Penetration Tests Are Important Cyber51
 
C01461422
C01461422C01461422
C01461422
 
The 5 Layers of Security Testing by Alan Koch
The 5 Layers of Security Testing by Alan KochThe 5 Layers of Security Testing by Alan Koch
The 5 Layers of Security Testing by Alan Koch
 
The 5 Layers of Security Testing by Alan Koch
The 5 Layers of Security Testing by Alan KochThe 5 Layers of Security Testing by Alan Koch
The 5 Layers of Security Testing by Alan Koch
 
Owasp Top 10-2013
Owasp Top 10-2013Owasp Top 10-2013
Owasp Top 10-2013
 
Best Practices, Types, and Tools for Security Testing in 2023.docx
Best Practices, Types, and Tools for Security Testing in 2023.docxBest Practices, Types, and Tools for Security Testing in 2023.docx
Best Practices, Types, and Tools for Security Testing in 2023.docx
 
For Business's Sake, Let's focus on AppSec
For Business's Sake, Let's focus on AppSecFor Business's Sake, Let's focus on AppSec
For Business's Sake, Let's focus on AppSec
 
(VAPT) Vulnerability Assessment And Penetration Testing
(VAPT) Vulnerability Assessment And Penetration Testing(VAPT) Vulnerability Assessment And Penetration Testing
(VAPT) Vulnerability Assessment And Penetration Testing
 
Security Testing Approach for Web Application Testing.pdf
Security Testing Approach for Web Application Testing.pdfSecurity Testing Approach for Web Application Testing.pdf
Security Testing Approach for Web Application Testing.pdf
 
01_Metasploit - The Elixir of Network Security
01_Metasploit - The Elixir of Network Security01_Metasploit - The Elixir of Network Security
01_Metasploit - The Elixir of Network Security
 
What is penetration testing and why is it important for a business to invest ...
What is penetration testing and why is it important for a business to invest ...What is penetration testing and why is it important for a business to invest ...
What is penetration testing and why is it important for a business to invest ...
 
Vulnerability Assessment and Penetration Testing Framework by Falgun Rathod
Vulnerability Assessment and Penetration Testing Framework by Falgun RathodVulnerability Assessment and Penetration Testing Framework by Falgun Rathod
Vulnerability Assessment and Penetration Testing Framework by Falgun Rathod
 
Enterprise Class Vulnerability Management Like A Boss
Enterprise Class Vulnerability Management Like A BossEnterprise Class Vulnerability Management Like A Boss
Enterprise Class Vulnerability Management Like A Boss
 
Fendley how secure is your e learning
Fendley how secure is your e learningFendley how secure is your e learning
Fendley how secure is your e learning
 
Security engineering 101 when good design & security work together
Security engineering 101  when good design & security work togetherSecurity engineering 101  when good design & security work together
Security engineering 101 when good design & security work together
 
Break it while you make it: writing (more) secure software
Break it while you make it: writing (more) secure softwareBreak it while you make it: writing (more) secure software
Break it while you make it: writing (more) secure software
 

More from drewz lin

Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolfDefeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolfdrewz lin
 
Appsec usa roberthansen
Appsec usa roberthansenAppsec usa roberthansen
Appsec usa roberthansendrewz lin
 
Appsec2013 presentation
Appsec2013 presentationAppsec2013 presentation
Appsec2013 presentationdrewz lin
 
Amol scadaowasp
Amol scadaowaspAmol scadaowasp
Amol scadaowaspdrewz lin
 
Agile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usaAgile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usadrewz lin
 
Vulnex app secusa2013
Vulnex app secusa2013Vulnex app secusa2013
Vulnex app secusa2013drewz lin
 
无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiudrewz lin
 
网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)drewz lin
 
天猫后端技术架构优化实践
天猫后端技术架构优化实践天猫后端技术架构优化实践
天猫后端技术架构优化实践drewz lin
 
天猫大促性能测试实践 耿电
天猫大促性能测试实践 耿电天猫大促性能测试实践 耿电
天猫大促性能测试实践 耿电drewz lin
 
互联网海量运维 20130807
互联网海量运维 20130807互联网海量运维 20130807
互联网海量运维 20130807drewz lin
 
阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践drewz lin
 
T4 淘宝私有云
T4 淘宝私有云T4 淘宝私有云
T4 淘宝私有云drewz lin
 
I os与android多平台开发心得
I os与android多平台开发心得I os与android多平台开发心得
I os与android多平台开发心得drewz lin
 
Hadoop在反作弊中的应用 林述民
Hadoop在反作弊中的应用 林述民Hadoop在反作弊中的应用 林述民
Hadoop在反作弊中的应用 林述民drewz lin
 
人人网服务化与架构变迁V3
人人网服务化与架构变迁V3人人网服务化与架构变迁V3
人人网服务化与架构变迁V3drewz lin
 
有道云笔记架构简介
有道云笔记架构简介有道云笔记架构简介
有道云笔记架构简介drewz lin
 

More from drewz lin (17)

Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolfDefeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
Defeating xss-and-xsrf-with-my faces-frameworks-steve-wolf
 
Appsec usa roberthansen
Appsec usa roberthansenAppsec usa roberthansen
Appsec usa roberthansen
 
Appsec2013 presentation
Appsec2013 presentationAppsec2013 presentation
Appsec2013 presentation
 
Amol scadaowasp
Amol scadaowaspAmol scadaowasp
Amol scadaowasp
 
Agile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usaAgile sdlc-v1.1-owasp-app sec-usa
Agile sdlc-v1.1-owasp-app sec-usa
 
Vulnex app secusa2013
Vulnex app secusa2013Vulnex app secusa2013
Vulnex app secusa2013
 
无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu无线App的性能分析和监控实践 rickyqiu
无线App的性能分析和监控实践 rickyqiu
 
网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)网易移动自动化测试实践(孔庆云)
网易移动自动化测试实践(孔庆云)
 
天猫后端技术架构优化实践
天猫后端技术架构优化实践天猫后端技术架构优化实践
天猫后端技术架构优化实践
 
天猫大促性能测试实践 耿电
天猫大促性能测试实践 耿电天猫大促性能测试实践 耿电
天猫大促性能测试实践 耿电
 
互联网海量运维 20130807
互联网海量运维 20130807互联网海量运维 20130807
互联网海量运维 20130807
 
阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践
 
T4 淘宝私有云
T4 淘宝私有云T4 淘宝私有云
T4 淘宝私有云
 
I os与android多平台开发心得
I os与android多平台开发心得I os与android多平台开发心得
I os与android多平台开发心得
 
Hadoop在反作弊中的应用 林述民
Hadoop在反作弊中的应用 林述民Hadoop在反作弊中的应用 林述民
Hadoop在反作弊中的应用 林述民
 
人人网服务化与架构变迁V3
人人网服务化与架构变迁V3人人网服务化与架构变迁V3
人人网服务化与架构变迁V3
 
有道云笔记架构简介
有道云笔记架构简介有道云笔记架构简介
有道云笔记架构简介
 

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 

Tagging Your Code with a Useful Assurance Label to Engineer Software for Attack

  • 1. Tagging Your Code with a Useful Assurance Label Engineering Your Software For Attack Robert A. Martin Senior Principal Engineer Cyber Security Center Center for National Security The MITRE Corporation
  • 2. About Me • About Me Identified Hosted by OWASP & the NYC Chapter
  • 3. What We’ve Learned Making systems secure by just reducing attack surface really hard – maybe impossible  Software Systems & Networks too large and complex  Zero vulnerabilities for all assets on network? – Assumes you know all assets – Assumes you can know all vulnerabilities Cyber Attack Lifecycle Recon Deliver Weaponize Control Exploit Maintain Execute
  • 4. Characteristics of the Advanced Persistent Threat 1. We won’t always see the initial attack 2. We can’t keep the adversary out 3. Advanced Persistent Threat is not a “hacker”
  • 5. Cyber Threat Intelligence Sharing Building Blocks – Phases of a Cyber Attack Lifecycle Recon Deliver Weaponize Proactive Detection Mitigation Recon Weaponize Control Exploit Maintain Execute Incident Response & Mission Assurance • Obtain information to conduct the attack • Place payload into delivery vehicle Deliver • Send the attack to the potential victim Exploit • The point of no return Control • Direct the victim system to take actions Execute • Fulfill mission requirements Maintain • Insure future access
  • 7.
  • 8. Elements of an Attacker Aware Cyber Threat Intelligence Sharing-Based Approach 1. Understanding of the Attackers Building Blocks 2. Effective Cyber Threat Intelligence Sharing Model 3. Agile defensive posture aligned with threat from the attackers and attack techniques 4. Development team working side-by-side with operators (DevOps)
  • 9. Extending the Threat-Driven Perspective Beyond Operational Defense Risk-Based, Attack-Aware, and Threat-Driven Operational Strategic
  • 10. From Just a Mitigation Approach A traditional information assurance approach based solely on regulation, which resulted in an approach based on mitigation and compliance around static defenses To a threat/attacker based cyber defense that understands attacks and balances Mitigation with Detection and Response M • Defenders become demanding consumers of intelligence, informed by understanding of the attacks their software systems face D • Producers of intelligence R
  • 11. What is “Cyber Threat Intelligence?” Consider these questions:  What activity/attacks are we seeing?  What attacks should I look for on my networks and systems and why?  Where has this attack been seen?  What does it do?  What weaknesses does this attack exploit?  Why does attacker do this?  Who is responsible for this attack?  What can I do about it?
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21. A1 Threat Agents Risk Application Specific Application Security Risks What Are Application Security Risks? Attackers can potentially use many different paths through your application to do harm to your business or organization. Each of these paths represents a risk that may, or may not, be serious enough to warrant attention. Threat Agents Attack Vectors Security Weaknesses Security Controls Weakness Control Attack Technical Impacts Business Impacts Impact Asset Attack Weakness Attack Impact Weakness Control Function Impact Asset Weakness What’s  My Risk? References The OWASP Top 10 focuses on identifying the most serious risks for a broad array of organizations. For each of these risks, we provide generic information about likelihood and technical impact using the following simple ratings scheme, which is based on the OWASP Risk Rating Methodology. OWASP Weakness Prevalence Weakness Detectability Technical Impacts Easy Widespread Easy Severe Average Common Average Moderate Difficult App Specific Attack Vectors Uncommon Difficult Minor Attack Vectors Business Impacts App / Business Specific Only you know the specifics of your environment and your business. For any given application, there may not be a threat agent that can perform the relevant attack, or the technical impact may not make any difference to your business. Therefore, you should evaluate each risk for yourself, focusing on the threat agents, security controls, and business impacts in your enterprise. We list Threat Agents as Application Specific, and Business Impacts as Application / Business Specific to indicate these are clearly dependent on the details about your application in your enterprise. The names of the risks in the Top 10 stem from the type of attack, the type of weakness, or the type of impact they cause. We chose names that accurately reflect the risks and, where possible, align with common terminology most likely to raise awareness. • OWASP Risk Rating Methodology • Article on Threat/Risk Modeling External • FAIR Information Risk Framework • Microsoft Threat Modeling (STRIDE and DREAD) Security Weakness Exploitability EASY Attacker sends simple text-based attacks that exploit the syntax of the targeted interpreter. Almost any source of data can be an injection vector, including internal sources. Control Sometimes, these paths are trivial to find and exploit and sometimes they are extremely difficult. Similarly, the harm that is caused may be of no consequence, or it may put you out of business. To determine the risk to your organization, you can evaluate the likelihood associated with each threat agent, attack vector, and security weakness and combine it with an estimate of the technical and business impact to your organization. Together, these factors determine the overall risk. Threat Agents Consider anyone who can send untrusted data to the system, including external users, internal users, and administrators. Injection Prevalence COMMON Detectability AVERAGE Injection flaws occur when an application sends untrusted data to an interpreter. Injection flaws are very prevalent, particularly in legacy code. They are often found in SQL, LDAP, Xpath, or NoSQL queries; OS commands; XML parsers, SMTP Headers, program arguments, etc. Injection flaws are easy to discover when examining code, but frequently hard to discover via testing. Scanners and fuzzers can help attackers find injection flaws. Technical Impacts Business Impacts Impact SEVERE Application / Business Specific Injection can result in data loss or corruption, lack of accountability, or denial of access. Injection can sometimes lead to complete host takeover. Consider the business value of the affected data and the platform running the interpreter. All data could be stolen, modified, or deleted. Could your reputation be harmed? Am I Vulnerable To Injection? How Do I Prevent Injection? The best way to find out if an application is vulnerable to injection is to verify that all use of interpreters clearly separates untrusted data from the command or query. For SQL calls, this means using bind variables in all prepared statements and stored procedures, and avoiding dynamic queries. Automated dynamic scanning which exercises the application may provide insight into whether some exploitable injection flaws exist. Scanners cannot always reach interpreters and have difficulty detecting whether an attack was successful. Poor error handling makes injection flaws easier to discover. Preventing injection requires keeping untrusted data separate from commands and queries. 1. The preferred option is to use a safe API which avoids the use of the interpreter entirely or provides a parameterized interface. Be careful with APIs, such as stored procedures, that are parameterized, but can still introduce injection under the hood. 2. If a parameterized API is not available, you should carefully escape special characters using the specific escape syntax for that interpreter. OWASP’s  ESAPI provides many of these escaping routines. 3. Positive  or  “white  list”  input  validation  is  also   recommended, but is not a complete defense as many applications require special characters in their input. If special characters are required, only approaches 1. and 2. above will make their use safe. OWASP’s  ESAPI has an extensible library of white list input validation routines. Example Attack Scenarios References Scenario #1: The application uses untrusted data in the construction of the following vulnerable SQL call: OWASP Checking the code is a fast and accurate way to see if the application uses interpreters safely. Code analysis tools can help a security analyst find the use of interpreters and trace the data flow through the application. Penetration testers can validate these issues by crafting exploits that confirm the vulnerability. String query = "SELECT * FROM accounts WHERE custID='" + request.getParameter("id") + "'"; Scenario #2:  Similarly,  an  application’s  blind  trust in frameworks may result in queries that are still vulnerable, (e.g., Hibernate Query Language (HQL)): Query HQLQuery = session.createQuery(“FROM  accounts WHERE custID='“  +  request.getParameter("id") + "'"); • OWASP SQL Injection Prevention Cheat Sheet • OWASP Query Parameterization Cheat Sheet • OWASP Command Injection Article • OWASP XML eXternal Entity (XXE) Reference Article • ASVS: Output Encoding/Escaping Requirements (V6) • OWASP Testing Guide: Chapter on SQL Injection Testing In  both  cases,  the  attacker  modifies  the  ‘id’  parameter  value   in her browser to send: ' or '1'='1. For example: External http://example.com/app/accountView?id=' or '1'='1 • CWE Entry 89 on SQL Injection This changes the meaning of both queries to return all the records from the accounts table. More dangerous attacks could modify data or even invoke stored procedures. • CWE Entry 564 on Hibernate Injection • CWE Entry 77 on Command Injection
  • 23.
  • 24. Software Assurance Methods Countermeasure Selection Development Process Apply assurance activities to the procedures and structure imposed on software development Operational System Implement countermeasures to the design and acquisition of end-item software products and their interfaces Development Environment Apply assurance activities to the environment and tools for developing, testing, and integrating software code and interfaces Additional Guidance in PPP Outline and Guidance
  • 25. Public Law 113-239 Section 933 - Software Assurance DoD Software-based System Software Assurance.—The term ‘‘software assurance’’ means the level of confidence that software functions as intended and is free of vulnerabilities, either intentionally or unintentionally designed or inserted as part of the software, throughout the life cycle. Sect933 confidence functions as intended Program Office Milestone Reviews with OSD on SwA Program Protection Plan’s “Application of Software Assurance Countermeasures” Development Process • Static Analysis • Design Inspection • Code Inspections • CVE • CAPEC • CWE • Pen Test • Test Coverage Operational System • Failover Multiple Supplier Redundancy • Fault Isolation • Least Privilege • System Element Isolation • Input checking/validation • SW load key Development Environment • Source • Release Testing • Generated code inspection free of vulnerabilities
  • 26.
  • 27. SQL Injection Attack Execution Flow User 1. Web Form with ‘ in all fields MS SQL Database 2. One SQL error message SELECT ITEM,PRICE FROM PRODUCT WHERE ITEM_CATEGORY='$user_input' 3. Web Form with ‘ in ITEM_CATEGORY field ORDER BY message PRICE 4. SQL error 5. Web Form with: ' exec master..xp_cmdshell 'dir' -6. a listing of all directories
  • 28. Simple test case for SQL Injection Test Case 1: Single quote SQL injection of registration page web form fields Test Case Goal: Ensure SQL syntax single quote character entered in registration page web form fields does not cause abnormal SQL behavior Context: • This test case is part of a broader SQL injection syntax exploration suite of tests to probe various potential injection points for susceptibility to SQL injection. If this test case fails, it should be followed-up with test cases from the SQL injection experimentation test suite. Preconditions: • Access to system registration page exists • Registration page web form field content are used by system in SQL queries of the system database upon page submission • User has the ability to enter free-form text into registration page web form fields Test Data: • ASCII single quote character Action Steps: • Enter single quote character into each web form field on the registration page • Submit the contents of the registration page Postconditions: • Test case fails if SQL error is thrown • Test case passes if page submission succeeds without any SQL errors
  • 29. Security Feature Cross-site Scripting (XSS) Attack (CAPEC-86) Improper Neutralization of Input During Web Page Generation (CWE-79) SQL Injection Attack (CAPEC-66) Improper Neutralization of Special Elements used in an SQL Command (CWE-89) 29
  • 30. Software, Network Traffic, Physical, Social Engineering, and Supply Chain Attack Patterns
  • 31.
  • 32.
  • 33. Engineering For Attack – ISO/IEC TR 20004: Refining Software Vulnerability Analysis Under ISO/IEC 15049 and ISO/IEC 18045 Known Threat Actors Attack Patterns (CAPECs) Attack Weaknesses (CWEs) Weakness Controls* System & System Security Engineering Trades Technical Impacts Operational Impacts Impact Item Asset Attack Weakness Impact Item Function Attack Impact Weakness Asset Weakness Item * Controls include architecture choices, design choices, added security functions, activities & processes, physical decomposition choices, code assessments, design reviews, dynamic testing, and pen testing
  • 35. Scoring Weaknesses Based on Context Archetypes: • Web Browser User Interface • Web Servers • Application Servers • Database Systems • Desktop Systems • SSL Vignettes: 1. Web-based Retail Provider 2. Intranet resident health records management system of hospital Web Browser Web Browser Web Browser 2 1 Web Browser Web Browser Web Browser Web Browser
  • 36. Vignettes – Technology Groups & Business/Mission Domains Common Weakness Risk Assessment Framework uses Vignettes with Archetypes to identify top CWEs in respective Domain/Technology Groups
  • 37. Business Value Context (BVC) • Identifies critical assets and security concerns • Links Technical Impacts (derived from CWE weaknesses) with business implications • More fine-grained model than the CIA Triad • • (Medical billing): Privacy is very important, claimed by one source to be the largest obstacle for sharing medical records; yet life-and-death situations in (critical care) may have different criteria than in a clinical setting. Electronic medical breaches could lead to discrimination, not just personal embarrassment or discomfort. Availability is less important - could cause delays in billing but do not directly affect health of the patient. (Implanted medical device): Power consumption and privacy a concern. Key management important. Must balance ease-of-access during emergency care with patient privacy and day-to-day security. Integrity and availability are essential improper execution or failure of the device could lead to illness or death.
  • 38. Technical Impact Scorecard • Links business value with the technical impact of weakness exploitation • Stays away from technical details of individual weaknesses • Operates within the context of a vignette
  • 41. Utilizing Coverage Claims Code Review CWE’s a capability claims to cover Static Analysis Tool A Static Analysis Tool B Pen Testing Services Most Important Weaknesses (CWE’s) Which static analysis tools and Pen Testing services find the CWE’s I care about?
  • 42. Leveraging and Managing to take Advantage of the Multiple Perspectives of Analysis • • • • • Null Pointer Dereference Threading Issues Issues in Dead Code Insecure Crypto Functions … Total Potential Security Weaknesses Static Analysis  Application Logic Issues • • • • • • Environment Configuration Issues Issues in integrations of modules Runtime Privileges Issues Protocol Parser/Serializer Issues Issues in 3rd party components … Dynamic Analysis • • • • • • SQL Injection Cross Site Scripting HTTP Response Splitting OS Commanding LDAP Injection …
  • 43. Leveraging and Managing to take Advantage of the Multiple Perspectives of Analysis Different perspectives are effective at finding different types of weaknesses  Some are good at finding the cause and some at finding the effect  Static Code Analysis Penetration Test Data Security Analysis Code Review Cross-Site Scripting (XSS) X X X SQL Injection X X Architecture Risk Analysis X Insufficient Authorization Controls X X X X Broken Authentication and Session Management X X X X Information Leakage X X Improper Error Handling X X Insecure Use of Cryptography X X Cross Site Request Forgery (CSRF) X X Denial of Service X Poor Coding Practices X X X X X X
  • 44. SwA and Systems Development (example) Abuse Case Development Cyber Threat/ Attack Analysis Application Security Code Review (developed and purchased), Penetration Testing & Abuse Case Driven Testing Gather All of the Evidence for the Assurance Case and Get It Approved and Systems Design Attack Analysis against Supply Chain & Application Architecture Security Review Attack-based Application Design Security Review * Ideally Insert SwA before RFP release in Analysis of Alternatives Application Security Code Review, Penetration Testing & Abuse Case Driven Testing of Maintenance Updates
  • 45. (Page 1 of 3) Want Discernibility Suggestions Started with Mitigation Suggestions
  • 46. (3) DoS: unreliable execution (4) DoS: resource consumption (5) Execute unauthorized code or commands (6) Gain privileges / assume identity (7) Bypass protection mechanism (8) Hide activities Binary Static Analysis Automated Dynamic Analysis 81 CWEs 91 CWEs 56 CWEs 31 CWEs 69 CWEs 60 CWEs 74 CWEs 26 CWEs Penetration Testing Review of Live System (2) Read Data Source Code Static Analysis Review of Code (1) Modify data Design Review Review of Architecture and Design Architecture Analysis Red Team Assessment
  • 47. “An Assurance Tag for Binaries” Architecture Analysis (1) Modify data Design Review Source Code Static Analysis Binary Static Analysis Automated Dynamic Analysis Penetration Testing CWE-23 CWE-23 Relative Path Traversal CWE-131 CWE-131 Incorrect Calculation of Buffer Size CWE-311 (2) Read Data CWE-14 CWE-14 Compiler Removal of Buffer Clearing CWE-129 CWE-129 Improper Validation of Array Index CWE-209 CWE-209 CWE-209 Information Exposure Through an Error Messages (3) DoS: unreliable execution CWE-36 CWE-476 CWE-476 Null Pointer Dereference CWE-406 (4) DoS: resource consumption CWE-395 CWE-395 Use of NullPointerException CWE-190 CWE-412 (5) Execute unauthorized code or commands CWE-88 CWE-120 (6) Gain privileges / assume identity CWE-96 (7) Bypass protection mechanism (8) Hide activities CWE-89 CWE-36 Absolute Path Traversal CWE-88 Argument Injection CWE-96 Static Code Injection CWE-89 SQL Injection CWE-78 CWE-78 OS Command Injection CWE-190 Integer Overflow CWE-120 CWE-489 Leftover Debug Code CWE-311 Missing Encryption of Sensitive Data CWE-406 CWE-406 Network Amplification CWE-412 CWE-412 Unrestricted Externally Accessible Lock CWE-120 Buffer Overflow CWE-489 CWE-311 Red Team Assessment CWE-79 CWE-79 Cross-site Scripting CWE-309 CWE-309 CWE-309 Use of Password System for Primary Authentication CWE-357 CWE-357 Insufficient UI Warning of Dangerous CWE-665 CWE-168 CWE-168 Improper Handling of Inconsistent CWE-444 CWE-665 CWE-665 Improper Initialization CWE-444 CWE-444 HTTP Request Smuggling
  • 48. © 2012 The MITRE Corporation. All rights reserved. For internal MITRE use
  • 49. Planning to Leverage “State of the Art Resource” (SOAR): Software Table of “Verification Methods”
  • 50. Going Forward • Put table of CWEs, by the 8 Technical Impact Types, on the “SwA On-Ramp” • Fill in missing remediation recommendations for the rest of CWE • Validate the CWEtechnical impact type in CWE • Fill in “Discernibility” information for each CWE leveraging the IDA SOAR – those discernable in arch/design review; – those discernable (findable) in the code; and – those discernable on the live system. • Other Ideas? • Volunteers?
  • 51. Big finish? Sharing knowledge of our opponents and watching the plays develop, we can make the saves that protect our networks and the software running on them. 51
  • 52. Optional: FFRDC name here Optional Image Here Optional Image Here Optional Image Here Optional Image Here Optional Image Here Optional Image Here

Editor's Notes

  1. With so many ways for software to be vulnerable, businesses needs a way to focus their assurance efforts on those potential vulnerabilities that are most dangerous to them and their software. This talk will offer a new way to focus and organize your software vulnerability assessment and assurance efforts across the entire life-cycle of a project so that you target the most impactful weaknesses when they are most visible. The approach can be done consistently across your enterprise and will have you looking for specific weaknesses at the point where you can gain the most assurance that you have dealt with them successfully. Matched to the activities of your development effort, this approach will have your team looking for those security weaknesses (CWEs) that are most discernable/findable in each of the different stages of a software development effort. For example, when you have a live exemplar system available you should look for the weaknesses in design, configuration, code, or architecture that are findable through dynamic analysis, pen testing, or red teaming of that living system. Similarly, in the coding phase you want the emphasis to be looking for weaknesses that are findable by static analysis tools. The follow-on step to this approach is to use what you found and what you did to create “An Assurance Tag for Binaries", basically an assurance "food label" for the code of that project. This talk will conclude with a discussion of what such a tag could look like, what it could capture, how the information could be obtained, whom would/could create them, and how they could be represented for humans and machines to use.
  2. Development team working side-by-side with operators (DevOps)