SlideShare une entreprise Scribd logo
1  sur  43
Télécharger pour lire hors ligne
Defying Logic
Theory, Design, and Implementation
     of Complex Systems for
     Testing Application Logic
Rafal Los & Prajakta Jagdale – HP Application Security
Act 1 – The Pledge
FOUNDATIONS
LET’S TALK ABOUT LOGIC
…FOLLOW THE RABBIT.
Define: Application Logic
Just what is ―application logic‖?

―Design components of a program,
  including the sequencing of steps
  prescriptive for how to execute intended
  business processes in a piece of
  software‖
Logic Primer
   A business process, ordering

 Log In     Select        Add        Verify
          Restaurant     Items       Order


Log Out    Loyalty     Transaction     Add
 (quit)    Points       Success      Payment
Logic Primer
    A broken business process?

 Log In     Select       Add      Verify
          Restaurant    Items     Order


Log Out   Transaction   Loyalty     Add
 (quit)    Success      Points    Payment
Logic Primer
Can we manipulate intended process?

    Log In     Select       Add      Verify
             Restaurant    Items     Order


   Log Out   Transaction   Loyalty     Add
    (quit)    Success      Points    Payment
Logic Primer
In this simple example:
 Manipulate a business process
 Early loyalty points without paying
  – Points = fraud (free stuff!)
  – Free meals = financial lo$$ to vendor
 Business process manipulated = theft,
 fraud, financial loss
Define: Logic Defect
A defect that exposes the component
  business processes (or execution flows)
  to manipulation from the attacker
  perspective to achieve unintended and
  undesirable consequences from the
  design perspective; without disrupting
  the general function or continuity of the
  application.
New Classifications
How is this different than existing
 classifications?
  – OWASP Top 10
  – WASC Threat Classification v2
  – MITRE CWE Top 25           Best “fit”

A fundamentally different way of
  looking at software vulnerabilities.
Building Onto CWE
   – MITRE CWE Top 25

―Classification of business-logic weaknesses is worth deeper
   investigation by researchers. While business logic rules are
   domain-specific, there may be some domain-independent
   patterns to them. We are likely to find new wrinkles to old
   problems, and maybe some new problems that will be easier to
   find once we know what to call them.‖ –Steven Christey (MITRE)
―Taxonomy‖


2 Types of logic-based defects
• Privilege manipulation
• Transaction control manipulation
Privilege Manipulation
Flaw based on broken or incomplete
  authentication/authorization mechanism


• Horizontal/vertical privilege escalation
• Access unauthorized content
• Perform privileged system functions
Privilege Manipulation
<input type="text" name="username" size="30"
  tabindex="100" value=―Wh1t3Rabbit"
  id="username― Role=―user”>

<input type="text" name="username" size="30"
  tabindex="100" value=―Wh1t3Rabbit"
  id="username― Role=―admin‖>
Transaction Control
           Manipulation
Flaw based on broken business process
  continuity allowing for manipulation of
  intended business process/flow


• Circumvent system limitations
• Tamper with application flow
• Manipulate business resources
Transaction Control
   Manipulation




      I want MORE
     than 10 tickets!
Transaction Control
   Manipulation
Transaction Control
   Manipulation
Manipulating ―Logic‖
The server should control the logic of the
 application.

In this case, the server should know 30 is
  not a valid number …right?!

………………………..Nope.
To Be Clear
The key point to remember:
 This research seeks to better enable the
 tester through automation.

We are addressing ‗designed processes‘
We are not addressing ‗back-end
 business process‘ (non-visible)
Starting a Wave
FEW previously given talks or papers on
 logic vulnerabilities
  – Ideas  talks  papers  experiements?
  – A more tangible/usable effort is needed


NO existing R&D effort by a vendor in this
 space as far as we could tell —
 proprietary or open source
Lots of Talking…
―So why aren‘t there any readily available,
  even semi-mature tools or frameworks
  for testing application logic?‖
Act 2 – The Turn
APPLICATION LOGIC VS.
AUTOMATION
Logic vs. Automation
Application Logic         Automation
 hard to define!         o pattern-dependent
 domain-specific         o programmatic
   Industry              o scale is in
   Business process        repeatability
 not pattern-based       o no concept of
   not easy to ‗RegEx‘     process
Challenges
For humans                 For technology
• understand the           • map the application
  application                processes
  – Business processes        – simple, flexible maps
  – ‗Application flow‘     • identify control logic
• drive automation            – critical parameters
  – work with technology   • differentiate test
• document & repeat          success or failure
Application Logic
Application ―logic‖ is tricky…
  – found on the server side
  – found in the client ―cache‖ (offline use?)
  – no consistent patterns to match/test
     • Remember the AT&T/iPad email hack?
  – logic implies human thought required
Simple Logic
Simplest logic block example…
  If <expression> Then
     do something
  ElseIf <expression> Then
     do something
  Else
     do something else
  End If
Challenges
Bridging a vast disconnect
  Client (browser)   App Server
  DOM
                     IF (var1 = A) {
     var1=A           do IsUser; }
     var2=B          ELSEIF (var1 = B)
     var3=1          {
     var4=@b          do IsAdmin; }
     var5=           ENDIF
Challenges
How to overcome random ―fuzzing‖
• identify var1 as a critical parameter
   – Human or automation-driven
• manipulate var1
   – human or technology driven
   – ―fuzzing‖ or data-set driven


 Technology enables scalability & repeatability
Future State  Fantasy
• Point ‗n‘ shoot application logic testing
  – This was never a good strategy anyway*
• Dynamic testing tool ‗learns‘ business
  processes, logic flow and thinks
  – I‘ve seen this movie before …‖SkyNet?‖
• Security continues to operate
  independent of business
Future State  Reality
• Logic testing enabled through
  automation
  – Base logic mapping on QA methodology
  – Continue to evolve combined functional,
    exploratory & security testing
• Technology allows repeatable testing
  throughout application after initial setup
This Has Been Coming
• Initially I talked about mapping
  application execution flow…
• Dynamic testing technology matured
• Static testing technology matured
• New ―hybrid‖ technology gives even
  greater insight into application function
Act 3 – The Prestige
BUILDING TEST
FRAMEWORKS
Overview
Test framework will constitute 3 phases
  I.   Capturing the assumed application
       behavior
  II. Manipulation of the workflows to evoke
       (un)expected behavior patterns
  III. Analyzing the results of the workflow
       manipulations to detect non-conformance
       with defined business processes
3 Step Process
• Model the business process
  – create valid workflows
• Manipulate application workflow
  – ‗fuzzing logic‘
• Analyze the results
  – Were we successful in evoking a non-
    standard response?
Modeling the Business
          Processes
• Purpose: Discover business processes that
  define the application workflow
• Challenge: Application workflow
  specifications are rarely documented and
  are often unknown to the testers
• Solution: Passively monitor & record normal
  user behavior through the application
Modeling the Business
          Processes
Proposed Approach
 Devise a mechanism to:
  – Capture permissible user actions
  – Store the state of the application before
    and after the invocation of each user event
  – Record expected transitions between
    application states
Manipulating the Application
          Workflow
• Purpose: Induce deviations in the application
  behavior that do not conform with the
  assumed business rules
• Challenge: Meaningfully manipulating
  application‘s behavior with minimal
  knowledge about its purpose & context
• Solution: Apply pre-defined modifications to
  the state identifiers and state transactions
  recorded in phase I
Manipulating the Application
          Workflow
Proposed Approach
 Discover logic defects by:
  – Modifying the state of the application
    before passing it as an input to a
    transaction
  – Fuzz the sequence of user actions
    captured during the phase I to detect bugs
    in transaction control
Analyzing the Results
• Purpose: Determine the success of
  workflow manipulation
• Challenge: Measuring the deviation in
  application behavior with minimal
  understanding of application context
• Solution: Apply comparison metrics to
  infer deviations in the application
  workflows
Analyzing the Results
Proposed approach
  – Measure the impact of workflow manipulations on
    the application state
     • compare state identifiers (e.g. system variables, page
       DOM) in the tainted workflow with the original
  – Apply pre-defined set of rules to detect violations
    of the business rules governing the application
    flow
     • E.g. An acceptable application end state can be reached
       despite inaccuracies in one or more intermediate states
       of the workflow
DEMO!

a rough idea of how this could
        work one day
Work In Progress

If you are interested in
  discussing, contributing, or
  expanding this research in any
  way – contact us.

Contenu connexe

Tendances

SSRF For Bug Bounties
SSRF For Bug BountiesSSRF For Bug Bounties
SSRF For Bug BountiesOWASP Nagpur
 
Logical Attacks(Vulnerability Research)
Logical Attacks(Vulnerability Research)Logical Attacks(Vulnerability Research)
Logical Attacks(Vulnerability Research)Ajay Negi
 
Recon and Bug Bounties - What a great love story!
Recon and Bug Bounties - What a great love story!Recon and Bug Bounties - What a great love story!
Recon and Bug Bounties - What a great love story!Abhijeth D
 
Practical DevSecOps: Fundamentals of Successful Programs
Practical DevSecOps: Fundamentals of Successful ProgramsPractical DevSecOps: Fundamentals of Successful Programs
Practical DevSecOps: Fundamentals of Successful ProgramsMatt Tesauro
 
Web application security & Testing
Web application security  & TestingWeb application security  & Testing
Web application security & TestingDeepu S Nath
 
Web application penetration testing
Web application penetration testingWeb application penetration testing
Web application penetration testingImaginea
 
Getting Started with API Security Testing
Getting Started with API Security TestingGetting Started with API Security Testing
Getting Started with API Security TestingSmartBear
 
Analysis of web application penetration testing
Analysis of web application penetration testingAnalysis of web application penetration testing
Analysis of web application penetration testingEngr Md Yusuf Miah
 
DAST in CI/CD pipelines using Selenium & OWASP ZAP
DAST in CI/CD pipelines using Selenium & OWASP ZAPDAST in CI/CD pipelines using Selenium & OWASP ZAP
DAST in CI/CD pipelines using Selenium & OWASP ZAPsrini0x00
 
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 PracticesWebsecurify
 
How to Automate API Testing
How to Automate API TestingHow to Automate API Testing
How to Automate API TestingBruno Pedro
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API TestingSauce Labs
 
Using Postman to Automate API On-Boarding
Using Postman to Automate API On-BoardingUsing Postman to Automate API On-Boarding
Using Postman to Automate API On-BoardingPostman
 
Penetration Testing
Penetration Testing Penetration Testing
Penetration Testing RomSoft SRL
 
Reasons To Automate API Testing Process
Reasons To Automate API Testing ProcessReasons To Automate API Testing Process
Reasons To Automate API Testing ProcessQASource
 
Introduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingIntroduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingNetsparker
 

Tendances (20)

SSRF For Bug Bounties
SSRF For Bug BountiesSSRF For Bug Bounties
SSRF For Bug Bounties
 
Logical Attacks(Vulnerability Research)
Logical Attacks(Vulnerability Research)Logical Attacks(Vulnerability Research)
Logical Attacks(Vulnerability Research)
 
Security testing
Security testingSecurity testing
Security testing
 
Recon and Bug Bounties - What a great love story!
Recon and Bug Bounties - What a great love story!Recon and Bug Bounties - What a great love story!
Recon and Bug Bounties - What a great love story!
 
Practical DevSecOps: Fundamentals of Successful Programs
Practical DevSecOps: Fundamentals of Successful ProgramsPractical DevSecOps: Fundamentals of Successful Programs
Practical DevSecOps: Fundamentals of Successful Programs
 
Web application security & Testing
Web application security  & TestingWeb application security  & Testing
Web application security & Testing
 
Web application penetration testing
Web application penetration testingWeb application penetration testing
Web application penetration testing
 
API Testing
API TestingAPI Testing
API Testing
 
Getting Started with API Security Testing
Getting Started with API Security TestingGetting Started with API Security Testing
Getting Started with API Security Testing
 
Analysis of web application penetration testing
Analysis of web application penetration testingAnalysis of web application penetration testing
Analysis of web application penetration testing
 
DAST in CI/CD pipelines using Selenium & OWASP ZAP
DAST in CI/CD pipelines using Selenium & OWASP ZAPDAST in CI/CD pipelines using Selenium & OWASP ZAP
DAST in CI/CD pipelines using Selenium & OWASP ZAP
 
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
 
Security testing
Security testingSecurity testing
Security testing
 
How to Automate API Testing
How to Automate API TestingHow to Automate API Testing
How to Automate API Testing
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API Testing
 
Using Postman to Automate API On-Boarding
Using Postman to Automate API On-BoardingUsing Postman to Automate API On-Boarding
Using Postman to Automate API On-Boarding
 
Penetration Testing
Penetration Testing Penetration Testing
Penetration Testing
 
Reasons To Automate API Testing Process
Reasons To Automate API Testing ProcessReasons To Automate API Testing Process
Reasons To Automate API Testing Process
 
Introduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingIntroduction to Web Application Penetration Testing
Introduction to Web Application Penetration Testing
 
API Security Fundamentals
API Security FundamentalsAPI Security Fundamentals
API Security Fundamentals
 

En vedette

Security Bootcamp 2013 owasp top 10- 2013
Security Bootcamp 2013   owasp top 10- 2013Security Bootcamp 2013   owasp top 10- 2013
Security Bootcamp 2013 owasp top 10- 2013Security Bootcamp
 
Chapter 1 Lecture
Chapter 1 LectureChapter 1 Lecture
Chapter 1 LectureJEngle
 
Human Resources for the Non-HR Manager Classroom course
Human Resources for the Non-HR Manager Classroom courseHuman Resources for the Non-HR Manager Classroom course
Human Resources for the Non-HR Manager Classroom courseO'Connor Ryan
 
5 effective leadership styles
5 effective leadership styles5 effective leadership styles
5 effective leadership stylesPuneet Yamparala
 
Teaching Business Acumen at CPG Companies
Teaching Business Acumen at CPG CompaniesTeaching Business Acumen at CPG Companies
Teaching Business Acumen at CPG CompaniesEnspire Learning
 
Perth Leadership Outcome Model - Perth Leadership Institute
Perth Leadership Outcome Model - Perth Leadership InstitutePerth Leadership Outcome Model - Perth Leadership Institute
Perth Leadership Outcome Model - Perth Leadership InstitutePerth Leadership Institute
 
Business Acumen - Ken Flamer
Business Acumen - Ken FlamerBusiness Acumen - Ken Flamer
Business Acumen - Ken FlamerKen Flamer
 
5 problem solving with the sequential logic structure
5 problem solving with the sequential logic structure5 problem solving with the sequential logic structure
5 problem solving with the sequential logic structureRheigh Henley Calderon
 
Using Simulations for Business Acumen Development
Using Simulations for Business Acumen DevelopmentUsing Simulations for Business Acumen Development
Using Simulations for Business Acumen DevelopmentEnspire Learning
 
Business Acumen for Learning Professionals: An Innovative Approach (ASTD 2011)
Business Acumen for Learning Professionals: An Innovative Approach (ASTD 2011)Business Acumen for Learning Professionals: An Innovative Approach (ASTD 2011)
Business Acumen for Learning Professionals: An Innovative Approach (ASTD 2011)coloraccounting
 
Business Acumen For Hr Long
Business Acumen For Hr LongBusiness Acumen For Hr Long
Business Acumen For Hr Longcpdemers
 
Heckelman & Unger - Business acumen for strategic heckelman & unger
Heckelman & Unger - Business acumen for strategic heckelman & ungerHeckelman & Unger - Business acumen for strategic heckelman & unger
Heckelman & Unger - Business acumen for strategic heckelman & ungerHR Florida State Council, Inc.
 
1st know the features & functions of information systems
1st know the features & functions of information systems1st know the features & functions of information systems
1st know the features & functions of information systemsBronte666
 
Hr for the non hr managers
Hr for the non hr managersHr for the non hr managers
Hr for the non hr managersSail Khan
 

En vedette (20)

L07 Oranizing Domain Logic
L07 Oranizing Domain LogicL07 Oranizing Domain Logic
L07 Oranizing Domain Logic
 
Security Bootcamp 2013 owasp top 10- 2013
Security Bootcamp 2013   owasp top 10- 2013Security Bootcamp 2013   owasp top 10- 2013
Security Bootcamp 2013 owasp top 10- 2013
 
Chapter 1 Lecture
Chapter 1 LectureChapter 1 Lecture
Chapter 1 Lecture
 
Human Resources for the Non-HR Manager Classroom course
Human Resources for the Non-HR Manager Classroom courseHuman Resources for the Non-HR Manager Classroom course
Human Resources for the Non-HR Manager Classroom course
 
5 effective leadership styles
5 effective leadership styles5 effective leadership styles
5 effective leadership styles
 
Skills Academy_Commercial Awareness
Skills Academy_Commercial AwarenessSkills Academy_Commercial Awareness
Skills Academy_Commercial Awareness
 
Teaching Business Acumen at CPG Companies
Teaching Business Acumen at CPG CompaniesTeaching Business Acumen at CPG Companies
Teaching Business Acumen at CPG Companies
 
Perth Leadership Outcome Model - Perth Leadership Institute
Perth Leadership Outcome Model - Perth Leadership InstitutePerth Leadership Outcome Model - Perth Leadership Institute
Perth Leadership Outcome Model - Perth Leadership Institute
 
Business Acumen - Ken Flamer
Business Acumen - Ken FlamerBusiness Acumen - Ken Flamer
Business Acumen - Ken Flamer
 
Physical Architecture Layer Design
Physical Architecture Layer DesignPhysical Architecture Layer Design
Physical Architecture Layer Design
 
5 problem solving with the sequential logic structure
5 problem solving with the sequential logic structure5 problem solving with the sequential logic structure
5 problem solving with the sequential logic structure
 
Using Simulations for Business Acumen Development
Using Simulations for Business Acumen DevelopmentUsing Simulations for Business Acumen Development
Using Simulations for Business Acumen Development
 
Business Acumen for Learning Professionals: An Innovative Approach (ASTD 2011)
Business Acumen for Learning Professionals: An Innovative Approach (ASTD 2011)Business Acumen for Learning Professionals: An Innovative Approach (ASTD 2011)
Business Acumen for Learning Professionals: An Innovative Approach (ASTD 2011)
 
Human Resources For Non HR Manager
Human Resources For Non HR ManagerHuman Resources For Non HR Manager
Human Resources For Non HR Manager
 
1832
18321832
1832
 
Business Acumen For Hr Long
Business Acumen For Hr LongBusiness Acumen For Hr Long
Business Acumen For Hr Long
 
Heckelman & Unger - Business acumen for strategic heckelman & unger
Heckelman & Unger - Business acumen for strategic heckelman & ungerHeckelman & Unger - Business acumen for strategic heckelman & unger
Heckelman & Unger - Business acumen for strategic heckelman & unger
 
1st know the features & functions of information systems
1st know the features & functions of information systems1st know the features & functions of information systems
1st know the features & functions of information systems
 
Hr for the non hr managers
Hr for the non hr managersHr for the non hr managers
Hr for the non hr managers
 
Hr for non hr Training
Hr for non hr TrainingHr for non hr Training
Hr for non hr Training
 

Similaire à Defying Logic - Business Logic Testing with Automation

LKIN17: Enabling Enterprise Agility though a Hybrid Agile Implementation Mode...
LKIN17: Enabling Enterprise Agility though a Hybrid Agile Implementation Mode...LKIN17: Enabling Enterprise Agility though a Hybrid Agile Implementation Mode...
LKIN17: Enabling Enterprise Agility though a Hybrid Agile Implementation Mode...Innovation Roots
 
Lean Kanban India 2017 | Case study - Hybrid Agile Implementation Model to En...
Lean Kanban India 2017 | Case study - Hybrid Agile Implementation Model to En...Lean Kanban India 2017 | Case study - Hybrid Agile Implementation Model to En...
Lean Kanban India 2017 | Case study - Hybrid Agile Implementation Model to En...LeanKanbanIndia
 
5 Steps to Get Precise SAP Impact-Based Testing
5 Steps to Get Precise SAP Impact-Based Testing5 Steps to Get Precise SAP Impact-Based Testing
5 Steps to Get Precise SAP Impact-Based TestingTurnKey Solutions
 
Agile Aspects of Performance Testing
Agile Aspects of Performance TestingAgile Aspects of Performance Testing
Agile Aspects of Performance TestingAlexander Podelko
 
Testing quick interview preparation
Testing quick interview preparationTesting quick interview preparation
Testing quick interview preparationtesting1001
 
Software engineering quality assurance and testing
Software engineering quality assurance and testingSoftware engineering quality assurance and testing
Software engineering quality assurance and testingBipul Roy Bpl
 
Performance Continuous Integration
Performance Continuous IntegrationPerformance Continuous Integration
Performance Continuous IntegrationAlmudena Vivanco
 
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key UpdatesCloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key UpdatesIRJET Journal
 
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f..." Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...Lohika_Odessa_TechTalks
 
3Audit Software & Tools.pptx
3Audit Software & Tools.pptx3Audit Software & Tools.pptx
3Audit Software & Tools.pptxjack952975
 
Rethinking Test Automation: The Case for Moving Beyond the User Interface
Rethinking Test Automation: The Case for Moving Beyond the User InterfaceRethinking Test Automation: The Case for Moving Beyond the User Interface
Rethinking Test Automation: The Case for Moving Beyond the User InterfaceCognizant
 
Getting Started with Apache Jmeter
Getting Started with Apache JmeterGetting Started with Apache Jmeter
Getting Started with Apache JmeterMindfire Solutions
 
Sivareddy 0000000000000000
Sivareddy 0000000000000000Sivareddy 0000000000000000
Sivareddy 0000000000000000sivareddyeda
 
How to manage your testing automation project ttm methodology
How to manage your testing automation project   ttm methodologyHow to manage your testing automation project   ttm methodology
How to manage your testing automation project ttm methodologyRam Yonish
 
Testing Interview Questions.pdf
Testing Interview Questions.pdfTesting Interview Questions.pdf
Testing Interview Questions.pdfPradeepaKannan6
 

Similaire à Defying Logic - Business Logic Testing with Automation (20)

LKIN17: Enabling Enterprise Agility though a Hybrid Agile Implementation Mode...
LKIN17: Enabling Enterprise Agility though a Hybrid Agile Implementation Mode...LKIN17: Enabling Enterprise Agility though a Hybrid Agile Implementation Mode...
LKIN17: Enabling Enterprise Agility though a Hybrid Agile Implementation Mode...
 
Lean Kanban India 2017 | Case study - Hybrid Agile Implementation Model to En...
Lean Kanban India 2017 | Case study - Hybrid Agile Implementation Model to En...Lean Kanban India 2017 | Case study - Hybrid Agile Implementation Model to En...
Lean Kanban India 2017 | Case study - Hybrid Agile Implementation Model to En...
 
5 Steps to Get Precise SAP Impact-Based Testing
5 Steps to Get Precise SAP Impact-Based Testing5 Steps to Get Precise SAP Impact-Based Testing
5 Steps to Get Precise SAP Impact-Based Testing
 
Agile Aspects of Performance Testing
Agile Aspects of Performance TestingAgile Aspects of Performance Testing
Agile Aspects of Performance Testing
 
Testing quick interview preparation
Testing quick interview preparationTesting quick interview preparation
Testing quick interview preparation
 
Software engineering quality assurance and testing
Software engineering quality assurance and testingSoftware engineering quality assurance and testing
Software engineering quality assurance and testing
 
Performance Continuous Integration
Performance Continuous IntegrationPerformance Continuous Integration
Performance Continuous Integration
 
Engineering operations
Engineering operationsEngineering operations
Engineering operations
 
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key UpdatesCloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
Cloud Storage Auditing Protocol with Verifiable Outsourcing of Key Updates
 
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f..." Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
 
prod-dev-management.pptx
prod-dev-management.pptxprod-dev-management.pptx
prod-dev-management.pptx
 
3Audit Software & Tools.pptx
3Audit Software & Tools.pptx3Audit Software & Tools.pptx
3Audit Software & Tools.pptx
 
Rethinking Test Automation: The Case for Moving Beyond the User Interface
Rethinking Test Automation: The Case for Moving Beyond the User InterfaceRethinking Test Automation: The Case for Moving Beyond the User Interface
Rethinking Test Automation: The Case for Moving Beyond the User Interface
 
Getting Started with Apache Jmeter
Getting Started with Apache JmeterGetting Started with Apache Jmeter
Getting Started with Apache Jmeter
 
Sivareddy 0000000000000000
Sivareddy 0000000000000000Sivareddy 0000000000000000
Sivareddy 0000000000000000
 
SDLCTesting
SDLCTestingSDLCTesting
SDLCTesting
 
Qa analyst training
Qa analyst training Qa analyst training
Qa analyst training
 
How to manage your testing automation project ttm methodology
How to manage your testing automation project   ttm methodologyHow to manage your testing automation project   ttm methodology
How to manage your testing automation project ttm methodology
 
Testing Interview Questions.pdf
Testing Interview Questions.pdfTesting Interview Questions.pdf
Testing Interview Questions.pdf
 
Sanjay Sharma
Sanjay SharmaSanjay Sharma
Sanjay Sharma
 

Plus de Rafal Los

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The 5 Ps of Preparedness - Hope is Not a Strategy [1].pdf
The 5 Ps of Preparedness - Hope is Not a Strategy [1].pdfThe 5 Ps of Preparedness - Hope is Not a Strategy [1].pdf
The 5 Ps of Preparedness - Hope is Not a Strategy [1].pdfRafal Los
 
Irrational But Effective - Applying Parenthood Lessons to Cyber Security
Irrational But Effective - Applying Parenthood Lessons to Cyber SecurityIrrational But Effective - Applying Parenthood Lessons to Cyber Security
Irrational But Effective - Applying Parenthood Lessons to Cyber SecurityRafal Los
 
SAINTCON 21 - Of Sandcastles and Luck (Fixing Vulnerability Management)
SAINTCON 21 - Of Sandcastles and Luck (Fixing Vulnerability Management)SAINTCON 21 - Of Sandcastles and Luck (Fixing Vulnerability Management)
SAINTCON 21 - Of Sandcastles and Luck (Fixing Vulnerability Management)Rafal Los
 
Strategies and Tactics for Effectively Managing Vulnerabilities in Diverse En...
Strategies and Tactics for Effectively Managing Vulnerabilities in Diverse En...Strategies and Tactics for Effectively Managing Vulnerabilities in Diverse En...
Strategies and Tactics for Effectively Managing Vulnerabilities in Diverse En...Rafal Los
 
Lies, Fables and Security Metrics
Lies, Fables and Security MetricsLies, Fables and Security Metrics
Lies, Fables and Security MetricsRafal Los
 
Losing battles, winning wars
Losing battles, winning warsLosing battles, winning wars
Losing battles, winning warsRafal Los
 
5 Things CFOs Need to Know About Enterprise Security - HP CFO Summit 2013
5 Things CFOs Need to Know About Enterprise Security - HP CFO Summit 20135 Things CFOs Need to Know About Enterprise Security - HP CFO Summit 2013
5 Things CFOs Need to Know About Enterprise Security - HP CFO Summit 2013Rafal Los
 
Operationalizing Security Intelligence [ InfoSec World 2014 ]
Operationalizing Security Intelligence [ InfoSec World 2014 ]Operationalizing Security Intelligence [ InfoSec World 2014 ]
Operationalizing Security Intelligence [ InfoSec World 2014 ]Rafal Los
 
Operationalizing security intelligence for the mid market - Rafal Los - RSA C...
Operationalizing security intelligence for the mid market - Rafal Los - RSA C...Operationalizing security intelligence for the mid market - Rafal Los - RSA C...
Operationalizing security intelligence for the mid market - Rafal Los - RSA C...Rafal Los
 
Rebooting the Enterprise Security Program for Defensibility - ISSA Internatio...
Rebooting the Enterprise Security Program for Defensibility - ISSA Internatio...Rebooting the Enterprise Security Program for Defensibility - ISSA Internatio...
Rebooting the Enterprise Security Program for Defensibility - ISSA Internatio...Rafal Los
 
Cloud Security Alliance- Challanges of an elastic environment v8a [public]
Cloud Security Alliance- Challanges of an elastic environment v8a [public]Cloud Security Alliance- Challanges of an elastic environment v8a [public]
Cloud Security Alliance- Challanges of an elastic environment v8a [public]Rafal Los
 
Threat modeling the security of the enterprise
Threat modeling the security of the enterpriseThreat modeling the security of the enterprise
Threat modeling the security of the enterpriseRafal Los
 
Making Measurable Gains - Contextualizing 'Secure' in Business
Making Measurable Gains - Contextualizing 'Secure' in BusinessMaking Measurable Gains - Contextualizing 'Secure' in Business
Making Measurable Gains - Contextualizing 'Secure' in BusinessRafal Los
 
Security BSides Atlanta - "The Business Doesn't Care..."
Security BSides Atlanta - "The Business Doesn't Care..."Security BSides Atlanta - "The Business Doesn't Care..."
Security BSides Atlanta - "The Business Doesn't Care..."Rafal Los
 
Software Security Assurance - Program Building (You're going to need a bigger...
Software Security Assurance - Program Building (You're going to need a bigger...Software Security Assurance - Program Building (You're going to need a bigger...
Software Security Assurance - Program Building (You're going to need a bigger...Rafal Los
 
The Future of Software Security Assurance
The Future of Software Security AssuranceThe Future of Software Security Assurance
The Future of Software Security AssuranceRafal Los
 
Ultimate Hack! Layers 8 & 9 of the OSI Model
Ultimate Hack! Layers 8 & 9 of the OSI ModelUltimate Hack! Layers 8 & 9 of the OSI Model
Ultimate Hack! Layers 8 & 9 of the OSI ModelRafal Los
 
Into the Rabbithole - Evolved Web App Security Testing (OWASP AppSec DC)
Into the Rabbithole - Evolved Web App Security Testing (OWASP AppSec DC)Into the Rabbithole - Evolved Web App Security Testing (OWASP AppSec DC)
Into the Rabbithole - Evolved Web App Security Testing (OWASP AppSec DC)Rafal Los
 
Oh No They Didn't! 7 Web App Security Stories (v1.0)
Oh No They Didn't! 7 Web App Security Stories (v1.0)Oh No They Didn't! 7 Web App Security Stories (v1.0)
Oh No They Didn't! 7 Web App Security Stories (v1.0)Rafal Los
 

Plus de Rafal Los (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The 5 Ps of Preparedness - Hope is Not a Strategy [1].pdf
The 5 Ps of Preparedness - Hope is Not a Strategy [1].pdfThe 5 Ps of Preparedness - Hope is Not a Strategy [1].pdf
The 5 Ps of Preparedness - Hope is Not a Strategy [1].pdf
 
Irrational But Effective - Applying Parenthood Lessons to Cyber Security
Irrational But Effective - Applying Parenthood Lessons to Cyber SecurityIrrational But Effective - Applying Parenthood Lessons to Cyber Security
Irrational But Effective - Applying Parenthood Lessons to Cyber Security
 
SAINTCON 21 - Of Sandcastles and Luck (Fixing Vulnerability Management)
SAINTCON 21 - Of Sandcastles and Luck (Fixing Vulnerability Management)SAINTCON 21 - Of Sandcastles and Luck (Fixing Vulnerability Management)
SAINTCON 21 - Of Sandcastles and Luck (Fixing Vulnerability Management)
 
Strategies and Tactics for Effectively Managing Vulnerabilities in Diverse En...
Strategies and Tactics for Effectively Managing Vulnerabilities in Diverse En...Strategies and Tactics for Effectively Managing Vulnerabilities in Diverse En...
Strategies and Tactics for Effectively Managing Vulnerabilities in Diverse En...
 
Lies, Fables and Security Metrics
Lies, Fables and Security MetricsLies, Fables and Security Metrics
Lies, Fables and Security Metrics
 
Losing battles, winning wars
Losing battles, winning warsLosing battles, winning wars
Losing battles, winning wars
 
5 Things CFOs Need to Know About Enterprise Security - HP CFO Summit 2013
5 Things CFOs Need to Know About Enterprise Security - HP CFO Summit 20135 Things CFOs Need to Know About Enterprise Security - HP CFO Summit 2013
5 Things CFOs Need to Know About Enterprise Security - HP CFO Summit 2013
 
Operationalizing Security Intelligence [ InfoSec World 2014 ]
Operationalizing Security Intelligence [ InfoSec World 2014 ]Operationalizing Security Intelligence [ InfoSec World 2014 ]
Operationalizing Security Intelligence [ InfoSec World 2014 ]
 
Operationalizing security intelligence for the mid market - Rafal Los - RSA C...
Operationalizing security intelligence for the mid market - Rafal Los - RSA C...Operationalizing security intelligence for the mid market - Rafal Los - RSA C...
Operationalizing security intelligence for the mid market - Rafal Los - RSA C...
 
Rebooting the Enterprise Security Program for Defensibility - ISSA Internatio...
Rebooting the Enterprise Security Program for Defensibility - ISSA Internatio...Rebooting the Enterprise Security Program for Defensibility - ISSA Internatio...
Rebooting the Enterprise Security Program for Defensibility - ISSA Internatio...
 
Cloud Security Alliance- Challanges of an elastic environment v8a [public]
Cloud Security Alliance- Challanges of an elastic environment v8a [public]Cloud Security Alliance- Challanges of an elastic environment v8a [public]
Cloud Security Alliance- Challanges of an elastic environment v8a [public]
 
Threat modeling the security of the enterprise
Threat modeling the security of the enterpriseThreat modeling the security of the enterprise
Threat modeling the security of the enterprise
 
Making Measurable Gains - Contextualizing 'Secure' in Business
Making Measurable Gains - Contextualizing 'Secure' in BusinessMaking Measurable Gains - Contextualizing 'Secure' in Business
Making Measurable Gains - Contextualizing 'Secure' in Business
 
Security BSides Atlanta - "The Business Doesn't Care..."
Security BSides Atlanta - "The Business Doesn't Care..."Security BSides Atlanta - "The Business Doesn't Care..."
Security BSides Atlanta - "The Business Doesn't Care..."
 
Software Security Assurance - Program Building (You're going to need a bigger...
Software Security Assurance - Program Building (You're going to need a bigger...Software Security Assurance - Program Building (You're going to need a bigger...
Software Security Assurance - Program Building (You're going to need a bigger...
 
The Future of Software Security Assurance
The Future of Software Security AssuranceThe Future of Software Security Assurance
The Future of Software Security Assurance
 
Ultimate Hack! Layers 8 & 9 of the OSI Model
Ultimate Hack! Layers 8 & 9 of the OSI ModelUltimate Hack! Layers 8 & 9 of the OSI Model
Ultimate Hack! Layers 8 & 9 of the OSI Model
 
Into the Rabbithole - Evolved Web App Security Testing (OWASP AppSec DC)
Into the Rabbithole - Evolved Web App Security Testing (OWASP AppSec DC)Into the Rabbithole - Evolved Web App Security Testing (OWASP AppSec DC)
Into the Rabbithole - Evolved Web App Security Testing (OWASP AppSec DC)
 
Oh No They Didn't! 7 Web App Security Stories (v1.0)
Oh No They Didn't! 7 Web App Security Stories (v1.0)Oh No They Didn't! 7 Web App Security Stories (v1.0)
Oh No They Didn't! 7 Web App Security Stories (v1.0)
 

Dernier

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 

Dernier (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 

Defying Logic - Business Logic Testing with Automation

  • 1. Defying Logic Theory, Design, and Implementation of Complex Systems for Testing Application Logic Rafal Los & Prajakta Jagdale – HP Application Security
  • 2. Act 1 – The Pledge FOUNDATIONS
  • 3. LET’S TALK ABOUT LOGIC …FOLLOW THE RABBIT.
  • 4. Define: Application Logic Just what is ―application logic‖? ―Design components of a program, including the sequencing of steps prescriptive for how to execute intended business processes in a piece of software‖
  • 5. Logic Primer A business process, ordering Log In Select Add Verify Restaurant Items Order Log Out Loyalty Transaction Add (quit) Points Success Payment
  • 6. Logic Primer A broken business process? Log In Select Add Verify Restaurant Items Order Log Out Transaction Loyalty Add (quit) Success Points Payment
  • 7. Logic Primer Can we manipulate intended process? Log In Select Add Verify Restaurant Items Order Log Out Transaction Loyalty Add (quit) Success Points Payment
  • 8. Logic Primer In this simple example: Manipulate a business process Early loyalty points without paying – Points = fraud (free stuff!) – Free meals = financial lo$$ to vendor Business process manipulated = theft, fraud, financial loss
  • 9. Define: Logic Defect A defect that exposes the component business processes (or execution flows) to manipulation from the attacker perspective to achieve unintended and undesirable consequences from the design perspective; without disrupting the general function or continuity of the application.
  • 10. New Classifications How is this different than existing classifications? – OWASP Top 10 – WASC Threat Classification v2 – MITRE CWE Top 25 Best “fit” A fundamentally different way of looking at software vulnerabilities.
  • 11. Building Onto CWE – MITRE CWE Top 25 ―Classification of business-logic weaknesses is worth deeper investigation by researchers. While business logic rules are domain-specific, there may be some domain-independent patterns to them. We are likely to find new wrinkles to old problems, and maybe some new problems that will be easier to find once we know what to call them.‖ –Steven Christey (MITRE)
  • 12. ―Taxonomy‖ 2 Types of logic-based defects • Privilege manipulation • Transaction control manipulation
  • 13. Privilege Manipulation Flaw based on broken or incomplete authentication/authorization mechanism • Horizontal/vertical privilege escalation • Access unauthorized content • Perform privileged system functions
  • 14. Privilege Manipulation <input type="text" name="username" size="30" tabindex="100" value=―Wh1t3Rabbit" id="username― Role=―user”> <input type="text" name="username" size="30" tabindex="100" value=―Wh1t3Rabbit" id="username― Role=―admin‖>
  • 15. Transaction Control Manipulation Flaw based on broken business process continuity allowing for manipulation of intended business process/flow • Circumvent system limitations • Tamper with application flow • Manipulate business resources
  • 16. Transaction Control Manipulation I want MORE than 10 tickets!
  • 17. Transaction Control Manipulation
  • 18. Transaction Control Manipulation
  • 19. Manipulating ―Logic‖ The server should control the logic of the application. In this case, the server should know 30 is not a valid number …right?! ………………………..Nope.
  • 20. To Be Clear The key point to remember: This research seeks to better enable the tester through automation. We are addressing ‗designed processes‘ We are not addressing ‗back-end business process‘ (non-visible)
  • 21. Starting a Wave FEW previously given talks or papers on logic vulnerabilities – Ideas  talks  papers  experiements? – A more tangible/usable effort is needed NO existing R&D effort by a vendor in this space as far as we could tell — proprietary or open source
  • 22. Lots of Talking… ―So why aren‘t there any readily available, even semi-mature tools or frameworks for testing application logic?‖
  • 23. Act 2 – The Turn APPLICATION LOGIC VS. AUTOMATION
  • 24. Logic vs. Automation Application Logic Automation  hard to define! o pattern-dependent  domain-specific o programmatic  Industry o scale is in  Business process repeatability  not pattern-based o no concept of  not easy to ‗RegEx‘ process
  • 25. Challenges For humans For technology • understand the • map the application application processes – Business processes – simple, flexible maps – ‗Application flow‘ • identify control logic • drive automation – critical parameters – work with technology • differentiate test • document & repeat success or failure
  • 26. Application Logic Application ―logic‖ is tricky… – found on the server side – found in the client ―cache‖ (offline use?) – no consistent patterns to match/test • Remember the AT&T/iPad email hack? – logic implies human thought required
  • 27. Simple Logic Simplest logic block example… If <expression> Then do something ElseIf <expression> Then do something Else do something else End If
  • 28. Challenges Bridging a vast disconnect Client (browser) App Server DOM IF (var1 = A) { var1=A do IsUser; } var2=B ELSEIF (var1 = B) var3=1 { var4=@b do IsAdmin; } var5= ENDIF
  • 29. Challenges How to overcome random ―fuzzing‖ • identify var1 as a critical parameter – Human or automation-driven • manipulate var1 – human or technology driven – ―fuzzing‖ or data-set driven Technology enables scalability & repeatability
  • 30. Future State  Fantasy • Point ‗n‘ shoot application logic testing – This was never a good strategy anyway* • Dynamic testing tool ‗learns‘ business processes, logic flow and thinks – I‘ve seen this movie before …‖SkyNet?‖ • Security continues to operate independent of business
  • 31. Future State  Reality • Logic testing enabled through automation – Base logic mapping on QA methodology – Continue to evolve combined functional, exploratory & security testing • Technology allows repeatable testing throughout application after initial setup
  • 32. This Has Been Coming • Initially I talked about mapping application execution flow… • Dynamic testing technology matured • Static testing technology matured • New ―hybrid‖ technology gives even greater insight into application function
  • 33. Act 3 – The Prestige BUILDING TEST FRAMEWORKS
  • 34. Overview Test framework will constitute 3 phases I. Capturing the assumed application behavior II. Manipulation of the workflows to evoke (un)expected behavior patterns III. Analyzing the results of the workflow manipulations to detect non-conformance with defined business processes
  • 35. 3 Step Process • Model the business process – create valid workflows • Manipulate application workflow – ‗fuzzing logic‘ • Analyze the results – Were we successful in evoking a non- standard response?
  • 36. Modeling the Business Processes • Purpose: Discover business processes that define the application workflow • Challenge: Application workflow specifications are rarely documented and are often unknown to the testers • Solution: Passively monitor & record normal user behavior through the application
  • 37. Modeling the Business Processes Proposed Approach Devise a mechanism to: – Capture permissible user actions – Store the state of the application before and after the invocation of each user event – Record expected transitions between application states
  • 38. Manipulating the Application Workflow • Purpose: Induce deviations in the application behavior that do not conform with the assumed business rules • Challenge: Meaningfully manipulating application‘s behavior with minimal knowledge about its purpose & context • Solution: Apply pre-defined modifications to the state identifiers and state transactions recorded in phase I
  • 39. Manipulating the Application Workflow Proposed Approach Discover logic defects by: – Modifying the state of the application before passing it as an input to a transaction – Fuzz the sequence of user actions captured during the phase I to detect bugs in transaction control
  • 40. Analyzing the Results • Purpose: Determine the success of workflow manipulation • Challenge: Measuring the deviation in application behavior with minimal understanding of application context • Solution: Apply comparison metrics to infer deviations in the application workflows
  • 41. Analyzing the Results Proposed approach – Measure the impact of workflow manipulations on the application state • compare state identifiers (e.g. system variables, page DOM) in the tainted workflow with the original – Apply pre-defined set of rules to detect violations of the business rules governing the application flow • E.g. An acceptable application end state can be reached despite inaccuracies in one or more intermediate states of the workflow
  • 42. DEMO! a rough idea of how this could work one day
  • 43. Work In Progress If you are interested in discussing, contributing, or expanding this research in any way – contact us.