Book description
Explore real-world threat scenarios, attacks on mobile applications, and ways to counter them
About This Book
- Gain insights into the current threat landscape of mobile applications in particular
- Explore the different options that are available on mobile platforms and prevent circumventions made by attackers
- This is a step-by-step guide to setting up your own mobile penetration testing environment
Who This Book Is For
If you are a mobile application evangelist, mobile application developer, information security practitioner, penetration tester on infrastructure web applications, an application security professional, or someone who wants to learn mobile application security as a career, then this book is for you. This book will provide you with all the skills you need to get started with Android and iOS pen-testing.
What You Will Learn
- Gain an in-depth understanding of Android and iOS architecture and the latest changes
- Discover how to work with different tool suites to assess any application
- Develop different strategies and techniques to connect to a mobile device
- Create a foundation for mobile application security principles
- Grasp techniques to attack different components of an Android device and the different functionalities of an iOS device
- Get to know secure development strategies for both iOS and Android applications
- Gain an understanding of threat modeling mobile applications
- Get an in-depth understanding of both Android and iOS implementation vulnerabilities and how to provide counter-measures while developing a mobile app
In Detail
Mobile security has come a long way over the last few years. It has transitioned from "should it be done?" to "it must be done!"Alongside the growing number of devises and applications, there is also a growth in the volume of Personally identifiable information (PII), Financial Data, and much more. This data needs to be secured.
This is why Pen-testing is so important to modern application developers. You need to know how to secure user data, and find vulnerabilities and loopholes in your application that might lead to security breaches.
This book gives you the necessary skills to security test your mobile applications as a beginner, developer, or security practitioner. You'll start by discovering the internal components of an Android and an iOS application. Moving ahead, you'll understand the inter-process working of these applications. Then you'll set up a test environment for this application using various tools to identify the loopholes and vulnerabilities in the structure of the applications. Finally, after collecting all information about these security loop holes, we'll start securing our applications from these threats.
Style and approach
This is an easy-to-follow guide full of hands-on examples of real-world attack simulations. Each topic is explained in context with respect to testing, and for the more inquisitive, there are more details on the concepts and techniques used for different platforms.
Table of contents
-
Mobile Application Penetration Testing
- Table of Contents
- Mobile Application Penetration Testing
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Preface
- 1. The Mobile Application Security Landscape
-
2. Snooping Around the Architecture
- The importance of architecture
-
The Android architecture
- The Linux kernel
- Android runtime
- The java virtual machine
- The Dalvik virtual machine
- Core Java libraries
- ART
- Native libraries
- The application framework
- The applications layer
- Android application components
- Android Debug Bridge
- Application sandboxing
- Application signing
- Secure inter-process communication
- The Android permission model
- The Android application build process
- Android rooting
- iOS architecture
- iOS SDK and Xcode
- iOS application programming languages
- Understanding application states
- Apple's iOS security model
- Changes in iOS 8 and 9
- iOS isolation
- Hardware-level security
- iOS permissions
- The iOS application structure
- Jailbreaking
- The Mach-O binary file format
- Property lists
- Exploring the iOS filesystem
- Summary
-
3. Building a Test Environment
- Mobile app penetration testing environment setup
- Android Studio and SDK
- The Android Debug Bridge
- Genymotion
- Configuring the emulator for HTTP proxy
- Google Nexus 5 – configuring the physical device
- The iOS SDK (Xcode)
- Setting up iPhone/iPad with necessary tools
- SSH clients – PuTTy and WinSCP
- Emulator, simulators, and real devices
- Summary
- 4. Loading up – Mobile Pentesting Tools
-
5. Building Attack Paths – Threat Modeling an Application
- Assets
- Threats
- Vulnerabilities
- Risk
- Approach to threat models
- Threat modeling a mobile application
- Summary
-
6. Full Steam Ahead – Attacking Android Applications
- Setting up the target app
- Analyzing the app using drozer
- Android components
- Attacking WebViews
- SQL injection
- Man-in-the-Middle (MitM) attacks
- Hardcoded credentials
- Encryption and decryption on the client side
- Runtime manipulation using JDWP
- Storage/archive analysis
- Log analysis
- Assessing implementation vulnerabilities
- Binary patching
- Summary
-
7. Full Steam Ahead – Attacking iOS Applications
- Setting up the target
- Storage/archive analysis
- Reverse engineering
- Static code analysis
- App patching using Hopper
- Hardcoded username and password
- Runtime manipulation using Cycript
- Dumpdecrypted
- Client-side injections
- Man-in-the-Middle attacks
- Implementation vulnerabilities
- Building a remote tracer using LLDB
- Snoop-IT for assessment
- Summary
-
8. Securing Your Android and iOS Applications
- Secure by design
- Security mind map for developers (iOS and Android)
-
Device level
- Platform (OS) level
-
Application level
- App storage protection
- Binary protection
- Network level
- Server level
- OWASP mobile app security checklist
- Secure coding best practices
- Post-production protection
- Summary
- Index
Product information
- Title: Mobile Application Penetration Testing
- Author(s):
- Release date: March 2016
- Publisher(s): Packt Publishing
- ISBN: 9781785883378
You might also like
book
Cybersecurity Attacks – Red Team Strategies
Develop your red team skills by learning essential foundational tactics, techniques, and procedures, and boost the …
book
Cybersecurity: Managing Systems, Conducting Testing, and Investigating Intrusions
A must-have, hands-on guide for working in the cybersecurity profession Cybersecurity involves preventative methods to protect …
book
Cybersecurity Blue Team Toolkit
A practical handbook to cybersecurity for both tech and non-tech professionals As reports of major data …
book
Practical Threat Intelligence and Data-Driven Threat Hunting
Get to grips with cyber threat intelligence and data-driven threat hunting while exploring expert tips and …