Book Image

Learning iOS Penetration Testing

By : Swaroop Yermalkar
Book Image

Learning iOS Penetration Testing

By: Swaroop Yermalkar

Overview of this book

iOS has become one of the most popular mobile operating systems with more than 1.4 million apps available in the iOS App Store. Some security weaknesses in any of these applications or on the system could mean that an attacker can get access to the device and retrieve sensitive information. This book will show you how to conduct a wide range of penetration tests on iOS devices to uncover vulnerabilities and strengthen the system from attacks. Learning iOS Penetration Testing discusses the common vulnerabilities and security-related shortcomings in an iOS application and operating system, and will teach you to conduct static and dynamic analysis of iOS applications. This practical guide will help you uncover vulnerabilities in iOS phones and applications. We begin with basics of iOS security and dig deep to learn about traffic analysis, code analysis, and various other techniques. Later, we discuss the various utilities, and the process of reversing and auditing.
Table of Contents (17 chapters)
Learning iOS Penetration Testing
Credits
Foreword – Why Mobile Security Matters
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Chapter 3. Identifying the Flaws in Local Storage

 

"A false sense of security is worse than being unsure"

 
 --Anonymous

In the previous chapter, we set up a lab to perform pentesting on iOS applications. We now have a good understanding of how to install third-party iOS apps, transfer files, and various other concepts about tools and utilities that are required to pentest. In this chapter, we will take a look at the insecure data storage vulnerability of iOS applications.

We will look at the following topics:

  • Introduction to insecure data storage

  • Installing third-party applications

  • Insecure data in the plist files

  • Insecure storage in the NSUserDefaults class

  • Insecure storage in SQLite database

  • SQL injection in iOS applications

  • Insecure storage in Core Data

  • Insecure storage in keychain