CWE-656 · Słabość
Reliance on Security Through Obscurity
- Abstrakcja
- Klasa
- Status
- Szkic
- Dodano
- 18 stycznia 2008
- Ostatnia zmiana
- 11 grudnia 2025
Opis
The product uses a protection mechanism whose strength depends heavily on its obscurity, such that knowledge of its algorithms or key data is sufficient to defeat the mechanism.
This reliance on "security through obscurity" can produce resultant weaknesses if an attacker is able to reverse engineer the inner workings of the mechanism. Note that obscurity can be one small part of defense in depth, since it can create more work for an attacker; however, it is a significant risk if used as the primary means of protection.
Inne nazwy
- Never Assuming your secrets are safe
Skutki
Confidentiality, Integrity, Availability, Other
Other
The security mechanism can be bypassed easily.
Zapobieganie
Architecture and Design
Always consider whether knowledge of your code or design is sufficient to break it. Reverse engineering is a highly successful discipline, and financially feasible for motivated adversaries. Black-box techniques are established for binary analysis of executables that use obfuscation, runtime analysis of proprietary protocols, inferring file formats, and others.
Architecture and Design
When available, use publicly-vetted algorithms and procedures, as these are more likely to undergo more extensive security analysis and testing. This is especially the case with encryption and authentication.
Przykłady podatności
- CVE-2006-6588 Reliance on hidden form fields in a web application. Many web application vulnerabilities exist because the developer did not consider that "hidden" form fields can be processed using a modified client.
- CVE-2006-7142 Hard-coded cryptographic key stored in executable program.
- CVE-2005-4002 Hard-coded cryptographic key stored in executable program.
- CVE-2006-4068 Hard-coded hashed values for username and password contained in client-side script, allowing brute-force offline attacks.
Słabość nadrzędna
Może prowadzić do
Kiedy powstaje
- Architecture and Design
- Implementation — REALIZATION: This weakness is caused during implementation of an architectural security tactic.
Dotyczy
Not Language-Specific, Not Technology-Specific
Uwagi
Note that there is a close relationship between this weakness and CWE-603 (Use of Client-Side Authentication). If developers do not believe that a user can reverse engineer a client, then they are more likely to choose client-side authentication in the belief that it is safe.
Źródła
- The Protection of Information in Computer Systems — Jerome H. Saltzer, Michael D. Schroeder, Proceedings of the IEEE 63, 1975
- Never Assuming that Your Secrets Are Safe — Sean Barnum, Michael Gegick, 2005
- RFC: 793, TRANSMISSION CONTROL PROTOCOL — Jon Postel, Editor, Information Sciences Institute, 1981
Wpis z katalogu CWE 4.20.