|
|
(97 intermediate revisions by 9 users not shown) |
Line 1: |
Line 1: |
− | = Home = | + | =Main= |
− | <div style="width:100%;height:90px;border:0,margin:0;overflow: hidden;">[[File: lab_big.jpg|link=OWASP_Project_Stages#tab.3DLab_Projects]]</div>
| |
− | | |
| {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- | | {| style="padding: 0;margin:0;margin-top:10px;text-align:left;" |- |
− | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | | + | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" | |
| | | |
| == OWASP Mobile Security Project == | | == OWASP Mobile Security Project == |
| [[File:OWASP_Mobile_Logo_Milan.PNG|center ]] | | [[File:OWASP_Mobile_Logo_Milan.PNG|center ]] |
| | | |
− | [https://www.owasp.org/index.php/OWASP_Mobile_Security_Project#tab=Guide_Development_Project New*- Mobile AppSec Guide Development Project]
| |
| | | |
− | The OWASP Mobile Security Project is a centralized resource intended to give developers and security teams the resources they need to build and maintain secure mobile applications. Through the project, our goal is to classify mobile security risks and provide developmental controls to reduce their impact or likelihood of exploitation. | + | == Maintenance notice == |
| + | |
| + | This site is no longer maintained: please go to https://www2.owasp.org/www-project-mobile-security/ for our new website! |
| + | |
| + | |
| + | The OWASP Mobile Security Project is a centralized resource intended to give developers and security teams the resources they need to build and maintain secure mobile applications. Through the project, our goal is to classify mobile security risks and provide developmental controls to reduce their impact or likelihood of exploitation. |
| + | The project is a breading ground for many different mobile security projects within OWASP. Right now, you can find the following active OWASP mobile security projects: |
| + | {| class="wikitable" |
| + | !Project/deliverable |
| + | !More info: |
| + | !Description: |
| + | !Current leaders |
| + | |- |
| + | |Mobile Top Ten |
| + | |[https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_-_Top_Ten_Mobile_Risks Project Page] |
| + | |The OWASP Mobile Security top 10 is created to raise awareness for the current mobile security issues. |
| + | | |
| + | * [mailto:jason.haddix@owasp.org Jason Haddix - HP Fortify] |
| + | * [mailto:daniel.meissler@owasp.org Daniel Miessler - HP Fortify] |
| + | * [mailto:jonthan.carter@owasp.org Jonathan Carter - Arxan Technologies] |
| + | *[mailto:milan@owasp.org Milan Singh Thakur] |
| + | |- |
| + | |Mobile Security Testing Guide |
| + | |[[OWASP Mobile Security Testing Guide|Project Page]] |
| + | |A comprehensive manual for mobile app security testing and reverse engineering for iOS and Android mobile security testers as well as developers. |
| + | | |
| + | * [mailto:sven.schleier@owasp.org Sven Schleier] |
| + | * [mailto:jeroen.willemsen@owasp.org Jeroen Willemsen] |
| + | * [mailto:carlos.holguera@owasp.org Carlos Holguera] |
| + | |- |
| + | |Mobile Application Security Verification Standard |
| + | |[[OWASP Mobile Security Testing Guide|Project Page]] |
| + | |A standard for mobile app security which outlines the security requirements of a mobile application. |
| + | | |
| + | * [mailto:sven.schleier@owasp.org Sven Schleier] |
| + | * [mailto:jeroen.willemsen@owasp.org Jeroen Willemsen] |
| + | * [mailto:carlos.holguera@owasp.org Carlos Holguera] |
| + | |- |
| + | |Mobile Security Checklist |
| + | |[[OWASP Mobile Security Testing Guide|Project Page]] |
| + | |A checklist which allows easy mapping and scoring of the requirements from the Mobile Application Security Verification Standard based on the Mobile Security Testing Guide. |
| + | | |
| + | * [mailto:sven.schleier@owasp.org Sven Schleier] |
| + | * [mailto:jeroen.willemsen@owasp.org Jeroen Willemsen] |
| + | * [mailto:carlos.holguera@owasp.org Carlos Holguera] |
| + | |- |
| + | |iGoat Tool Project |
| + | |[[OWASP iGoat Project|Project Page]] |
| + | |A learning tool for iOS developers (iPhone, iPad, etc.). It was inspired by the WebGoat project, and has a similar conceptual flow to it. |
| + | | |
| + | * [mailto:swaroop.yermalkar@owasp.org Swaroop Yermalkar] |
| + | |- |
| + | |Damn Vulnerable iOS Application |
| + | |[[OWASP DVIA|Project Page]] |
| + | |An iOS application that is damn vulnerable. Its main goal is to provide a platform to mobile security enthusiasts/professionals or students to test their iOS penetration testing skills in a legal environment. |
| + | | |
| + | * [https://twitter.com/prateekg147 Prateek Gianchandani] |
| + | |- |
| + | |Android CK project |
| + | |[[Projects/OWASP Androick Project|Project Page]] |
| + | |A python tool to help in forensics analysis on android. |
| + | | |
| + | * [https://twitter.com/phonesec Florian Pradines] |
| + | |- |
| + | |Seraphimdroid |
| + | |[[OWASP SeraphimDroid Project|Project Page]] |
| + | |A privacy and security protection app for Android devices. |
| + | | |
| + | * [mailto:nikola.milosevic@owasp.org Nikola Milosevic] |
| + | * [mailto:kartik.kholi@owasp.org Kartik Kholi] |
| + | |
| + | |} |
| + | |
| + | Not what you are looking for? Please have a look at the '''[https://www.owasp.org/index.php/Mobile_Security_Project_Archive Mobile Security Page Archive]''' |
| + | |
| + | Want to start a new mobile security project? Follow https://www.owasp.org/index.php/Category:OWASP_Project#Starting_a_New_Project or contact one of the leaders of the active projects. |
| + | |
| + | <!-- DO NOT ALTER OR REMOVE THE TEXT ON NEXT LINE -->| valign="top" style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" | |
| + | |
| + | == Active OWASP mobile projects == |
| + | * [[OWASP Mobile Security Testing Guide|OWASP Mobile Security Testing Guide]] |
| + | * [[OWASP Mobile Security Testing Guide|OWASP Mobile Application Security Verification Standard]] |
| + | * [[OWASP iGoat Tool Project]] |
| + | * [[OWASP DVIA|Damn Vulnerable iOS Application]] |
| + | * [[Projects/OWASP Androick Project|AndroidCK project]] |
| + | * [[OWASP SeraphimDroid Project|OWASP SeraphimDroid]] |
| + | |
| + | |} |
| + | |
| + | = Top 10 Mobile Risks = |
| + | |
| + | Please visit the [[OWASP Mobile Top 10|project page]] for current information. |
| + | |
| + | == About this list == |
| + | In 2015, we performed a survey and initiated a Call for Data submission Globally . This helped us to analyze and re-categorize the OWASP Mobile Top Ten for 2016. So the top ten categories are now more focused on Mobile application rather than Server. |
| + | |
| + | Our goals for the 2016 list included the following: |
| + | |
| + | * Updates to the wiki content; including cross-linking to testing guides, more visual exercises, etc; |
| + | * Generation of more data; and |
| + | * A PDF release. |
| + | |
| + | This list has been finalized after a 90-day feedback period from the community. Based on feedback, we have released a Mobile Top Ten 2016 list following a similar approach of collecting data, grouping the data in logical and consistent ways. |
| + | |
| + | Feel free to visit [https://groups.google.com/a/owasp.org/forum/#!forum/owasp-mobile-top-10-risks the mailing list] as well! |
| + | |
| + | == Top 10 Mobile Risks - Final List 2016 == |
| + | *[[Mobile_Top_10_2016-M1-Improper_Platform_Usage|M1: Improper Platform Usage]] |
| + | *[[Mobile_Top_10_2016-M2-Insecure_Data_Storage|M2: Insecure Data Storage]] |
| + | *[[Mobile_Top_10_2016-M3-Insecure_Communication|M3: Insecure Communication]] |
| + | *[[Mobile_Top_10_2016-M4-Insecure_Authentication|M4: Insecure Authentication]] |
| + | *[[Mobile_Top_10_2016-M5-Insufficient_Cryptography|M5: Insufficient Cryptography]] |
| + | *[[Mobile_Top_10_2016-M6-Insecure_Authorization|M6: Insecure Authorization]] |
| + | *[[Mobile_Top_10_2016-M7-Poor_Code_Quality|M7: Client Code Quality]] |
| + | *[[Mobile_Top_10_2016-M8-Code_Tampering|M8: Code Tampering]] |
| + | *[[Mobile_Top_10_2016-M9-Reverse_Engineering|M9: Reverse Engineering]] |
| + | *[[Mobile_Top_10_2016-M10-Extraneous_Functionality|M10: Extraneous Functionality]] |
| | | |
− | Our primary focus is at the application layer. While we take into consideration the underlying mobile platform and carrier inherent risks when threat modeling and building controls, we are targeting the areas that the average developer can make a difference. Additionally, we focus not only on the mobile applications deployed to end user devices, but also on the broader server-side infrastructure which the mobile apps communicate with. We focus heavily on the integration between the mobile application, remote authentication services, and cloud platform-specific features.
| + | == Top 10 Mobile Risks - Final List 2014 == |
| + | [[File:2014-01-26 20-23-29.png|right|550px]] |
| + | *[[Mobile_Top_10_2014-M1|M1: Weak Server Side Controls]] |
| + | *[[Mobile_Top_10_2014-M2|M2: Insecure Data Storage]] |
| + | *[[Mobile_Top_10_2014-M3|M3: Insufficient Transport Layer Protection]] |
| + | *[[Mobile_Top_10_2014-M4|M4: Unintended Data Leakage]] |
| + | *[[Mobile_Top_10_2014-M5|M5: Poor Authorization and Authentication]] |
| + | *[[Mobile_Top_10_2014-M6|M6: Broken Cryptography]] |
| + | *[[Mobile_Top_10_2014-M7|M7: Client Side Injection]] |
| + | *[[Mobile_Top_10_2014-M8|M8: Security Decisions Via Untrusted Inputs]] |
| + | *[[Mobile_Top_10_2014-M9|M9: Improper Session Handling]] |
| + | *[[Mobile_Top_10_2014-M10|M10: Lack of Binary Protections]] |
| | | |
− | <br/>
| + | == Project Methodology == |
| | | |
− | '''We have a Google Doc where anyone who wants to be involved with the project can add their thoughts, suggestions, and take ownership of initiatives - [https://docs.google.com/document/d/1bScrvrLJLOHcSbztjBxYoN-jN3kR8bViy9tF8Nx0c08/edit Click here]. There are various tasks that people have started over the past 6 months with varying levels of quality and completeness.''' | + | * '''We adhered loosely to the [https://www.owasp.org/index.php/Top_10_2013/ProjectMethodology OWASP Web Top Ten Project methodology]. ''' |
| | | |
− | This project is still a work in progress. We are small group doing this work and could use more help! If you are interested, please contact one of the project leads or feel free to visit [https://groups.google.com/a/owasp.org/forum/#!forum/owasp-mobile-top-10-risks the mailing list] as well!
| + | == Archive == |
| + | * The list below is the OLD release candidate v1.0 of the OWASP Top 10 Mobile Risks. This list was initially released on September 23, 2011 at Appsec USA. |
| + | ** The original presentation can be found here: [http://www.slideshare.net/JackMannino/owasp-top-10-mobile-risks SLIDES]<br> |
| + | ** The corresponding video can be found here: [http://www.youtube.com/watch?v=GRvegLOrgs0 VIDEO] |
| + | ** [[Mobile_Top_10_2012|2011-12 Mobile Top Ten for archive purposes]] |
| | | |
− | | valign="top" style="padding-left:25px;width:200px;border-right: 1px dotted gray;padding-right:25px;" |
| + | = Mobile Security Testing Guide = |
| | | |
− | == Email List ==
| + | Please see the [https://www.owasp.org/index.php/OWASP_Mobile_Security_Testing_Guide project page] for more details. |
| | | |
− | [[Image:Asvs-bulb.jpg]] [https://groups.google.com/a/owasp.org/forum/#!forum/owasp-mobile-top-10-risks Project Email List]
| + | =Acknowledgements = |
| | | |
| + | The OWASP Mobile Security project has a long history. It has been a source for many projects their predecessors as is clearly visible in [https://www.owasp.org/index.php/Mobile_Security_Project_Archive the archive]. |
| == Project Leaders == | | == Project Leaders == |
| {{Template:Contact | | {{Template:Contact |
| | name = Jonathan Carter | | | name = Jonathan Carter |
| | email = jonathan.carter@owasp.org | | | email = jonathan.carter@owasp.org |
− | }}<br/> | + | }}<br /> |
| + | {{Template:Contact |
| + | | name = Milan Singh Thakur |
| + | | email = milan@owasp.org |
| + | | username = Milan Singh Thakur |
| + | }}<br /> |
| + | |
| + | == Former Leaders == |
| {{Template:Contact | name = Mike Zusman | | {{Template:Contact | name = Mike Zusman |
| | email = mike.zusman@owasp.org | | | email = mike.zusman@owasp.org |
− | | username = schmoilito }}<br/> | + | | username = schmoilito }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Tony DeLaGrange | | | name = Tony DeLaGrange |
| | email = mobisec@secureideas.net | | | email = mobisec@secureideas.net |
| | username = Tony DeLaGrange | | | username = Tony DeLaGrange |
− | }}<br/> | + | }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Sarath Geethakumar | | | name = Sarath Geethakumar |
| | email = sarath.geethakumar@owasp.org | | | email = sarath.geethakumar@owasp.org |
| | username = Sarath Geethakumar | | | username = Sarath Geethakumar |
− | }}<br/> | + | }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Tom Eston | | | name = Tom Eston |
− | | email = teston@securestate.com | + | | email = teston@veracode.com |
− | }}<br/> | + | | username = Tom Eston |
| + | }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Don Williams | | | name = Don Williams |
− | }}<br/> | + | }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Jason Haddix | | | name = Jason Haddix |
| | email = jason.haddix@hp.com | | | email = jason.haddix@hp.com |
| | username = Jason Haddix | | | username = Jason Haddix |
− | }}<br/>
| + | }}<br /> |
− | {{Template:Contact
| |
− | | name = Milan Singh Thakur
| |
− | | email = milanthakur2010@gmail.com
| |
− | | username = Milan Singh Thakur
| |
− | }}<br/> | |
| | | |
| == Top Contributors == | | == Top Contributors == |
Line 67: |
Line 199: |
| | email = zach.lanier@n0where.org | | | email = zach.lanier@n0where.org |
| | username = Zach_Lanier | | | username = Zach_Lanier |
− | }}<br/>
| + | }}<br /> |
− | {{Template:Contact
| |
− | | name = Jim Manico
| |
− | | email = jim.manico@owasp.org
| |
− | | username = jmanico
| |
− | }}<br/> | |
| {{Template:Contact | | {{Template:Contact |
| | name = Ludovic Petit | | | name = Ludovic Petit |
| | email = ludovic.petit@owasp.org | | | email = ludovic.petit@owasp.org |
| | username = Ludovic Petit | | | username = Ludovic Petit |
− | }}<br/> | + | }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Swapnil Deshmukh | | | name = Swapnil Deshmukh |
| | email = sd.swapz@gmail.com | | | email = sd.swapz@gmail.com |
| | username = Swapnil Deshmukh | | | username = Swapnil Deshmukh |
− | }}<br/> | + | }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Beau Woods | | | name = Beau Woods |
| | email = owasp@beauwoods.com | | | email = owasp@beauwoods.com |
| | username = Beau Woods | | | username = Beau Woods |
− | }}<br/>
| + | }}<br /> |
− | {{Template:Contact
| |
− | | name = Jonathan Carter
| |
− | | email = jonathan.carter@owasp.org
| |
− | | username = Jonathan Carter
| |
− | }}<br/> | |
| {{Template:Contact | | {{Template:Contact |
| | name = David Martin Aaron | | | name = David Martin Aaron |
| | email = davidmartinaaron@gmail.com | | | email = davidmartinaaron@gmail.com |
| | username = David Martin Aaron | | | username = David Martin Aaron |
− | }}<br/> | + | }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Luca De Fulgentis | | | name = Luca De Fulgentis |
| | email = luca@securenetwork.it | | | email = luca@securenetwork.it |
| | username = Daath | | | username = Daath |
− | }}<br/> | + | }}<br /> |
| {{Template:Contact | | {{Template:Contact |
| | name = Andrew Pannell | | | name = Andrew Pannell |
| | email = andrew.pannell@owasp.org | | | email = andrew.pannell@owasp.org |
| | username = Andipannell | | | username = Andipannell |
− | }} | + | }}<br /> |
− | |}
| + | {{Template:Contact |
− | | + | | name = Stephanie V |
− | = Top 10 Mobile Risks =
| + | | email = vanroelens@gmail.com |
− | | + | | username = Stephanie V |
− | Please visit the [https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_-_Top_Ten_Mobile_Risks project page] for current information.
| + | }}<br /> |
− | | |
− | == About this list ==
| |
− | In 2013, we polled the industry for new vulnerability statistics in the field of mobile applications. What you see here is a result of that data and a representation of the mobile application threat landscape.
| |
− | | |
− | [[File:Mobile_Top_10_2014.png|right|640px]]
| |
− | Our goals for the 2014 list included the following:
| |
− | | |
− | * Updates to the wiki content; including cross-linking to testing guides, more visual exercises, etc;
| |
− | * Generation of more data; and
| |
− | * A PDF release.
| |
− | | |
− | This list has been finalized after a 90-day feedback period from the community. Based on feedback, we intend on releasing a Mobile Top Ten 2015 list following a similar approach of collecting data, grouping the data in logical and consistent ways.
| |
− | | |
− | Feel free to visit [https://groups.google.com/a/owasp.org/forum/#!forum/owasp-mobile-top-10-risks the mailing list] as well!
| |
− | | |
− | == Call to Action for 2015 ==
| |
− | We are currently looking for vendors, consultants, or other industry experts within the appsec community that are willing to participate in the OWASP Mobile Top Ten 2015. Participation could include any of the following: gathering data, promoting awareness, etc.
| |
− | | |
− | We have published a [https://docs.google.com/viewer?a=v&pid=forums&srcid=MTM2MzA3NTkyMzA4NjgxNjcwNjQBMTU5NDg1NTE3NTg0NTgyOTMzOTgBUmEtcUZEUFNUVzRKATAuMQFvd2FzcC5vcmcBdjI Call for Data document] and have also (in the name of transparency) [https://docs.google.com/spreadsheets/d/16bW_VhEIlFU4cfN8BOOk40-XN93FM0f0Sxcx67NwPcg/edit?usp=sharing published a document] which lists which entities/vendors/individuals/etc that we have reached out to. These requests were made because we know these entities to be thought leaders in the mobile application space. If we missed you, and you have data or feedback to contribute, we apologize. Please email one of us!
| |
− | | |
− | == Top 10 Mobile Risks - Final List 2014 ==
| |
− | [[File:2014-01-26 20-23-29.png|right|550px]]
| |
− | *[[Mobile_Top_10_2014-M1|M1: Weak Server Side Controls ]]
| |
− | *[[Mobile_Top_10_2014-M2|M2: Insecure Data Storage ]]
| |
− | *[[Mobile_Top_10_2014-M3|M3: Insufficient Transport Layer Protection ]]
| |
− | *[[Mobile_Top_10_2014-M4|M4: Unintended Data Leakage ]]
| |
− | *[[Mobile_Top_10_2014-M5|M5: Poor Authorization and Authentication ]]
| |
− | *[[Mobile_Top_10_2014-M6|M6: Broken Cryptography ]]
| |
− | *[[Mobile_Top_10_2014-M7|M7: Client Side Injection ]]
| |
− | *[[Mobile_Top_10_2014-M8|M8: Security Decisions Via Untrusted Inputs ]]
| |
− | *[[Mobile_Top_10_2014-M9|M9: Improper Session Handling ]]
| |
− | *[[Mobile_Top_10_2014-M10|M10: Lack of Binary Protections ]]
| |
− | | |
− | == Project Leads, Credit, and Contributions ==
| |
− | | |
− | * ''' [[Mobile_Top_Contributions|Mobile Top Ten Contributions Page ]] '''
| |
− | | |
− | == Project Methodology ==
| |
− | | |
− | * '''We adhered loosely to the [https://www.owasp.org/index.php/Top_10_2013/ProjectMethodology OWASP Web Top Ten Project methodology]. '''
| |
− | | |
− | == Archive ==
| |
− | * The list below is the OLD release candidate v1.0 of the OWASP Top 10 Mobile Risks. This list was initially released on September 23, 2011 at Appsec USA.
| |
− | ** The original presentation can be found here: [http://www.slideshare.net/JackMannino/owasp-top-10-mobile-risks SLIDES]<br>
| |
− | ** The corresponding video can be found here: [http://www.youtube.com/watch?v=GRvegLOrgs0 VIDEO]
| |
− | ** [[Mobile_Top_10_2012|2011-12 Mobile Top Ten for archive purposes]]
| |
− | | |
− | | |
− | = M-Tools =
| |
− | | |
− | | |
− | [[File:Reverse_Engineering_Arsenals.png]]
| |
− | | |
− | | |
− | [[File:IOS_Arsenal.png]]
| |
− | | |
− | | |
− | == iMAS ==
| |
− | | |
− | iMAS is a collaborative research project from the MITRE Corporation focused on open source iOS security controls. Today, iOS meets the enterprise security needs of customers, however many security experts cite critical vulnerabilities and have demonstrated exploits, which pushes enterprises to augment iOS deployments with commercial solutions. The iMAS intent is to protect iOS applications and data beyond the Apple provided security model and reduce the adversary’s ability and efficiency to perform recon, exploitation, control and execution on iOS mobile applications. iMAS will transform the effectiveness of the existing iOS security model across major vulnerability areas including the System Passcode, jailbreak, debugger / run-time, flash storage, and the system keychain. Research outcomes include an open source secure application framework, including an application container, developer and validation tools/techniques.
| |
− | | |
− | [https://www.owasp.org/index.php/OWASP_iMAS_iOS_Mobile_Application_Security_Project iMas Project Page]
| |
− | | |
− | The source code for iMAS is available on GitHub: [https://github.com/project-imas/about iMAS Source Code]
| |
− | | |
− | == GoatDroid ==
| |
− | | |
− | OWASP GoatDroid is a fully functional and self-contained training environment for educating developers and testers on Android security. GoatDroid requires minimal dependencies and is ideal for both Android beginners as well as more advanced users. The project currently includes two applications: FourGoats, a location-based social network, and Herd Financial, a mobile banking application. There are also several features that greatly simplify usage within a training environment or for absolute beginners who want a good introduction to working with the Android platform.
| |
− | | |
− | As the Android SDK introduces new features, the GoatDroid contributors will strive to implement up-to-date lessons that can educate developers and security testers on new security issues. The project currently provides coverage for most of the OWASP Top 10 Mobile Risks and also includes a bunch of other problems as well.
| |
− | | |
− | You can find GoatDroid on GitHub: [https://github.com/jackMannino/OWASP-GoatDroid-Project GoatDroid Source Code]
| |
− | | |
− | [https://www.owasp.org/index.php/Projects/OWASP_GoatDroid_Project GoatDroid Project Page]
| |
− | | |
− | == iGoat ==
| |
− | | |
− | iGoat is a learning tool for iOS developers (iPhone, iPad, etc.). It was inspired by the WebGoat project, and has a similar conceptual flow to it.
| |
− | | |
− | As such, iGoat is a safe environment where iOS developers can learn about the major security pitfalls they face as well as how to avoid them. It is made up of a series of lessons that each teach a single (but vital) security lesson.
| |
− | | |
− | The lessons are laid out in the following steps:
| |
− | | |
− | # Brief introduction to the problem.
| |
− | # Verify the problem by exploiting it.
| |
− | # Brief description of available remediations to the problem.
| |
− | # Fix the problem by correcting and rebuilding the iGoat program.
| |
− | | |
− | Step 4 is optional, but highly recommended for all iOS developers. Assistance is available within iGoat if you don't know how to fix a specific problem.
| |
− | | |
− | iGoat is free software, released under the GPLv3 license.
| |
− | | |
− | [https://www.owasp.org/index.php/OWASP_iGoat_Project iGoat Project Page]
| |
− | | |
− | The iGoat source code is available on Google Code [http://code.google.com/p/owasp-igoat/ iGoat Source Code]
| |
− | | |
− | == Damn Vulnerable iOS Application ==
| |
− | | |
− | Damn Vulnerable iOS application is a project started by Prateek Gianchandani which gives mobile testers and developers an iOS application to practice attacking/defending skill sets. Each challenge area corresponds to an in-depth article designed to teach the fundamentals of mobile security on the iOS platform. Some challenge categories include multiple challenge types.
| |
− | | |
− | The current challenge categories:
| |
− | | |
− | * Insecure Data Storage (4 exercises)
| |
− | * Jailbreak Detection (2 exercises)
| |
− | * Runtime Manipulation (3 exercises)
| |
− | * Transport Layer Security (1 exercise)
| |
− | * Client Side Injection (1 exercise)
| |
− | * Broken Cryptography (1 exercise)
| |
− | * Binary Patching (4 exercises)
| |
− | | |
− | [http://damnvulnerableiosapp.com DVIA Home Page]
| |
− | | |
− | [https://www.owasp.org/index.php/OWASP_DVIA DVIA OWASP Project Page]
| |
− | | |
− | [https://github.com/prateek147/DVIA DVIA Github Source]
| |
− | | |
− | [http://damnvulnerableiosapp.com/#learn DVIA Learning Resources]
| |
− | | |
− | == MobiSec ==
| |
− | | |
− | The MobiSec Live Environment Mobile Testing Framework project is a live environment for testing mobile environments, including devices, applications, and supporting infrastructure. The purpose is to provide attackers and defenders the ability to test their mobile environments to identify design weaknesses and vulnerabilities. The MobiSec Live Environment provides a single environment for testers to leverage the best of all available open source mobile testing tools, as well as the ability to install additional tools and platforms, that will aid the penetration tester through the testing process as the environment is structured and organized based on an industry‐proven testing framework. Using a live environment provides penetration testers the ability to boot the MobiSec Live Environment on any Intel-based system from a DVD or USB flash drive, or run the test environment within a virtual machine.
| |
− | | |
− | [https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_-_MobiSec Project Page]
| |
− | | |
− | MobiSec can be downloaded from Sourceforge: [http://sourceforge.net/p/mobisec/wiki/Home/ MobiSec Download Repository]
| |
− | | |
− | == Androick ==
| |
− | | |
− | Androick is a collaborative research project from PHONESEC Ltd. With our tool, you can evaluate some risks on Android mobile applications.
| |
− | Androick is a tool that allows any user to analyze an Android application. It can get the apk file, all the datas and the databases in sqlite3 and csv format.
| |
− | Only for Pentesters or Researchers.
| |
− | | |
− | [https://www.owasp.org/index.php/Projects/OWASP_Androick_Project Androick Project Page]
| |
− | | |
− | == NowSecure App Testing Community Edition ==
| |
− | | |
− | The NowSecure App Testing Community Edition is the freely downloadable version of the powerful App Testing suite. Users are offered a number of features such as network capture, automation, import / export, and reporting to test and secure mobile apps.
| |
− | | |
− | It provides the opportunity to complete mobile app security tests on any application on Android or iOS mobile devices (or installed in an emulator).
| |
− | | |
− | The suite is provided as a preconfigured virtual machine (VM). After downloading the VM and licensing your version of the suite you will have everything you need to test the security of mobile apps.
| |
− | | |
− | Built in emulator - Don’t have a device? No worries. The suite includes a built in Emulator that may be used to test the security of your mobile applications.
| |
− | | |
− | [https://www.nowsecure.com/apptesting/community/ NowSecure App Testing Suite]
| |
− | | |
− | == OWASP Seraphimdroid ==
| |
− | OWASP SeraphimDroid is educational, privacy and device protection application for android devices that helps users learn about risks and threats coming from other android applications. SeraphimDroid is also an application firewall for android devices not allowing malicious SMS or MMS to be sent, USSD codes to be executed or calls to be called without user permission and knowledge.
| |
− | | |
− | [https://www.owasp.org/index.php/OWASP_SeraphimDroid_Project OWASP Seraphimdroid project page]
| |
− | | |
− | [https://github.com/nikolamilosevic86/owasp-seraphimdroid OWASP Seraphimdroid code]
| |
− | | |
− | [https://play.google.com/store/apps/details?id=org.owasp.seraphimdroid OWASP Seraphimdroid on Google Play]
| |
− | | |
− | == OWASP Summer of Code 2008 ==
| |
− | | |
− | The OWASP Foundation sponsored the OWASP Application Security Verification Standard Project during the OWASP Summer of Code 2008.
| |
− | | |
− | = M-Security Testing =
| |
− | | |
− | == Introduction ==
| |
− | | |
− | A major priority of the OWASP Mobile Security Project is to help standardize and disseminate mobile application testing methodologies. While specific techniques exist for individual platforms, a general mobile threat model can be used to assist test teams in creating a mobile security testing methodology for any platform. The outline which follows describes a general mobile application testing methodology which can be tailored to meet the security tester’s needs. It is high level in some places, and over time will be customized on a per-platform basis.
| |
− | | |
− | This guide is targeted towards application developers and security testers. Developers can leverage this guide to ensure that they are not introducing the security flaws described within the guide. Security testers can use it as a reference guide to ensure that they are adequately assessing the mobile application attack surface. The ideal mobile assessment combines dynamic analysis, static analysis, and forensic analysis to ensure that the majority of the mobile application attack surface is covered.
| |
− | | |
− | On some platforms, it may be necessary to have root user or elevated privileges in order to perform all of the the required analysis on devices during testing. Many applications write information to areas that cannot be accessed without a higher level of access than the standard shell or application user generally has. For steps that generally require elevated privileges, it will be stated that this is the case.
| |
− | | |
− | This guide is broken up into three sections:
| |
− | *'''Information Gathering-''' describes the steps and things to consider when you are in the early stage reconnaissance and mapping phases of testing as well as determining the application’s magnitude of effort and scoping.
| |
− | *'''Static Analysis'''- Analyzing raw mobile source code, decompiled or disassembled code.
| |
− | *'''Dynamic Analysis''' - executing an application either on the device itself or within a simulator/emulator and interacting with the remote services with which the application communicates. This includes assessing the application’s local interprocess communication surface, forensic analysis of the local filesystem, and assessing remote service dependencies.
| |
− | | |
− | | |
− | === How To Use This Resource ===
| |
− | | |
− | As this guide is not platform specific, you will need to know the appropriate techniques & tools for your target platform. The OWASP Mobile Security Project has also developed a number of other supporting resources which may be able to be leveraged for your needs.
| |
− | | |
− | '''In this current draft release, the guide is a work in progress. We need additional contributors to help fill in the blanks. If you think something is missing (there certainly is), add it.'''
| |
− | | |
− | As this guide is not platform specific, you will need to know the appropriate techniques & tools for your target platform. The OWASP Mobile Security Project has also developed a number of other supporting resources which may be able to be leveraged for your needs,
| |
− | | |
− | The steps required to properly test an Android application are very different than those of testing an iOS application. Likewise, Windows Phone is very different from the other platforms. Mobile security testing requires a diverse skillset over many differing operating systems and a critical ability to analyze various types of source code.
| |
− | | |
− | In many cases, a mobile application assessment will require coverage in all three areas identified within this testing reference. A dynamic assessment will benefit from an initial thorough attempt at Information Gathering, some level of static analysis against the application’s binary, and a forensic review of the data created and modified by the application’s runtime behavior.
| |
− | | |
− | Please use this guide in an iterative fashion, where work in one area may require revisiting previous testing steps. As an example, after completing a transaction you may likely need to perform additional forensic analysis on the device to ensure that sensitive data is removed as expected and not cached in an undesired fashion. As you learn more about the application at runtime, you may wish to examine additional parts of the code to determine the best way to evade a specific control. Likewise, during static analysis it may be helpful to populate the application with certain data in order to prove or refute the existence of a security flaw.
| |
− | | |
− | In the future, contributors to the testing guide should consider adding entries under each section relevant to a specific platform. Over time, OWASP contributors will write platform specific guides and expand upon this body of knowledge.
| |
− | | |
− | If a specific area of interest is not covered in this guide, please feel free to either:
| |
− | | |
− | *write the material yourself by registering for a wiki account and contributing content: [https://www.owasp.org/index.php/Special:RequestAccount Wiki Registration]
| |
− | *bring this up as a topic on the Mobile Project’s mailing list: [https://lists.owasp.org/mailman/listinfo/owasp-mobile-security-project Mobile Mailing List]
| |
− | | |
− | Collaboration on building the guide is being performed within Google Docs. You can find the latest and greatest material here: [https://docs.google.com/document/m/?id=1N7zMXlFHtWfc00xa6lRHnVB60U4BZO4SbUrWYMbojVM&pli=1&login=1 Testing Guide Google Doc]
| |
− | | |
− | == Information Gathering ==
| |
− | | |
− | As a result of this initial information gathering exercise, the tester will be better prepared for the future testing phases. Testers, Developers and Security people often fail to take the time to learn the target application and supporting infrastructure, opting to dive in blind, possibly losing valuable time and missing possible attack vectors. Without a solid understanding of how the application “should” work as well as the technologies in use, the tester will not be able to identify when the application behaves in a manner that it “shouldn’t”.
| |
− | | |
− | Prerequisites of this phase may require specific operating systems, platform specific software development kits (SDK’s), rooted or jailbroken devices, the ability to man-in-the-middle secure communications (i.e. HTTPS) and bypass invalid certificate checks.
| |
− | | |
− | *Manually navigate through the running application to understand the basic functionality and workflow of the application. This can be performed on a real device or within a simulator/emulator. For deeper understanding of application functionality tester can proxy and sniff all network traffic from either a physical mobile device or an emulator/simulator recording and logging traffic (if your proxy tool permits logging, which most should).
| |
− | | |
− | *Identify the networking interfaces used by the application, for instance:
| |
− | **Mobile Communication (GSM, GPRS, EDGE, LTE)
| |
− | **Wireless (Wi-Fi (802.11 standards), Bluetooth, NFC)
| |
− | **Virtual Interfaces (i.e. VPN)
| |
− | | |
− | *Determine what the application supports for access 3G, 4G, wifi and or others
| |
− | | |
− | *What networking protocols are in use?
| |
− | **Are secure protocols used where needed?
| |
− | **Can they be switched with insecure protocols?
| |
− | | |
− | *Does the application perform commerce transactions?
| |
− | **Credit card transactions and/or stored payment information (certain industry regulations may be required (i.e. PCI DSS)).
| |
− | **In-app purchasing of goods or features
| |
− | **Make note for future phases to determine does the application store payment information? How is payment information secured?
| |
− | | |
− | *Monitor and identify the hardware components that the application may potentially interact with
| |
− | **NFC
| |
− | **Bluetooth
| |
− | **GPS
| |
− | **Camera
| |
− | **Microphone
| |
− | **Sensors
| |
− | **USB
| |
− | | |
− | *Perform open source intelligence gathering (search engines, source code repositories, developer forums, etc.) to identify source code or configuration information that may be exposed (i.e. 3rd party components integrated within the application)
| |
− | | |
− | *What frameworks are in use?
| |
− | | |
− | *Identify if the application appears to interact with any other applications, services, or data such as:
| |
− | **Telephony (SMS, phone)
| |
− | **Contacts
| |
− | **Auto correct / dictionary services
| |
− | **Receiving data from apps and other on-device services
| |
− | **Google Wallet
| |
− | **iCloud
| |
− | **Social networks (i.e. Facebook, Twitter, LinkedIn, Google+)
| |
− | **Dropbox
| |
− | **Evernote
| |
− | **Email
| |
− | **Etc.
| |
− | | |
− | *Can you determine anything about the server side application environment?
| |
− | **Hosting provider (AWS, App Engine, Heroku, Rackspace, Azure, etc.)
| |
− | **Development environment (Rails, Java, Django, ASP.NET, etc.)
| |
− | **Does the application leverage Single Sign On or Authentication APIs (Google Apps, Facebook, iTunes, OAuth, etc.)
| |
− | **Any other APIs in use
| |
− | ***Payment gateways
| |
− | ***SMS messaging
| |
− | ***Social networks
| |
− | ***Cloud file storage
| |
− | ***Ad networks
| |
− | | |
− | *Perform a thorough crawl of exposed web resources and sift through the requests and responses to identify potentially interesting data or behavior
| |
− | **Leaking sensitive information (i.e. credentials) in the response
| |
− | **Resources not exposed through the UI
| |
− | **Error messages
| |
− | **Cacheable information
| |
− | | |
− | | |
− | == Static Analysis ==
| |
− | | |
− | There are two primary ways static analysis will generally be performed on a mobile application:
| |
− | #Analyzing source code obtained from development team (prefered)
| |
− | #Using a compiled binary.
| |
− | | |
− | Some level of static analysis should be performed for both dynamic and forensic analysis, as the application’s code will almost always provide valuable information to the tester (i.e. logic, backend targets, APIs, etc).
| |
− | | |
− | In scenarios where the primary goal is to identify programmatic examples of security flaws, your best bet is to review pure source code as opposed to reverse engineering compiled software. For source code reviews, it is highly beneficial to have access to either a development or production instance of any web services. This includes both source code and a working test environment to perform the assessment within in order to expedite understanding of the code.
| |
− | | |
− | === Getting Started ===
| |
− | *If the source is not directly available, decompile or disassemble the application’s binary
| |
− | **extract the application from the device
| |
− | **follow the appropriate steps for your platform’s application reverse engineering
| |
− | **some applications may also require decryption prior to reverse engineering (note: decryption and code obfuscation are not the same thing)
| |
− | | |
− | *Review the permissions the application requests as well as the resources that it is authorized to access (i.e. AndroidManifest.xml, iOS Entitlements or Windows Phone's WMAppManifest.xml)
| |
− | | |
− | *Are there any easy to identify misconfigurations within the application found within the configuration files? Debugging flags set, world readable/writable permissions, etc.
| |
− | | |
− | *What frameworks are in use? Is the application built using a cross-platform framework?
| |
− | | |
− | *Identify the libraries in use including both platform provided as well as third party. Perform a quick review on the web to determine if these libraries:
| |
− | **are up to date
| |
− | **are free of vulnerabilities
| |
− | **expose functionality that requires elevated privileges (access to location or contact data)
| |
− | **native code
| |
− | | |
− | *Does the application check for rooted/jailbroken devices? How is this done? How can this be circumvented? Is it as easy as changing the case of a file name or name of executable or path?
| |
− | | |
− | *Determine what types of objects are implemented to create the various views within the application. This may significantly alter your test cases, as some views implement web browser functionality while others are native UI controls only.
| |
− | | |
− | *Is all code expected to run within the platform’s standard runtime environment, or are some files/libraries dynamically loaded or called outside of that environment at runtime?
| |
− | | |
− | *Attempt to match up every permission that the application requests with an actual concrete implementation of it within the application. Often, developers request more permission than they actually need. Identify if the same functionality could be enabled with lesser privileges.
| |
− | | |
− | *Locate hard coded secrets within the application such as API keys, credentials, or proprietary business logic.
| |
− | | |
− | *Identify every entry point for untrusted data entry and determine how it enforces access controls, validates and sanitizes inbound data, and passes the data off to other interpreters
| |
− | **From web service calls
| |
− | **Receiving data from other apps and on-device services
| |
− | **Inbound SMS messages
| |
− | **Reading information from the filesystem
| |
− | | |
− | === Authentication ===
| |
− | | |
− | *Locate the code which handles user authentication through the UI. Assess the possible methods of user impersonation via vectors such as parameter tampering, replay attacks, and brute force attacks.
| |
− | | |
− | *Check if authentication is done online/offline. Sometimes authentication is done offline, so here you can try SQLi to bypass authentication.
| |
− | | |
− | *Determine if the application utilizes information beyond username/password such as
| |
− | **contextual information (i.e.- device identifiers, location)
| |
− | **certificates
| |
− | **tokens
| |
− | | |
− | *Does the application utilize visual swipe or touch passwords vs. conventional usernames and passwords?
| |
− | **Assess the method of mapping the visual objects to an authentication string to determine if adequate entropy exists
| |
− | | |
− | *Does the application implement functionality that permits inbound connections from other devices? (i.e.- Wi-Fi Direct, Android Beam, network services)
| |
− | **Does the application properly authenticate the remote user or peer prior to granting access to device resources?
| |
− | **How does the application handle excessive failed attempts at authentication?
| |
− | **are failed attempts logged?
| |
− | **what mechanisms exist to inform the user of a potential attack?
| |
− | | |
− | *Is there account lockout implemented for limited invalid login attempts?
| |
− | **How many invalid attempts are allowed?
| |
− | **Does application handles DOS performed using account lockout feature?
| |
− | **How does it unlock the user account?
| |
− | | |
− | *Single Sign On, e.g.
| |
− | **OAuth
| |
− | **Facebook
| |
− | **Google Apps
| |
− | | |
− | *SMS
| |
− | **How is the sender authenticated?
| |
− | ***password
| |
− | ***header information
| |
− | ***Other mechanism?
| |
− | **Are one time passwords (OTP) used or is other sensitive account data transmitted via SMS?
| |
− | ***Can other applications access this data?
| |
− | **What if attacker tampers OTP using gprs modem?
| |
− | **Can application validate the tampered OTP?
| |
− | | |
− | *USSD
| |
− | **Does application use USSD/Flash messages to authenticate use?
| |
− | ***USSD based authentication is more reliable than SMS
| |
− | | |
− | *Push Notifications
| |
− | **If the application consumes information via push notifications, how does the application verify the identity of the sender?
| |
− | | |
− | === Authorization ===
| |
− | *Review file permissions for files created at runtime
| |
− | | |
− | *Determine if it is possible to access functionality not intended for your role
| |
− | | |
− | **Identify if the application has role specific functionality within the mobile application
| |
− | | |
− | **Locate any potential flags or values that may be set on the client from any untrusted source that can be a point of privilege elevation such as
| |
− | ***databases
| |
− | ***flat files
| |
− | ***HTTP responses
| |
− | | |
− | **Find places within an application that were not anticipated being directly accessed without following the application’s intended workflow
| |
− | | |
− | *Licensing
| |
− | **Can licensing checks be defeated locally to obtain access to paid-for data resources? (i.e.- patching a binary, modifying it at runtime, or by modifying a local configuration file)
| |
− | **Does the code suggest that licensed content is served with a non-licensed app but restricted by UI controls only?
| |
− | **Are licensing checks performed properly by the server or platform licensing services?
| |
− | **How does the application detect and respond to tampering?
| |
− | ***Are alerts sent to and expected by the developer?
| |
− | ***Does the application fail open or fail closed?
| |
− | ***Does the application wipe its data?
| |
− | | |
− | === Session Management ===
| |
− | | |
− | *Ensure that sessions timeout locally as well as server side.
| |
− | **Make sure Session Timeout is set to minimal value.
| |
− | | |
− | *Is sensitive information utilized within the application flushed from memory upon session expiration?
| |
− | | |
− | *No Session IDs should be passed in URL, ensure usage of POST method or hidden fields.
| |
− | | |
− | *Detect Session Fixation/Tampering on Server Side.
| |
− | | |
− | *Ensure Session tokens are randomized and are not guessable or in sequence.
| |
− | | |
− | === Data Storage ===
| |
− | | |
− | *Encryption
| |
− | **Are the algorithms used “best of breed” or do they contain known issues?
| |
− | **How are keys derived from i.e. a password?
| |
− | **Based on the algorithms and approaches used to encrypt data, do implementation issues exist that degrade the effectiveness of encryption?
| |
− | **How are keys managed and stored on the device? Can this reduce the complexity in breaking the encryption?
| |
− | | |
− | *Identify if the application utilizes storage areas external to the “sandboxed” locations to store unencrypted data such as:
| |
− | **Places with limited access control granularity (SD card, tmp directories, etc.)
| |
− | **Directories that may end up in backups or other undesired locations (iTunes backup, external storage, etc.)
| |
− | **Cloud storage services such as Dropbox, Google Drive, or S3
| |
− | | |
− | *Does the application write sensitive information to the file system at any point, such as:
| |
− | **Credentials
| |
− | ***Username and/or password
| |
− | ***API keys
| |
− | ***Authentication tokens
| |
− | **Payment information
| |
− | **Patient data
| |
− | **Signature files
| |
− | | |
− | *Is sensitive information written to data stores via platform exposed APIs such as contacts?
| |
− | | |
− | === Information Disclosure ===
| |
− | | |
− | *Logs
| |
− | **Does the application log data? Is sensitive information accessible?
| |
− | **How are the logs accessed, if so, and by which mechanism/functionality? Is log access protected?
| |
− | **Can any of the logged information be considered a privacy violation?
| |
− | **Is the device identifier sent that could be used to identify the user? (i.e.UDID in Apple devices)
| |
− | **Does the application upload any log file to the server?
| |
− | ***Is the log file extension validated before upload?
| |
− | ***Is the content of the log file validated before upload? What if malicious code is embedded in log file?
| |
− | | |
− | *Caches
| |
− | **Predictive text
| |
− | **Location information
| |
− | **Copy and paste
| |
− | **Application snapshot
| |
− | **Browser cache
| |
− | **Non-standard cache locations (i.e the various SQLite databases that apps can create if they use HTML UI components)
| |
− | **Are HTTPS responses being cached?
| |
− | | |
− | *Exceptions
| |
− | **Does sensitive data leak in crash logs?
| |
− | **How does application handle data/logs outside its container?
| |
− | | |
− | *Third Party Libraries and APIs
| |
− | **What permissions do they require?
| |
− | **Do they access or transmit sensitive information?
| |
− | Review licensing requirements for any potential violations.
| |
− | **Can their runtime behavior expose users to privacy issues and unauthorized tracking?
| |
− | | |
− | === Web Application Issues ===
| |
− | | |
− | *XSS and HTML Injection
| |
− | **Identify places where the application passes untrusted data into a web view or browser
| |
− | **Determine if the application properly output encodes or sanitizes the data within the appropriate context
| |
− | *OS Command Injection (if the application utilizes a shell)
| |
− | **Where the application permits usage of the shell, identify the entry points to manipulate or alter the commands via user input or external untrusted data
| |
− | **Determine if an attacker can inject arbitrary commands or manipulate the intended command in any way
| |
− | *CSRF
| |
− | *SQL Injection
| |
− | *Cookies
| |
− | *HTML5
| |
− | *XML Injection
| |
− | *Check Cross Domain Policy
| |
− | | |
− | === Networking ===
| |
− | | |
− | *Are insecure protocols used to send or receive sensitive information? Examples- FTP, SNMP v1, SSH v1
| |
− | | |
− | *Are there any known issues with the specific libraries you are using to implement the protocol?
| |
− | | |
− | === Transport Layer Protection ===
| |
− | *Does the application properly implement Certificate Pinning?
| |
− | | |
− | *Are certificates validated to determine if:
| |
− | **The certificate has not expired
| |
− | **The certificate was issued by a valid certificate authority
| |
− | **The remote destination information matches the information within the certificate?
| |
− | | |
− | *Are certificates validated only by the operating system or also by the application that relies on it?
| |
− | | |
− | *Identify if code exist to alter the behavior for traffic transiting different interfaces (i.e.- 3G/4G comms vs. Wi-Fi)? If so, is encryption applied universally across each of them
| |
− | | |
− | | |
− | | |
− | === Helpful Search Strings and Regular Expressions ===
| |
− | | |
− | *DEBUG
| |
− | *printStackTrace
| |
− | *username/userID/password/passwd/pwd/
| |
− | *key/encrypt/decrypt/MD5/MD4
| |
− | *timeout/session.invalidate
| |
− | *root/jailbreak
| |
− | *test/demo/
| |
− | *sqlconnection/sqlevents/sqldemo/sqlconn/sqltest
| |
− | *account/URL/hostname/ipaddress
| |
− | *proxy
| |
− | | |
− | == Dynamic Analysis ==
| |
− | | |
− | Armed with data collected during the Information Gathering and Static Analysis phases, the tester can begin an informed vulnerability assessment of the mobile application client, server and associated services.
| |
− | | |
− | Dynamic analysis is conducted against the backend services and APIs and the type of tests varies depending on mobile application type.
| |
− | | |
− | === Application Types ===
| |
− | | |
− | *Native Mobile Application: Native mobile applications can be installed on to the device. This type of applications generally store most of their code on the device. Any information required can be requested to the server using the HTTP/s protocol
| |
− | | |
− | *Web services for Mobile Application: Native mobile application that uses SOAP or REST based web services to communicate between client and Server
| |
− | | |
− | *Mobile Browser Based Application: Web browser based applications can be accessed using device’s browsers such as Safari or Chrome. Most of the commercial applications are nowadays specifically designed and optimized for mobile browsers. These applications are no different than traditional web application and all the web application vulnerabilities apply to these apps and these should be tested as traditional web apps.
| |
− | | |
− | *Mobile Hybrid Applications:Applications can leverage web browser functionality within native applications, blending the risks from both classes of applications.
| |
− | | |
− | In this phase, the mobile client, backend services, and host platform is analyzed/scanned in attempt to uncover potential risks, vulnerabilities and threats. The use of an intercepting proxy tool as well as automated vulnerability scanners are core to this phase. In many cases, you will also need some type of shell access to the device.
| |
− | | |
− | The following outline can be used as a “Dynamic Analysis” guide in planning a mobile assessment.
| |
− | | |
− | === Establishing a Baseline ===
| |
− | | |
− | *Generate File System Baseline Fingerprint (before app installation)
| |
− | **Application interactions with the host file system must be reviewed and analyzed at various stages of testing; starting with baseline capture. This may require a shell or GUI depending on platform and/or preference.
| |
− | | |
− | *Install, Configure and Use the Application
| |
− | **Manually inspect the file system to determine what files/databases were created, what and how data is stored. Did the application store sensitive data unencrypted or trivially protected (i.e. encoded)?
| |
− | **Generally, pay attention to credentials, payment information, or other highly sensitive information being saved to the device. Also take a look at databases, log files, predictive text caches, and crash logs.
| |
− | | |
− | === Debugging ===
| |
− | | |
− | *Attach a debugger to an application to step through code execution and setting breakpoints at interesting code within the application
| |
− | | |
− | *Monitor logged messages and notifications generated at runtime
| |
− | | |
− | *Observe interprocess communications between the target application and other applications and services running on the mobile device.
| |
− | | |
− | === Active Testing ===
| |
− | | |
− | ==== Local Testing ====
| |
− | | |
− | *Exposed IPC interfaces
| |
− | **Sniff
| |
− | **Fuzz
| |
− | **Bypass authorization checks
| |
− | | |
− | ===== Cryptography =====
| |
− | | |
− | *Brute force attacks against keys, pins, and hashes
| |
− | *Attempt to reconstruct encrypted data through recovery of keys, hardcoded secrets, and any other information exposed by the application
| |
− | | |
− | ===== Web Applications =====
| |
− | | |
− | *XSS and HTML Injection
| |
− | **Is it possible to inject client side code (i.e. JavaScript) or HTML into the application to either modify the inner working of the application or it's user interface?
| |
− | | |
− | *Command Injection (if the application utilizes a shell)
| |
− | | |
− | *CSRF
| |
− | | |
− | *SQL Injection
| |
− | | |
− | *Cookies
| |
− | **Are cookies issued by a server secured by using the HTTP-only and Secure flag?
| |
− | **Is there any sensitive information stored in the cookies?
| |
− | | |
− | *HTML5 Storage
| |
− | | |
− | ===== Authentication =====
| |
− | | |
− | *Assess the methods an application uses to authenticate peers
| |
− | **NFC
| |
− | **SMS
| |
− | **Push notifications
| |
− | **Across IPC channels (identify the calling application’s privileges and identity)
| |
− | | |
− | ===== Authorization =====
| |
− | *Instrument, patch, or interact with application at runtime to bypass methods intended to prevent usage of privileged or premium features
| |
− | | |
− | *Determine if configuration or locally stored data can be manipulated in order to elevate a user’s privileges
| |
− | | |
− | *Check the filesystem permissions for any files created at runtime
| |
− | | |
− | ===== File System Analysis =====
| |
− | | |
− | *Assess the application’s behavior throughout it’s lifecycle to determine if special functionality is triggered to persist an application’s state when it enters different stages:
| |
− | **Placed into the foreground
| |
− | **Sent into the background
| |
− | **Upon exiting the application
| |
− | | |
− | *Data storage in Cache
| |
− | | |
− | *Looking for artifacts left on device
| |
− | | |
− | *Unencrypted data storage on the device
| |
− | | |
− | *Encryption of data in backups
| |
− | | |
− | *Username/password, or app-specific unique device id stored on the device
| |
− | | |
− | *Application Permissions , Privileges and Access controls on the device
| |
− | | |
− | *Generally, pay attention to credentials, payment information, or other highly sensitive information being saved to the device. Also take a look at log files, predictive text caches, and crash logs.
| |
− | | |
− | *Is sensitive information cached within the application’s UI back stack?
| |
− | | |
− | *Utilize forensic tools to determine if deleted data can be recovered from the filesystem as well as within databases
| |
− | | |
− | ===== Memory Analysis =====
| |
− | | |
− | *Determine if sensitive information persists within memory after performing the following actions:
| |
− | **Logging out of the application
| |
− | **Transition between UI components
| |
− | | |
− | *Is it possible to obtain encryption keys, credentials, payment information and other sensitive information by dumping device or application memory?
| |
− | | |
− | ==== Remote Application/Service Testing ====
| |
− | | |
− | ===== Authentication =====
| |
− | | |
− | *What methods are available (3G, 4G, Wifi, etc)?
| |
− | | |
− | *What happens if the remote authentication service becomes unavailable?
| |
− | | |
− | *Assess strength of password requirements
| |
− | | |
− | *Test how account lockouts are implemented
| |
− | | |
− | *Analyze (monitor traffic) how each method performs authentication. Note target wifi as this is a common area where authentication can be weak. Ensure authentication is robust and not based on trivial attributes (i.e. MDN, ESN, etc).
| |
− | | |
− | *Verify that authentication tokens are terminated after a user initiates a password reset
| |
− | | |
− | *Single Sign On (SSO)
| |
− | | |
− | *SMS Based
| |
− | **One Time Passwords (OTP)
| |
− | **Two Factor Authentication
| |
− | | |
− | *Push Notifications
| |
− | | |
− | *Licensing
| |
− | | |
− | ===== Authorization =====
| |
− | | |
− | *What happens if the remote authorization handling service becomes unavailable?
| |
− | | |
− | *Test if direct access to backend resources is possible
| |
− | | |
− | *Access controls to server side resources not enforced
| |
− | | |
− | *Vertical and horizontal privilege escalation
| |
− | | |
− | ===== Session Management =====
| |
− | | |
− | *Entropy analysis
| |
− | *Device identifier related?
| |
− | *Are session tokens refreshed between logouts?
| |
− | *Lifetime and expiration
| |
− | *Handling the session token on the device (stored, in memory, etc.)
| |
− | *Privilege Escalation
| |
− | *Ineffective Session Termination
| |
− | *Session Fixation
| |
− | *Pre-login/Login/Post-login Session checks
| |
− | *Unique Session Generation
| |
− | | |
− | ===== Transport Layer Testing =====
| |
− | *Man-in-the-middle attacks
| |
− | *Eavesdropping
| |
− | *SSL checks (cypher strengths/weakness etc.)
| |
− | *SSL Striping
| |
− | | |
− | ===== Server Side Attacks =====
| |
− | | |
− | *Triggering unhandled exceptions
| |
− | *Cross-Site Scripting
| |
− | *SQL Injection
| |
− | *XML Bombs
| |
− | *Buffer overflow
| |
− | *Unrestricted File Upload
| |
− | *Open Redirect
| |
− | *Cross Origin Resource Sharing
| |
− | | |
− | ===== Server, Network & Application Scanning =====
| |
− | | |
− | *Based on prior phases you should have 1 or more target servers (i.e. URLs) as candidates for automated vulnerability scanning. Mobile applications often leverage existing web services/applications (i.e. hybrid applications) which must be tested for security vulnerabilities.
| |
− | | |
− | ===== Conclusion =====
| |
− | | |
− | Mobile applications are continuing to mature and evolve thus to be effective, security testers must strive to advance their knowledge and skills. Please check back periodically for updates and share your feedback with us.
| |
− | | |
− | = M-Cheat Sheet =
| |
− | == Mobile Cheat Sheet Series ==
| |
− | | |
− | Cheat sheets provide the information most relevant to a developer or security engineer with minimal "fluff". The goal of the project is to build a collection of cheat sheets that provide actionable, useful, and straight to the point guidance for a plethora of mobile security issues.
| |
− | | |
− | == Platform Agnostic ==
| |
− | | |
− | [https://www.owasp.org/index.php/Mobile_Jailbreaking_Cheat_Sheet Mobile Jailbreaking Cheat Sheet]
| |
| | | |
− | == Android == | + | = Secure M-Development = |
− | | |
− | == iOS ==
| |
− | <ul>
| |
− | <li>[https://www.owasp.org/index.php/IOS_Developer_Cheat_Sheet iOS Developer Cheat Sheet]</li>
| |
− | <li>[https://www.owasp.org/index.php/IOS_Application_Security_Testing_Cheat_Sheet iOS Application Security Testing Cheat Sheet]</li>
| |
− | </ul>
| |
− | | |
− | == Windows Phone (Developer Unlock) ==
| |
− | | |
− | Developer Unlock:
| |
− | You need to have machine with Windows 8 64-bit OS in it.
| |
− | Connect your phone to Win8 machine using USB cable and start Visual Studio 2013 (with Windows Mobile package installed).
| |
− | Go to Tool Windows Phone 8.1 Developer Unlock.
| |
− | | |
− | | |
− | XAP file deployment and Local Storage Check on Windows Mobile with OS 8+
| |
− | 1. You need to have machine with Windows 8 64-bit OS running in it.
| |
− | 2. Install Windows 8 power tools (WP8).
| |
− | Download WP8 here: http://wptools.codeplex.com/
| |
− | 3. Connect your Windows Phone to Win8 machine using USB cable and WP8 will detect your device.
| |
− | 4. You can now: install XAP files, update XAP files, check local storage (isolated storage), and get various attributes.
| |
− | | |
− | == RIM ==
| |
− | | |
− | = Secure Mobile Development =
| |
| '''Secure Mobile Development Guidelines Objective''' | | '''Secure Mobile Development Guidelines Objective''' |
| | | |
| The OWASP Secure Development Guidelines provides developers with the knowledge they need to build secure mobile applications. An extendable framework will be provided that includes the core security flaws found across nearly all mobile platforms. It will be a living reference where contributors can plug in newly exposed APIs for various platforms and provide good/bad code examples along with remediation guidance for those issues. | | The OWASP Secure Development Guidelines provides developers with the knowledge they need to build secure mobile applications. An extendable framework will be provided that includes the core security flaws found across nearly all mobile platforms. It will be a living reference where contributors can plug in newly exposed APIs for various platforms and provide good/bad code examples along with remediation guidance for those issues. |
| + | |
| + | == Status note == |
| + | '''Note: Given that the MASVS/MSTG is becoming the leading framework in terms of requirements, we will archive this page and merge requirements with the MASVS, this process is currently taken care of by Abderrahmane AFTAHI (see [https://github.com/OWASP/owasp-masvs/issues/189 the github issue for more details]) and Rocco Gränitz (see [https://github.com/OWASP/owasp-masvs/issues/203 the github issue for more details])''' |
| | | |
| == Mobile Application Coding Guidelines == | | == Mobile Application Coding Guidelines == |
Line 975: |
Line 382: |
| ==OWASP/ENISA Collaboration== | | ==OWASP/ENISA Collaboration== |
| | | |
− | OWASP and the European Network and Information Security Agency (ENISA) collaborated to build a joint set of controls. ENISA has published the results of the collaborative effort as the "Smartphone Secure Development Guideline": http://www.enisa.europa.eu/activities/application-security/smartphone-security-1/smartphone-secure-development-guidelines | + | OWASP and the European Network and Information Security Agency (ENISA) collaborated to build a joint set of controls. ENISA has published the results of the collaborative effort as the "Smartphone Secure Development Guideline", which is published in 2011 at: https://www.enisa.europa.eu/publications/smartphone-secure-development-guidelines/at_download/fullReport. In 2017, an update was published by ENISA at https://www.enisa.europa.eu/publications/smartphone-secure-development-guidelines-2016. |
| | | |
| [[File:OWASP_Mobile_Top_10_Controls.jpg|center|800px]] | | [[File:OWASP_Mobile_Top_10_Controls.jpg|center|800px]] |
| + | |
| + | |
| + | == Status note == |
| + | '''Note: Given that the MASVS/MSTG is becoming the leading framework in terms of requirements, we will archive this page and merge requirements with the MASVS, this process is currently taken care of by Abderrahmane AFTAHI (see [https://github.com/OWASP/owasp-masvs/issues/189 the github issue for more details]) and Rocco Gränitz (see [https://github.com/OWASP/owasp-masvs/issues/203 the github issue for more details])''' |
| | | |
| ==Contributors== | | ==Contributors== |
Line 1,146: |
Line 557: |
| **Device certificates can be used for stronger device authentication.' | | **Device certificates can be used for stronger device authentication.' |
| | | |
− | ''References" | + | ''References"'' |
| *1.ENISA. Top Ten Smartphone Risks . [Online] http://www.enisa.europa.eu/act/application-security/smartphone-security-1/top-ten-risks. | | *1.ENISA. Top Ten Smartphone Risks . [Online] http://www.enisa.europa.eu/act/application-security/smartphone-security-1/top-ten-risks. |
| *2. OWASP. Top 10 mobile risks. [Online] https://www.owasp.org/index.php/OWASP_Mobile_Security_Project#tab=Top_Ten_Mobile_Risks. | | *2. OWASP. Top 10 mobile risks. [Online] https://www.owasp.org/index.php/OWASP_Mobile_Security_Project#tab=Top_Ten_Mobile_Risks. |
Line 1,172: |
Line 583: |
| | | |
| This is the first release (February 2013) of the Mobile Application Threat Model developed by the initial project team (listed at the end of this release). Development began mid-2011 and is being released in beta form for public comment and input. It is by no means complete and some sections will need more contributions, details and also real world case studies. It's the hope of the project team that others in the community can help contribute to this project to further enhance and improve this threat model. | | This is the first release (February 2013) of the Mobile Application Threat Model developed by the initial project team (listed at the end of this release). Development began mid-2011 and is being released in beta form for public comment and input. It is by no means complete and some sections will need more contributions, details and also real world case studies. It's the hope of the project team that others in the community can help contribute to this project to further enhance and improve this threat model. |
| + | |
| + | === Maintenance note === |
| + | |
| + | We are in the process of creating a new threatmodel. Want to join? Drop a line at [https://github.com/OWASP/OWASP-Mobile-Threatmodel our threatmodel git]. |
| | | |
| ===Mobile Threat Model Introduction Statement=== | | ===Mobile Threat Model Introduction Statement=== |
Line 1,358: |
Line 773: |
| | | |
| * '''App Store Approvers/Reviewers:''' Any app store which fails to review potentially dangerous code or malicious application which executes on a user’s device and performs suspicious/ malicious activities | | * '''App Store Approvers/Reviewers:''' Any app store which fails to review potentially dangerous code or malicious application which executes on a user’s device and performs suspicious/ malicious activities |
− |
| |
− |
| |
| | | |
| | | |
Line 1,367: |
Line 780: |
| | | |
| | | |
− | * '''Malware on the device''': Any program / mobile application which performs suspicious activity. It can be an application, which is copying real time data from the user’s device and transmitting it to any server. This type of program executes parallel to all the processes running in the background and stays alive performing malicious activity all the time. E.g. Olympics App which stole text messages and browsing history:[http://venturebeat.com/2012/08/06/olympics-android-app/ ][http://venturebeat.com/2012/08/06/olympics-android-app/ http://venturebeat.com/2012/08/06/olympics-android-app/] | + | * '''Malware on the device''': Any program / mobile application which performs suspicious activity. It can be an application, which is copying real time data from the user’s device and transmitting it to any server. This type of program executes parallel to all the processes running in the background and stays alive performing malicious activity all the time. E.g. Olympics App which stole text messages and browsing history:[http://venturebeat.com/2012/08/06/olympics-android-app/]http://venturebeat.com/2012/08/06/olympics-android-app/ |
| | | |
| * '''Scripts executing at the browser with HTML5''': Any script code written in a language similar to JavaScript having capability of accessing the device level content falls under this type of agent section. A script executing at the browser reading and transmitting browser memory data / complete device level data. | | * '''Scripts executing at the browser with HTML5''': Any script code written in a language similar to JavaScript having capability of accessing the device level content falls under this type of agent section. A script executing at the browser reading and transmitting browser memory data / complete device level data. |
Line 1,534: |
Line 947: |
| Ritesh Taank | | Ritesh Taank |
| | | |
− | = MDM Technology =
| |
− | ==What is MDM Technology? - Author: Milan Singh Thakur==
| |
− | MDM is a way to ensure employees stay productive and do not breach corporate policies. Many organizations control activities of their employees using MDM products/services.
| |
− | MDM primarily deals with corporate data segregation, securing emails, securing corporate documents on device, enforcing corporate policies, integrating and managing mobile devices including laptops and handhelds of various categories.
| |
− | There are two major types of MDM implementations:
| |
− | 1. On-premise Solution
| |
− | 2. Cloud-based Solution
| |
− | For the organizations where security is highest concern, it preferred to have On-premise solution. This is always suggested for mission critical secure applications.
| |
− | Cloud-based solution provides ease of access for the administrator.
| |
− |
| |
− | ==How does it provide Security?==
| |
− | All MDM products are built with an idea of Containerization. The MDM Container is secured using latest crypto techniques (AES-256 or more preferred). All the corporate data like email, documents, enterprise application are encrypted and processed inside the container. This ensures that corporate data is separated from user’s personal data on the device.
| |
− | Additionally, encryption for entire device and/or SD Card can also be enforced depending on MDM product capability.
| |
− |
| |
− | '''Secure Email:'''
| |
− | MDM products allow organization to integrate their existing email setup to be easily integrated with MDM environment. Almost all MDM products support easy integration with Exchange Server (2003/2007/2010), Office365, Lotus Notes, Blackberry Enterprise Server (BES) and others. This provided flexibility of configuring Email-over-air.
| |
− |
| |
− | '''Secure Docs:'''
| |
− | It is frequently seen that, employees copy attachments downloaded from corporate email to their personal devices and then misuse it. MDM can easily restrict/disable clipboard usage in/out of Secure Container; forwarding attachments to external domains can be restricted, downloading/saving attachments on SD Card. This ensures corporate data is not left insecure.
| |
− |
| |
− | '''Secure Browser:'''
| |
− | Using secure browser can avoid many potential security risks. Every MDM solution comes with built-in custom browser. Administrator can disable native browsers to force user to use Secure Browser, which is also inside the MDM container. URL filtering can be enforced to add additional productivity measure.
| |
− |
| |
− | '''Secure App Catalogue:'''
| |
− | Organization can distribute, manage, and upgrade applications on employee’s device using App Catalogue. It allows applications to be pushed on user device directly from the App Store or push an enterprise developed private application through the App Catalogue. This provides an option for the organization to deploy devices in Kiosk Mode or Lock-Down Mode.
| |
− |
| |
− |
| |
− | ==Additional MDM Features:==
| |
− | There are plenty of other features depending on which MDM product being chosen. Below is the list for it:
| |
− |
| |
− | • Policy Enforcing: There are multiple types of policies which can be enforced on MDM users.
| |
− | 1. Persona Policy: According to corporate environment, highly customizable
| |
− | 2. Device Platform specific: policies for advanced management of Android, IOS, Windows and Blackberry devices.
| |
− | 3. Compliance Policies/Rules
| |
− |
| |
− | • VPN configuration
| |
− |
| |
− | • Application Catalogue
| |
− |
| |
− | • Pre-defined Wi-Fi and Hotspot settings
| |
− |
| |
− | • Jail-break/Root detection
| |
− |
| |
− | • Remote Wipe of corporate data
| |
− |
| |
− | • Remote Wipe of entire device
| |
− |
| |
− | • Device remote locking
| |
− |
| |
− | • Remote messaging/buzz
| |
− |
| |
− | • Disabling native apps on device
| |
− |
| |
− | •Logging, monitoring and reporting
| |
− |
| |
− | •Centralized functionality
| |
− |
| |
− | •Malware protection
| |
− |
| |
− | •Endpoint Integrity Checking
| |
− |
| |
− | •Role-based access rules
| |
− |
| |
− | •Ease of deployment
| |
− |
| |
− | •Configuration controls
| |
− |
| |
− | •Flexible configuration to support different requirements and parameters
| |
− |
| |
− | •Harmonization across mobile platform types
| |
− |
| |
− | •Integration with other Endpoint Management Systems
| |
− |
| |
− | ==More light on MDM-MAM-MEM:==
| |
− | '''Mobile Device Management (MDM)''' is like adding an extra layer of security and ensuring a way to monitor device related activities. MDM provides device platform specific features like device encryption, platform specific policies, SD Card encryption. Geo-location tracking, connectivity profiles (VPN, Wi-Fi, Bluetooth) and plenty other features are part of MDM Suite.
| |
− |
| |
− | '''Mobile Application Management (MAM)''' is done by application wrapping i.e. injection arbitrary encryption code in the mobile application source. This is necessary for commercial applications or applications being developed in-house for Enterprise use. Additionally, white-listing/black-listing of application can be done. Features like Application Catalogue allow admin to push applications remotely to the devices for instant install, push remote updates and also remote removal of apps.
| |
− |
| |
− | '''Mobile Email Management (MEM)''' ensures your corporate emails are containerized using advanced proprietary/free encryption algorithms. MEM ensures all emails remain inside the secure container, so that attackers get encrypted data even if they try to compromise the device data using USB cable on a system. Heavy restrictions on clipboard, attachments and trusted domains can be enforced. Nothing can move in-out of the secure container as clipboard is disabled. Even the attachments are downloaded and saved inside the secure container. To view the attachments there is secure document reader as well as secure document editor available in MDM solutions. Adding trusted domains will ensure that data from corporate email is not leaked to malicious/suspicious domains.
| |
− |
| |
− |
| |
− | '''Top MDM Vendors in Market:'''
| |
− |
| |
− | • AirWatch by VMware
| |
− |
| |
− | • Amtel MDM
| |
− |
| |
− | • BlackBerry BES10
| |
− |
| |
− | • CA Technologies MDM
| |
− |
| |
− | • Citrix XenMobile
| |
− |
| |
− | • Dell EMM
| |
− |
| |
− | • Good Technology MDM
| |
− |
| |
− | • IBM MaaS360 MDM
| |
− |
| |
− | • McAfee EMM
| |
− |
| |
− | • Microsoft Enterprise Mobility Suite (EMS)
| |
− |
| |
− | • MobileIron EMM
| |
− |
| |
− | • SAP Afaria MDM
| |
− |
| |
− | • SOTI MobiControl MDM
| |
− |
| |
− | • Symantec Mobile Management
| |
− |
| |
− | ==For More Technical Details and Queries==
| |
− |
| |
− | '''Author: Milan Singh Thakur'''
| |
− |
| |
− | Contact: ''milanthakur2010@gmail.com''
| |
− |
| |
− | Linkedin: Connect Professionally[https://in.linkedin.com/in/milansinghthakur]
| |
− |
| |
− | =Guide Development Project=
| |
− | ==Mobile Application Security Guide Development==
| |
− | [[File:OWASP_Mobile_Guide_Logo_Milan.PNG]]
| |
− |
| |
− | '''Project initiated by: ''Jonathan Carter and Milan Singh Thakur'''''
| |
− |
| |
− | For more details on this project please check below links:
| |
− |
| |
− | https://groups.google.com/a/owasp.org/forum/#!forum/owasp-mobile-top-10-risks
| |
− |
| |
− | https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_-2015_Scratchpad
| |
− |
| |
− |
| |
− | The countdown has begun....!!
| |
− |
| |
− | '''Beta Release Date: 15-Sept-2015'''-- The AppSec Approach
| |
− |
| |
− | Releasing 9pm IST
| |
− |
| |
− |
| |
− | Download OWASP-Mobile Security Testing Guide Alpha here
| |
| | | |
− | https://drive.google.com/file/d/0BxOPagp1jPHWRksxQlVWN1hodkE/view?usp=sharing
| |
| | | |
− | Yes, the most awaited OWASP Mobile Security Guide Final Release is coming soon.
| |
− |
| |
− | = Persian Translation / فارسی =
| |
− |
| |
− | {| style="padding: 0;margin:0;margin-top:10px;" |-
| |
− | | valign="top" style="border-right: 1px dotted gray;padding-right:25px;" |
| |
− |
| |
− | <div lang="fa" dir="rtl" class="mw-content-rtl">
| |
− | ==پروژه امنیت موبایل OWASP==
| |
− | پروژه امنیت موبایل OWASP باهدف کمک به گروههای امنیتی و به منظور حفاظت از برنامه های موبایلی ،اطلاعاتی را درباره امنیت موبایل گردآوری و تحلیل مینماید.
| |
− |
| |
− | این سند اولین نسخه از ترجمه فارسی پروژه امنیت برنامه های کاربردی موبایل OWASP است و براساس نسخه انگلیسی 2014 از پروژه امنیت برنامه های کاربردی موبایل OWASP است.
| |
− | این سند ترجمه توسط اعضای آزمایشگاه پیشرفته شبکه و امنیت از [http://imamreza.ac.ir/fa/ دانشگاه امام رضا علیه السلام] منتشر شده است.
| |
− |
| |
− | اعضای گروه:
| |
− |
| |
− | {{Template:Contact
| |
− | | name = دکتر حمیدرضا محروقی
| |
− | | email = mahrooghi@ce.sharif.edu
| |
− | }}<br/>
| |
− | {{Template:Contact
| |
− | | name = مهندس محمد حامد دادپور
| |
− | | email = Hamed.dadpour@gmail.com
| |
− | | username = Hamed
| |
− | }}<br/>
| |
− | {{Template:Contact
| |
− | | name = مهندس سبحان علی آبادی
| |
− | | email = sobhan.aliabady@gmail.com
| |
− | }}<br/>
| |
− |
| |
− | از همه کسانی که ما را در این پروژه یاری رساندند به ویژه از جناب میلان سین تاکور (Milan Singh Thakur) کمال تشکر را داریم.
| |
− | ===ده خطر امنیتی برتر در برنامه های موبایل===
| |
− | در سال 2013 آمارهایی از آسیبپذیری های جدید برنامه های کاربردی موبایل جمع آوری شد؛ آنچه در این سند ترجمه آمده است نتیجه ای از
| |
− | این اطلاعات است.<br/>
| |
− | <div align="center">
| |
− | [[File:OWASP Top 10 Mobile Risks (Persian).pdf]]
| |
− | </div>
| |
− | </div>
| |
− |
| |
− |
| |
− | | valign="top" style="padding-left:25px;width:220px;border-right: 1px dotted gray;padding-right:25px;" |
| |
− | == Team Members ==
| |
− |
| |
− | {{Template:Contact
| |
− | | name = Hamid Reza Mahrooghi
| |
− | | email = mahrooghi@ce.sharif.edu
| |
− | }}<br/>
| |
− | {{Template:Contact
| |
− | | name = Mohammad Hamed Dadpour
| |
− | | email = Hamed.dadpour@gmail.com
| |
− | | username = Hamed
| |
− | }}<br/>
| |
− | {{Template:Contact
| |
− | | name = Sobhan Aliabady
| |
− | | email = sobhan.aliabady@gmail.com
| |
− | }}<br/>
| |
− |
| |
− | == Appreciation ==
| |
− | {{Template:Contact
| |
− | | name = Jonathan Carter
| |
− | | email = jonathan.carter@owasp.org
| |
− | | username = Jonathan Carter
| |
− | }}<br/>
| |
− | {{Template:Contact
| |
− | | name = Milan Singh Thakur
| |
− | | email = milanthakur2010@gmail.com
| |
− | | username = Milan Singh Thakur
| |
− | }}<br/>
| |
− | |}
| |
| __NOTOC__ <headertabs /> | | __NOTOC__ <headertabs /> |