Assume attackers have source code
[http://s1.shard.jp/galeach/new10.html oppose euthanasia ] [http://s1.shard.jp/olharder/agencias-auto.html online auctions ebay auto auction ] [http://s1.shard.jp/olharder/auto-reply-business.html auto serve nh ] [http://s1.shard.jp/losaul/atlas-of-australian.html australian shepherd rescue canada ] [http://s1.shard.jp/losaul/australian-momentum.html australian open tournament prize money ] [http://s1.shard.jp/olharder/kragen-auto.html automated meter reading plc ] [http://s1.shard.jp/olharder/j-b-auto-salvage.html auto freight shipping ] [http://s1.shard.jp/losaul/nlp-training.html australia federation in ] pickaasian.com [http://s1.shard.jp/galeach/new4.html asian pacific islander history ] [http://s1.shard.jp/olharder/autoimmune-hashimotos.html auto auto store store zone zone ] [http://s1.shard.jp/losaul/australian-music.html southern cross broadcasting australia ] [http://s1.shard.jp/olharder/auto-a-vendre.html 3 auto cheat cheat grand in planet theft ] coastlines of australia [http://s1.shard.jp/olharder/arena-auto-auction.html technical automotive group ] [http://s1.shard.jp/frhorton/wfr85id85.html african spur thigh tortise ] avast avg antivirus [http://s1.shard.jp/frhorton/yvqavqw7n.html timeshare south africa ] [http://s1.shard.jp/olharder/autoritatea-nationala.html automotive cross number part reference ] [http://s1.shard.jp/galeach/new114.html asian massage male ] [http://s1.shard.jp/bireba/avg-vs-avast.html computer associates antivirus download ] [http://s1.shard.jp/galeach/new21.html south asia world tv ] [http://s1.shard.jp/olharder/automatic-direction.html grand theft auto san andraes cheats for ps2 ] domain [http://s1.shard.jp/losaul/professionals.html australia visitors bureau ] [http://s1.shard.jp/bireba/how-to-activate.html pc penicillin antivirus ] map africas allied food site south union web worker [http://s1.shard.jp/bireba/manually-updating.html symantec antivirus communications layer failed to initialize ] [http://s1.shard.jp/galeach/new193.html mature asian women dao ] auto calculator comparison loan [http://s1.shard.jp/bireba/uninstall-norton.html how to uninstall norton antivirus 2005 ] [http://s1.shard.jp/galeach/new82.html asian free girl thumb ] [http://s1.shard.jp/olharder/autonomy-principal.html autoloc power antenna instructions ] [http://s1.shard.jp/galeach/new195.html no mans land asian edition ] [http://s1.shard.jp/galeach/new84.html asian gold ] [http://s1.shard.jp/bireba/download-free.html uninstall norton antivirus corporate ] [http://s1.shard.jp/losaul/map.html australia extreme korg triton ] [http://s1.shard.jp/frhorton/fhojtfuuj.html american consolate south africa ] [http://s1.shard.jp/galeach/new63.html asia info southeast ] [http://s1.shard.jp/bireba/sonicwall-gateway.html avg antivirus comparison ] [http://s1.shard.jp/galeach/new152.html asian film actress ] [http://s1.shard.jp/galeach/new96.html uthinasia ] [http://s1.shard.jp/frhorton/9mxpl8xy1.html african fertility symbol ] [http://s1.shard.jp/losaul/steel-houses-australia.html australia gold coast maps ] [http://s1.shard.jp/losaul/car-importers-australia.html australian immigration and multicultural affairs ] [http://s1.shard.jp/bireba/antivirus-trials.html stinger antivirus tools ] map [http://s1.shard.jp/olharder/arabian-automobiles.html auto restore windows xp ]
This article has been recommended for deletion. You can help OWASP by improving it or discussing it on its Talk page.
This is a principle or a set of principles. To view all principles, please see the Principle Category page.
Secrecy of source code and other implementation details is a very weak approach to security. In fact, the secrecy of your source code is probably not nearly as good as you think. So build your applications considering that an attacker has a copy of the source code. There is no reason that having the source code makes a secure system impossible.
In most organizations, the source code for applications is stored in a Source Code Control System designed for integrity, not secrecy.
Think who has access to the code and where it might have been stored. There's likely to be a full copy of the source code on every developer's machine. They may have made backup copies in home directories or other storage. They may have taken a copy to work on at home (or possibly to reuse on other projects). The code is also probably stored on backup tapes.
The source code is also probably stored on compile servers and machines that are a part of the build process. The code (in compiled form) is also likely to have found its way to test machines, developer machines, staging servers, and also production. Compiled code is easy to reverse engineer, especially with bytecode-type languages like Java and .NET.
To say that many of these places are not as well protected as production environments is a serious understatement. So consider the threat (in your actual environment, not the way the standards say it is supposed to be) of an attacker being able to get a copy of the source code.
The good news is that having the source code shouldn't provide much of an advantage to an attacker, if you've build it with that in mind. The cryptographic community has followed this principle for decades, but many organizations cling to the notion that the secrecy of the code is critical to the security of their application.
NOTE: Some source code contains intellectual property, such as trade secret algorithms and other business processes. The secrecy of the source code is an important part of protecting this IP.
Short example name
- A short example description, small picture, or sample code with links