19.08.2015 Views

4.0

1IZ1TDd

1IZ1TDd

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

185Web Application Penetration Testingcredit system to ensure that the proper points/credits wererecorded.Testing Method 2• On a content management or bulletin board system enter andsave valid initial text or values.• Then try to append, edit and remove data that would leave theexisting data in an invalid state or with invalid values to ensurethat the user is not allowed to save the incorrect information.Some “invalid” data or information may be specific words(profanity) or specific topics (such as political issues).Related Test Cases• Testing Directory traversal/file include (OTG-AUTHZ-001)• Testing for bypassing authorization schema (OTG-AUTHZ-002)• Testing for Bypassing Session Management Schema(OTGSESS-001)• Test Business Logic Data Validation (OTG-BUSLOGIC-001)• Test Ability to Forge Requests (OTG-BUSLOGIC-002)• Test Integrity Checks (OTG-BUSLOGIC-003)• Test for Process Timing (OTG-BUSLOGIC-004)• Test Number of Times a Function Can be Used Limits(OTG-BUSLOGIC-005)• Test Defenses Against Application Mis-use(OTG-BUSLOGIC-007)• Test Upload of Unexpected File Types (OTG-BUSLOGIC-008)• Test Upload of Malicious Files (OTG-BUSLOGIC-009)References• OWASP Detail Misuse Cases - https://www.owasp.org/indexphp/Detail_misuse_cases• Real-Life Example of a ‘Business Logic Defect - http://h30501www3.hp.com/t5/Following-the-White-Rabbit-A/Real-Life-Example-of-a-Business-Logic-Defect-Screen-Shots/bap/22581• Top 10 Business Logic Attack Vectors Attacking and ExploitingBusiness Application Assets and Flaws – Vulnerability Detectionto Fix - http://www.ntobjectives.com/go/business-logicattack-vectors-white-paper/and http://www.ntobjectives.com/files/Business_Logic_White_Paper.pdf• CWE-840: Business Logic Errors - http://cwe.mitre.org/datadefinitions/840.htmlRemediationThe application must be self-aware and have checks in place ensuringthat the users complete each step in the work flow processin the correct order and prevent attackers from circumventing/skipping/orrepeating any steps/processes in the workflow.Test for workflow vulnerabilities involves developing businesslogic abuse/misuse cases with the goal of successfully completingthe business process while not completing the correct stepsin the correct order.Test defenses against application mis-use(OTG-BUSLOGIC-007)SummaryThe misuse and invalid use of of valid functionality can identifyattacks attempting to enumerate the web application, identifyweaknesses, and exploit vulnerabilities. Tests should be undertakento determine whether there are application-layer defensivemechanisms in place to protect the application.The lack of active defenses allows an attacker to hunt for vulnerabilitieswithout any recourse. The application’s owner will thusnot know their application is under attack.ExampleAn authenticated user undertakes the following (unlikely) sequenceof actions:[1] Attempt to access a file ID their roles is not permitted todownload[2] Substitutes a single tick (‘) instead of the file ID number[3] Alters a GET request to a POST[4] Adds an extra parameter[5] Duplicates a parameter name/value pairThe application is monitoring for misuse and responds after the5th event with extremely high confidence the user is an attacker.For example the application:• Disables critical functionality• Enables additional authentication steps to the remainingfunctionality• Adds time-delays into every request-response cycle• Begins to record additional data about the user’s interactions(e.g. sanitized HTTP request headers, bodies and responsebodies)If the application does not respond in any way and the attackercan continue to abuse functionality and submit clearly maliciouscontent at the application, the application has failed thistest case. In practice the discrete example actions in the exampleabove are unlikely to occur like that. It is much more probable thata fuzzing tool is used to identify weaknesses in each parameterin turn. This is what a security tester will have undertaken too.How to TestThis test is unusual in that the result can be drawn from all theother tests performed against the web application. While performingall the other tests, take note of measures that mightindicate the application has in-built self-defense:• Changed responses• Blocked requests• Actions that log a user out or lock their account

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!