Modes Of Introduction
Implementation : REALIZATION: This weakness is caused during implementation of an architectural security tactic.
Piattaforme applicabili
Linguaggio
Class: Not Language-Specific (Undetermined)
Conseguenze comuni
| Ambito |
Impatto |
Probabilità |
| Other | Alter Execution Logic
Note: An attacker could cause the product to skip critical steps or perform them in the wrong order, bypassing its intended business logic. This can sometimes have security implications. | |
Esempi osservati
| Riferimenti |
Descrizione |
| Bypass of access/billing restrictions by sending traffic to an unrestricted destination before sending to a restricted destination. |
| Attacker can access portions of a restricted page by canceling out of a dialog. |
| Ticket-tracking system does not enforce a permission setting. |
| Shopping cart does not close a database connection when user restores a previous order, leading to connection exhaustion. |
| Chain: product does not properly handle dropped connections, leading to missing NULL terminator (CWE-170) and segmentation fault. |
| Chain: Authentication bypass by skipping the first startup step as required by the protocol. |
| Chain: File server crashes when sent a "find next" request without an initial "find first." |
| FTP server allows remote attackers to bypass authentication by sending (1) LIST, (2) RETR, (3) STOR, or other commands without performing the required login steps first. |
| FTP server allows remote attackers to list arbitrary directories as root by running the LIST command before logging in. |
Detection Methods
Automated Static Analysis
Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.)
Note sulla mappatura delle vulnerabilità
Giustificazione : This CWE entry is at the Base level of abstraction, which is a preferred level of abstraction for mapping to the root causes of vulnerabilities.
Commento : Carefully read both the name and description to ensure that this mapping is an appropriate fit. Do not try to 'force' a mapping to a lower-level Base/Variant simply to comply with this preferred level of abstraction.
Note
Riferimenti
REF-795
Business Logic Flaws and Yahoo Games
Jeremiah Grossman.
https://blog.jeremiahgrossman.com/2006/12/business-logic-flaws.html REF-796
Seven Business Logic Flaws That Put Your Website At Risk
Jeremiah Grossman.
https://docplayer.net/10021793-Seven-business-logic-flaws-that-put-your-website-at-risk.html REF-797
Business Logic Flaws
WhiteHat Security.
https://web.archive.org/web/20080720171327/http://www.whitehatsec.com/home/solutions/BL_auction.html REF-806
Insufficient Process Validation
WASC.
http://projects.webappsec.org/w/page/13246943/Insufficient-Process-Validation REF-799
Defying Logic: Theory, Design, and Implementation of Complex Systems for Testing Application Logic
Rafal Los, Prajakta Jagdale.
https://www.slideshare.net/RafalLos/defying-logic-business-logic-testing-with-automation REF-667
Real-Life Example of a 'Business Logic Defect' (Screen Shots!)
Rafal Los.
http://h30501.www3.hp.com/t5/Following-the-White-Rabbit-A/Real-Life-Example-of-a-Business-Logic-Defect-Screen-Shots/ba-p/22581 REF-801
Toward Automated Detection of Logic Vulnerabilities in Web Applications
Viktoria Felmetsger, Ludovico Cavedon, Christopher Kruegel, Giovanni Vigna.
https://www.usenix.org/legacy/events/sec10/tech/full_papers/Felmetsger.pdf REF-802
Designing a Framework Method for Secure Business Application Logic Integrity in e-Commerce Systems
Faisal Nabi.
http://ijns.femto.com.tw/contents/ijns-v12-n1/ijns-2011-v12-n1-p29-41.pdf
Invio
| Nome |
Organizzazione |
Data |
Data di rilascio |
Version |
| CWE Content Team |
MITRE |
2011-03-24 +00:00 |
2011-03-30 +00:00 |
1.12 |
Modifiche
| Nome |
Organizzazione |
Data |
Commento |
| CWE Content Team |
MITRE |
2011-06-01 +00:00 |
updated Common_Consequences |
| CWE Content Team |
MITRE |
2011-06-27 +00:00 |
updated Common_Consequences, Observed_Examples, Related_Attack_Patterns, Relationships |
| CWE Content Team |
MITRE |
2012-05-11 +00:00 |
updated Demonstrative_Examples, Observed_Examples, Relationships |
| CWE Content Team |
MITRE |
2017-11-08 +00:00 |
updated Modes_of_Introduction, References, Relationships |
| CWE Content Team |
MITRE |
2020-02-24 +00:00 |
updated Relationships |
| CWE Content Team |
MITRE |
2021-10-28 +00:00 |
updated Relationships |
| CWE Content Team |
MITRE |
2022-04-28 +00:00 |
updated Demonstrative_Examples |
| CWE Content Team |
MITRE |
2023-01-31 +00:00 |
updated Common_Consequences, Description |
| CWE Content Team |
MITRE |
2023-04-27 +00:00 |
updated References, Relationships |
| CWE Content Team |
MITRE |
2023-06-29 +00:00 |
updated Mapping_Notes |
| CWE Content Team |
MITRE |
2025-12-11 +00:00 |
updated Applicable_Platforms, Detection_Factors, Relationships, Type, Weakness_Ordinalities |