This site is the archived OWASP Foundation Wiki and is no longer accepting Account Requests.
To view the new OWASP Foundation website, please visit https://owasp.org
Difference between revisions of "OWASP Reverse Engineering and Code Modification Prevention Project"
From OWASP
Line 6: | Line 6: | ||
| valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | | ||
− | == | + | ==Project Description== |
+ | |||
+ | This project educates security professionals about the risks of reverse engineering and how to ensure that code cannot be reverse engineered or modified. If you are placing sensitive code in an environment in which an attacker can get physical access to that environment (read: mobile, desktops, cloud, particular geographies), you should be concerned with the risks of reverse engineering or unauthorized code modification. This umbrella project will help you understand the risks and how to mitigate them. | ||
+ | |||
+ | ==A Brief History of This Problem Space== | ||
Historically, organizations offered their customers web applications that exposed an interface to some necessary business services. The services expose high-value functionality that allows an organization to deliver value to its clients. Attackers had a specific set of threats or goals that they realized by exploiting vulnerabilities that the organization exposed through the application’s presentation layer. Security practitioners address these specific sets of vulnerabilities through the web application or the associated infrastructure security disciplines. | Historically, organizations offered their customers web applications that exposed an interface to some necessary business services. The services expose high-value functionality that allows an organization to deliver value to its clients. Attackers had a specific set of threats or goals that they realized by exploiting vulnerabilities that the organization exposed through the application’s presentation layer. Security practitioners address these specific sets of vulnerabilities through the web application or the associated infrastructure security disciplines. | ||
Line 18: | Line 22: | ||
With the recent move towards mobile applications, an attacker can now see, touch, and directly modify a lot of the application’s presentation and business layer code within the attacker’s mobile computing environment. This capability allows the attacker to realize the same traditional business threats as before (with web applications) but in genuinely new and unconventional ways. | With the recent move towards mobile applications, an attacker can now see, touch, and directly modify a lot of the application’s presentation and business layer code within the attacker’s mobile computing environment. This capability allows the attacker to realize the same traditional business threats as before (with web applications) but in genuinely new and unconventional ways. | ||
− | == | + | ==Licensing== |
− | + | Any documentation or educational material associated with this project is free to use. It is licensed under the http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 license], so you can copy, distribute and transmit the work, and you can adapt it, and use it commercially, but all provided that you attribute the work and if you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one. | |
− | == | + | | valign="top" style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" | |
− | |||
+ | == What is this project all about? == | ||
− | + | Prevent an attacker from reverse engineering your code or making unauthorized changes to that code. The following audiences get something from this project: | |
− | + | * ''Risk Specialists'' - Understand the business and technical risks that an attacker will deploy in order to reverse engineer or modify your code in unsafe environments; | |
− | + | * ''Security Architects'' - Understand the architectural features that should be embedded into code to prevent an attacker from reverse engineering or modifying your code; | |
− | * | + | * ''Penetration Testers'' - Learn how to conduct binary attacks against mobile apps understand threats that can be realized against various different platforms. You'll have a better understanding of useful attack vectors to verify the strength of reverse engineering prevention or unauthorized code modification; |
− | |||
+ | * ''Software Engineers'' - Learn things that you can do to make reverse engineering as painful as possible for someone that is interested in reverse-engineering your code. | ||
== Presentation == | == Presentation == | ||
− | + | Currently, there are no presentations associated with this project. Over time, I will be presenting various technical discussions that relate to reverse engineering prevention or integrity violation at OWASP events. Those presentations will be highlighted here. | |
− | |||
− | |||
Line 51: | Line 53: | ||
== Related Projects == | == Related Projects == | ||
− | * [[ | + | This project is associated with |
− | + | * [[OWASP_Mobile_Security_Project]] | |
+ | * [[OWASP_AppSensor_Project]] | ||
Revision as of 00:06, 7 January 2014