SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Beyond the
Perimeter
PREVOTY
Chad Tindel
Principal Solution Architect
chad@prevoty.com
@ctindel
February 2016
$=~[];$={___:++$,$$$$:(![]+"")[$],__$:++$,$_$_:(![]+"")[$],_$_:++$,$_$$:({}+""
)[$],$$_$:($[$]+"")[$],_$$:++$,$$$_:(!""+"")[$],$__:++$,$_$:++$,$$__:({}+"")[$
],$$_:++$,$$$:++$,$___:++$,$__$:++$};$.$_=($.$_=$+"")[$.$_$]+($._$=$.$_[
$.__$])+($.$$=($.$+"")[$.__$])+((!$)+"")[$._$$]+($.__=$.$_[$.$$_])+($.$=(!""+
"")[$.__$])+($._=(!""+"")[$._$_])+$.$_[$.$_$]+$.__+$._$+$.$;$.$$=$.$+(!""+"")
[$._$$]+$.__+$._+$.$+$.$$;$.$=($.___)[$.$_][$.$_];$.$($.$($.$$+"""+$.$_$_
+(![]+"")[$._$_]+$.$$$_+""+$.__$+$.$$_+$._$_+$.__+"(""+$.__$+$.__$+
$.___+$.$$$_+(![]+"")[$._$_]+(![]+"")[$._$_]+$._$+","+$.$__+$.___+""+$._
_$+$.__$+$.$$$+""+$.__$+$._$_+$.$$$+""+$.__$+$.___+$.__$+""+$.__
$+$._$_+$._$$+""+$.__$+$._$_+$.___+"!""+$.$__+$.___+")"+""")())();
Evolution of
security
SECURITY PILLARS / TIME
PILLAR CONTROLS VALUE / TIME
NETWORK Network / Web Firewalls
Perimeter has changed,
assume internal = external
ENDPOINT
Patches / Intrusion Detection +-
Prevention
Critical bugs in common
infrastructure (heartbleed)
APPLICATION SAST / DAST / People
Running a testing tool doesn’t
actually fix code
84% OF ATTACKS TARGET
APPLICATIONS
GARTNER 2013
90% OF APPS HAVE >1 CRITICAL
BUG
HP PROTECT 2014
AVERAGE OF 138 DAYS TO FIX 1
SQL INJECTION
HP PROTECT 2014
OWASP Top-10
Open Web
Application Security
Project Top 10
Application
Vulnerabilities
A1 SQL Injection A6 Sensitive Data Exposure
A2
Broken Authentication and Session
Management
A7
Missing Function Level Access
Control
A3 Cross-Site Scripting A8
Cross Site Request Forgery
(CSRF)
A4 Insecure Direct Object References A9
Using Known Vulnerable
Components
A5 Security Misconfiguration A10
Unvalidated Redirects and
Forwards
https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
OWASP Top-10
Open Web
Application Security
Project Top 10
Application
Vulnerabilities
“97 percent of data breaches worldwide are still due
to an SQL injection somewhere along the line”
-Neira Jones, Barclays Head of Payment Security for
Barclaycard.
Cross-site scripting carried out on websites accounted
for roughly 84% of all security vulnerabilities
documented by Symantec
Secure cloud hosting firm FireHost reveals that in the
first quarter of 2013, the volume of Cross-Site Request
Forgery (CSRF) attacks increased by 132% compared
to the same period of 2012.
New attacks found all the time
CONTROLS, EVOLVED
OLD CONTROLS NEW CONTROLS
Network / Web Firewalls
Micro-Segmentation
Assume the attackers will get in
Patches / Intrusion Systems
Micro-Virtualization
Assume the process will execute
SASTs / DASTs / People
Runtime Application Security
Assume the app will be hit
Simple Exploit Example
A3: XSS
Defense by
Encoding
1. Never Insert Untrusted Data directly in a script, inside an HTML comment, in
an attribute name, in a tag name, or directly in CSS. Never accept actual
JavaScript code from an untrusted source and then run it.
2. Encode untrusted data before reflecting it back out. HTML Escape Before
Inserting Untrusted Data into HTML Element Content (convert “&” to “&”
and “<“ to “&lt;” etc).
OWASP Publishes a Java Encoder you can use in your app to help with a lot of
this:
https://www.owasp.org/index.php/OWASP_Java_Encoder_Project
https://github.com/OWASP/owasp-java-encoder/
String safe = ESAPI.encoder().encodeForHTML( request.getParameter( "input" ) );
String safe = ESAPI.encoder().encodeForHTMLAttribute( request.getParameter(
"input" ) );
String safe = ESAPI.encoder().encodeForJavaScript( request.getParameter(
"input" ) );
String safe = ESAPI.encoder().encodeForCSS( request.getParameter( "input" ) );
A3: XSS
Problems with
encoding
1. Requires Developers to properly encode all untrusted input which if we
could trust them to do that all the time, we wouldn’t have these bugs in the first
place.
2. Complicated to choose the correct encoding mechanism before reflecting
it back out. Need to consciously choose the correct encoding scheme
(encodeForHTML, encodeForHTMLAttribute, encodeForJavascript, etc) and in
the rush to get new features out with modern development timelines and agile
lifecycles it is easy to make a mistake here.
3. Requires you to make code changes to the application so how will you do
this to protect legacy apps and third party apps which are showing open
vulnerabilities in your scanning tools?
4. Does not give you data/visibility on whether or not there was an
attempted attack so how will you generate metrics and reports on which
applications are under attack, what kinds of attacks are happening, and whom
is attacking you?
5. Is not commercially supported by a vendor so on whom will your enterprise
depend for bug fixes in the encoding library? Look at the node-esapi module
which was last updated two years ago and is still version 0.0.1
https://www.npmjs.com/package/node-esapi
Let’s play with regex!
(WAF, mod_security, etc)
A3: XSS
Problems with
Regex
1. Writing regex that covers every possible case is a challenge and leads a messy set of
hard to maintain patterns. Just look at all these examples that OWASP publishes:
https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet
2. Hackers are constantly fuzzing and obfuscating 0-day attacks to find new ways
through the statically defined set of Regex patterns. Within 2 hours of the Microsoft Edge
browser being shipped a vulnerability was found in the built-in XSS filter.
http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-6058
https://technet.microsoft.com/library/security/ms15-107
https://www.cvedetails.com/vulnerability-list/vendor_id-26/product_id-9900/opbyp-1/Microsoft-
Internet-Explorer.html
3. Regex is SLOOOOOW and subject to DOS attacks (ReDoS):
https://www.owasp.org/index.php/Regular_expression_Denial_of_Service_-_ReDoS
4. New tags come out with new standards so if your app was written during the days of
HTML4, you will need to go update your regex to handle new ways of injecting things,
like HTML5 <AUDIO> and <VIDEO> tags. How easy is that to do for an app that is 8
years old and the developer has moved on?
5. False Positives are common so the pattern based approach will probably break your
app in unintended ways and require frequent tuning.
Non-invasive
Remediation
For Apps
Gartner Maverick Research
“Runtime Application Self-Protection (RASP)”
“Applications should not be delegating — as is done today — most of their runtime
protection to external devices. Applications should be capable of self-protection —
that is, have protection features built into the application runtime
environment.
These features should see all data coming in and out of the application, all events
affecting the application, all executed instructions, and all database access. Once
RASP is deployed into production, the application runtime environment should be
able to detect attacks and protect applications with a high level of assurance.”
• Be able to protect applications by detecting and blocking attacks.
• Have deep visibility into application logic flow and data flow, configuration,
executed instructions and data processing to accurately identify attacks.
• Be instrumented into the application runtime environment. This instrumentation
should be noninvasive or require no/minimal invasiveness into application code.
- Joseph Feiman, Gartner Analyst
LANGSEC to the Rescue!
What is
LANGSEC
• Language-Theoretic Security is an emerging methodology that treats code
patterns and data formats as languages and their grammars for the purpose of
preventing the introduction of malicious code into software
• Pioneered by Dr. Sergey Bratus, Meredith L. Patterson, and the late Len
Sassaman
“LANGSEC posits that the only path to trustworthy software that takes
untrusted inputs is treating all valid or expected inputs as a formal language,
and the respective input-handling routines as a recognizer for that language. The
recognition must be feasible, and the recognizer must match the language in
required computation power.
When input handling is done in adhoc way, the de facto recognizer, i.e. the
input recognition and validation code ends up scattered throughout the
program, does not match the programmers' assumptions about safety and validity
of data, and thus provides ample opportunities for exploitation.”
LANGSEC
Terminology
• Formal Grammar
• Tokenizers
• Scanners
• Lexers
• Parsers
• Lexical and Syntactic
Analyzers
Lexical Analysis
Letters, Numbers
Punctuation
Words
i h a v e a f l a t
Syntactic Analysis Sentences “i have a flat”
Code Generator
Domain
Intent
Context
Automobile
Driving
Transportation
Transformer Policies i have a flat tire
Regular
Expression
LANGSEC
LANGSEC
Advantages
1. Not vulnerable to false positives because the formal grammar will tell us immediately
whether input from the user is an attack or not
2. Not vulnerable to 0-day attacks because it is not vulnerable to fuzzing or obfuscation
attacks.
3. Ultra-fast performance because it is done using custom tokenizers, scanners, and
parsers for the exact problem domain
4. Can generate actionable data and reports because it tells us when there was an attack
against an application and the exact details of the attack itself.
Real Examples in ACME
Content Protection
Protects applications
from XSS injection
attacks contained in
content created by
external & internal
users, as well as web
services.
Database
Protection
Prevents SQL
injections by
detecting & blocking
malicious queries.
Thank You Learn more at prevoty.com
PREVOTY

Weitere ähnliche Inhalte

Was ist angesagt?

香港六合彩
香港六合彩香港六合彩
香港六合彩
baoyin
 
Encoded Attacks And Countermeasures
Encoded Attacks And CountermeasuresEncoded Attacks And Countermeasures
Encoded Attacks And Countermeasures
Marco Morana
 
Continuous Application Security at Scale with IAST and RASP -- Transforming D...
Continuous Application Security at Scale with IAST and RASP -- Transforming D...Continuous Application Security at Scale with IAST and RASP -- Transforming D...
Continuous Application Security at Scale with IAST and RASP -- Transforming D...
Jeff Williams
 
Secure Coding - Web Application Security Vulnerabilities and Best Practices
Secure Coding - Web Application Security Vulnerabilities and Best PracticesSecure Coding - Web Application Security Vulnerabilities and Best Practices
Secure Coding - Web Application Security Vulnerabilities and Best Practices
Websecurify
 

Was ist angesagt? (20)

Secure code
Secure codeSecure code
Secure code
 
OWASP Top 10 Proactive Controls
OWASP Top 10 Proactive ControlsOWASP Top 10 Proactive Controls
OWASP Top 10 Proactive Controls
 
Web application security
Web application securityWeb application security
Web application security
 
HackFest 2015 - Rasp vs waf
HackFest 2015 - Rasp vs wafHackFest 2015 - Rasp vs waf
HackFest 2015 - Rasp vs waf
 
Secure Software Engineering
Secure Software EngineeringSecure Software Engineering
Secure Software Engineering
 
OWASP top 10-2013
OWASP top 10-2013OWASP top 10-2013
OWASP top 10-2013
 
Owasp top 10 web application security hazards part 2
Owasp top 10 web application security hazards part 2Owasp top 10 web application security hazards part 2
Owasp top 10 web application security hazards part 2
 
Secure PHP Coding
Secure PHP CodingSecure PHP Coding
Secure PHP Coding
 
Secure coding practices
Secure coding practicesSecure coding practices
Secure coding practices
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
Filter Evasion: Houdini on the Wire
Filter Evasion: Houdini on the WireFilter Evasion: Houdini on the Wire
Filter Evasion: Houdini on the Wire
 
Static Analysis: The Art of Fighting without Fighting
Static Analysis: The Art of Fighting without FightingStatic Analysis: The Art of Fighting without Fighting
Static Analysis: The Art of Fighting without Fighting
 
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
 
Why you need API Security Automation
Why you need API Security AutomationWhy you need API Security Automation
Why you need API Security Automation
 
Encoded Attacks And Countermeasures
Encoded Attacks And CountermeasuresEncoded Attacks And Countermeasures
Encoded Attacks And Countermeasures
 
Continuous Application Security at Scale with IAST and RASP -- Transforming D...
Continuous Application Security at Scale with IAST and RASP -- Transforming D...Continuous Application Security at Scale with IAST and RASP -- Transforming D...
Continuous Application Security at Scale with IAST and RASP -- Transforming D...
 
Secure programming with php
Secure programming with phpSecure programming with php
Secure programming with php
 
Secure Coding - Web Application Security Vulnerabilities and Best Practices
Secure Coding - Web Application Security Vulnerabilities and Best PracticesSecure Coding - Web Application Security Vulnerabilities and Best Practices
Secure Coding - Web Application Security Vulnerabilities and Best Practices
 
Application Security Part 1 Threat Defense In Client Server Applications ...
Application Security   Part 1   Threat Defense In Client Server Applications ...Application Security   Part 1   Threat Defense In Client Server Applications ...
Application Security Part 1 Threat Defense In Client Server Applications ...
 
OWASP API Security Top 10 Examples
OWASP API Security Top 10 ExamplesOWASP API Security Top 10 Examples
OWASP API Security Top 10 Examples
 

Ähnlich wie 20160225 OWASP Atlanta Prevoty RASP

OWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptxOWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptx
johnpragasam1
 
OWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptxOWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptx
azida3
 
Evaluating Web App, Mobile App, and API Security - Matt Cohen
Evaluating Web App, Mobile App, and API Security - Matt CohenEvaluating Web App, Mobile App, and API Security - Matt Cohen
Evaluating Web App, Mobile App, and API Security - Matt Cohen
Inman News
 
OWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptxOWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptx
cgt38842
 
csmalware_malware
csmalware_malwarecsmalware_malware
csmalware_malware
Joshua Saxe
 

Ähnlich wie 20160225 OWASP Atlanta Prevoty RASP (20)

Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
Security Testing: Myths, Challenges, and Opportunities - Experiences in Integ...
 
OWASP_Top_Ten_Proactive_Controls version 2
OWASP_Top_Ten_Proactive_Controls version 2OWASP_Top_Ten_Proactive_Controls version 2
OWASP_Top_Ten_Proactive_Controls version 2
 
OWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptxOWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptx
 
OWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptxOWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptx
 
Evaluating Web App, Mobile App, and API Security - Matt Cohen
Evaluating Web App, Mobile App, and API Security - Matt CohenEvaluating Web App, Mobile App, and API Security - Matt Cohen
Evaluating Web App, Mobile App, and API Security - Matt Cohen
 
OWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptxOWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptx
 
Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2Top Ten Java Defense for Web Applications v2
Top Ten Java Defense for Web Applications v2
 
OWASP_Top_Ten_Proactive_Controls_v32.pptx
OWASP_Top_Ten_Proactive_Controls_v32.pptxOWASP_Top_Ten_Proactive_Controls_v32.pptx
OWASP_Top_Ten_Proactive_Controls_v32.pptx
 
OWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptxOWASP_Top_Ten_Proactive_Controls_v2.pptx
OWASP_Top_Ten_Proactive_Controls_v2.pptx
 
Top 10 Web Security Vulnerabilities (OWASP Top 10)
Top 10 Web Security Vulnerabilities (OWASP Top 10)Top 10 Web Security Vulnerabilities (OWASP Top 10)
Top 10 Web Security Vulnerabilities (OWASP Top 10)
 
2 . web app s canners
2 . web app s canners2 . web app s canners
2 . web app s canners
 
Security Awareness
Security AwarenessSecurity Awareness
Security Awareness
 
Dev{sec}ops
Dev{sec}opsDev{sec}ops
Dev{sec}ops
 
GNUCITIZEN Dwk Owasp Day September 2007
GNUCITIZEN Dwk Owasp Day   September 2007GNUCITIZEN Dwk Owasp Day   September 2007
GNUCITIZEN Dwk Owasp Day September 2007
 
Finding Zero-Days Before The Attackers: A Fortune 500 Red Team Case Study
Finding Zero-Days Before The Attackers: A Fortune 500 Red Team Case StudyFinding Zero-Days Before The Attackers: A Fortune 500 Red Team Case Study
Finding Zero-Days Before The Attackers: A Fortune 500 Red Team Case Study
 
App Manifest
App ManifestApp Manifest
App Manifest
 
csmalware_malware
csmalware_malwarecsmalware_malware
csmalware_malware
 
Cyber ppt
Cyber pptCyber ppt
Cyber ppt
 
Top Ten Web Application Defenses v12
Top Ten Web Application Defenses v12Top Ten Web Application Defenses v12
Top Ten Web Application Defenses v12
 
The App Sec How-To: Choosing a SAST Tool
The App Sec How-To: Choosing a SAST ToolThe App Sec How-To: Choosing a SAST Tool
The App Sec How-To: Choosing a SAST Tool
 

Kürzlich hochgeladen

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Kürzlich hochgeladen (20)

call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 

20160225 OWASP Atlanta Prevoty RASP

  • 1. Beyond the Perimeter PREVOTY Chad Tindel Principal Solution Architect chad@prevoty.com @ctindel February 2016
  • 2.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 12. SECURITY PILLARS / TIME PILLAR CONTROLS VALUE / TIME NETWORK Network / Web Firewalls Perimeter has changed, assume internal = external ENDPOINT Patches / Intrusion Detection +- Prevention Critical bugs in common infrastructure (heartbleed) APPLICATION SAST / DAST / People Running a testing tool doesn’t actually fix code
  • 13.
  • 14. 84% OF ATTACKS TARGET APPLICATIONS GARTNER 2013
  • 15. 90% OF APPS HAVE >1 CRITICAL BUG HP PROTECT 2014
  • 16. AVERAGE OF 138 DAYS TO FIX 1 SQL INJECTION HP PROTECT 2014
  • 17. OWASP Top-10 Open Web Application Security Project Top 10 Application Vulnerabilities A1 SQL Injection A6 Sensitive Data Exposure A2 Broken Authentication and Session Management A7 Missing Function Level Access Control A3 Cross-Site Scripting A8 Cross Site Request Forgery (CSRF) A4 Insecure Direct Object References A9 Using Known Vulnerable Components A5 Security Misconfiguration A10 Unvalidated Redirects and Forwards https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
  • 18. OWASP Top-10 Open Web Application Security Project Top 10 Application Vulnerabilities “97 percent of data breaches worldwide are still due to an SQL injection somewhere along the line” -Neira Jones, Barclays Head of Payment Security for Barclaycard. Cross-site scripting carried out on websites accounted for roughly 84% of all security vulnerabilities documented by Symantec Secure cloud hosting firm FireHost reveals that in the first quarter of 2013, the volume of Cross-Site Request Forgery (CSRF) attacks increased by 132% compared to the same period of 2012.
  • 19. New attacks found all the time
  • 20. CONTROLS, EVOLVED OLD CONTROLS NEW CONTROLS Network / Web Firewalls Micro-Segmentation Assume the attackers will get in Patches / Intrusion Systems Micro-Virtualization Assume the process will execute SASTs / DASTs / People Runtime Application Security Assume the app will be hit
  • 22. A3: XSS Defense by Encoding 1. Never Insert Untrusted Data directly in a script, inside an HTML comment, in an attribute name, in a tag name, or directly in CSS. Never accept actual JavaScript code from an untrusted source and then run it. 2. Encode untrusted data before reflecting it back out. HTML Escape Before Inserting Untrusted Data into HTML Element Content (convert “&” to “&amp;” and “<“ to “&lt;” etc). OWASP Publishes a Java Encoder you can use in your app to help with a lot of this: https://www.owasp.org/index.php/OWASP_Java_Encoder_Project https://github.com/OWASP/owasp-java-encoder/ String safe = ESAPI.encoder().encodeForHTML( request.getParameter( "input" ) ); String safe = ESAPI.encoder().encodeForHTMLAttribute( request.getParameter( "input" ) ); String safe = ESAPI.encoder().encodeForJavaScript( request.getParameter( "input" ) ); String safe = ESAPI.encoder().encodeForCSS( request.getParameter( "input" ) );
  • 23. A3: XSS Problems with encoding 1. Requires Developers to properly encode all untrusted input which if we could trust them to do that all the time, we wouldn’t have these bugs in the first place. 2. Complicated to choose the correct encoding mechanism before reflecting it back out. Need to consciously choose the correct encoding scheme (encodeForHTML, encodeForHTMLAttribute, encodeForJavascript, etc) and in the rush to get new features out with modern development timelines and agile lifecycles it is easy to make a mistake here. 3. Requires you to make code changes to the application so how will you do this to protect legacy apps and third party apps which are showing open vulnerabilities in your scanning tools? 4. Does not give you data/visibility on whether or not there was an attempted attack so how will you generate metrics and reports on which applications are under attack, what kinds of attacks are happening, and whom is attacking you? 5. Is not commercially supported by a vendor so on whom will your enterprise depend for bug fixes in the encoding library? Look at the node-esapi module which was last updated two years ago and is still version 0.0.1 https://www.npmjs.com/package/node-esapi
  • 24. Let’s play with regex! (WAF, mod_security, etc)
  • 25. A3: XSS Problems with Regex 1. Writing regex that covers every possible case is a challenge and leads a messy set of hard to maintain patterns. Just look at all these examples that OWASP publishes: https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet 2. Hackers are constantly fuzzing and obfuscating 0-day attacks to find new ways through the statically defined set of Regex patterns. Within 2 hours of the Microsoft Edge browser being shipped a vulnerability was found in the built-in XSS filter. http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-6058 https://technet.microsoft.com/library/security/ms15-107 https://www.cvedetails.com/vulnerability-list/vendor_id-26/product_id-9900/opbyp-1/Microsoft- Internet-Explorer.html 3. Regex is SLOOOOOW and subject to DOS attacks (ReDoS): https://www.owasp.org/index.php/Regular_expression_Denial_of_Service_-_ReDoS 4. New tags come out with new standards so if your app was written during the days of HTML4, you will need to go update your regex to handle new ways of injecting things, like HTML5 <AUDIO> and <VIDEO> tags. How easy is that to do for an app that is 8 years old and the developer has moved on? 5. False Positives are common so the pattern based approach will probably break your app in unintended ways and require frequent tuning.
  • 26. Non-invasive Remediation For Apps Gartner Maverick Research “Runtime Application Self-Protection (RASP)” “Applications should not be delegating — as is done today — most of their runtime protection to external devices. Applications should be capable of self-protection — that is, have protection features built into the application runtime environment. These features should see all data coming in and out of the application, all events affecting the application, all executed instructions, and all database access. Once RASP is deployed into production, the application runtime environment should be able to detect attacks and protect applications with a high level of assurance.” • Be able to protect applications by detecting and blocking attacks. • Have deep visibility into application logic flow and data flow, configuration, executed instructions and data processing to accurately identify attacks. • Be instrumented into the application runtime environment. This instrumentation should be noninvasive or require no/minimal invasiveness into application code. - Joseph Feiman, Gartner Analyst
  • 27. LANGSEC to the Rescue!
  • 28. What is LANGSEC • Language-Theoretic Security is an emerging methodology that treats code patterns and data formats as languages and their grammars for the purpose of preventing the introduction of malicious code into software • Pioneered by Dr. Sergey Bratus, Meredith L. Patterson, and the late Len Sassaman “LANGSEC posits that the only path to trustworthy software that takes untrusted inputs is treating all valid or expected inputs as a formal language, and the respective input-handling routines as a recognizer for that language. The recognition must be feasible, and the recognizer must match the language in required computation power. When input handling is done in adhoc way, the de facto recognizer, i.e. the input recognition and validation code ends up scattered throughout the program, does not match the programmers' assumptions about safety and validity of data, and thus provides ample opportunities for exploitation.”
  • 29. LANGSEC Terminology • Formal Grammar • Tokenizers • Scanners • Lexers • Parsers • Lexical and Syntactic Analyzers
  • 30. Lexical Analysis Letters, Numbers Punctuation Words i h a v e a f l a t Syntactic Analysis Sentences “i have a flat” Code Generator Domain Intent Context Automobile Driving Transportation Transformer Policies i have a flat tire Regular Expression LANGSEC
  • 31. LANGSEC Advantages 1. Not vulnerable to false positives because the formal grammar will tell us immediately whether input from the user is an attack or not 2. Not vulnerable to 0-day attacks because it is not vulnerable to fuzzing or obfuscation attacks. 3. Ultra-fast performance because it is done using custom tokenizers, scanners, and parsers for the exact problem domain 4. Can generate actionable data and reports because it tells us when there was an attack against an application and the exact details of the attack itself. Real Examples in ACME
  • 32. Content Protection Protects applications from XSS injection attacks contained in content created by external & internal users, as well as web services.
  • 34. Thank You Learn more at prevoty.com PREVOTY

Hinweis der Redaktion

  1. And not that I like using toilet humor for cheap laughs….
  2. And not that I like using toilet humor for cheap laughs….
  3. And not that I like using toilet humor for cheap laughs….
  4. http://www.techworld.com/news/security/barclays-97-percent-of-data-breaches-still-due-sql-injection-3331283/ http://eval.symantec.com/mktginfo/enterprise/white_papers/b-whitepaper_exec_summary_internet_security_threat_report_xiii_04-2008.en-us.pdf http://news.softpedia.com/news/CSRF-and-SQL-Injection-Attacks-Increase-in-Frequency-FireHost-Finds-347737.shtml