Mobile application security focuses on the software security posture of mobile apps on various platforms like Android, iOS, and Windows Phone. This covers applications that run both on mobile phones as well as tablets. It involves assessing applications for security issues in the contexts of the platforms that they are designed to run on, the frameworks that they are developed with, and the anticipated set of users (e.g., employees vs. end users). Mobile applications are a critical part of a business’s online presence and many businesses rely entirely on mobile apps to connect with users from around the world.
More users than ever before rely on mobile applications for a majority of their digital tasks over traditional desktop applications. In 2015 in the U.S. alone, users spent 54% of their digital media time on mobile devices actively using mobile apps. These applications have access to large amounts of user data, much of which is sensitive data and must be protected from unauthorized access.
All popular mobile platforms provide security controls designed to help software developers build secure applications. However, it is often left to the developer to choose from myriad of security options. A lack of vetting can lead to security feature implementation that can be easily circumvented by attackers.
Common issues that affect mobile apps include:
These issues could be exploited in many ways; for example, by malicious applications on a user’s device, or by an attacker who has access to the same WiFi network as an end user.
Mobile application security testing involves testing a mobile app in ways that a malicious user would try to attack it. Effective security testing begins with an understanding of the application’s business purpose and the types of data it handles. From there, a combination of static analysis, dynamic analysis, and penetration testing results in an efficient holistic assessment to find vulnerabilities that would be missed if the techniques were not used together effectively. The testing process includes:
There are a number of free and commercial mobile application security tools available that assess applications using either static or dynamic testing methodologies with varying degrees of effectiveness. However, no single tool provides a comprehensive assessment of the application. Rather, a combination of both static and dynamic testing with manual review is required to provide the best coverage.
Mobile application security testing can be thought of as a pre-production check to ensure that security controls in an application work as expected, while safeguarding against implementation errors. It can help discover edge cases (that turn into security bugs) that the development team may have not anticipated. The testing process takes into account both code and configuration issues in a production-like environment to ensure that issues are discovered before going live.
The Synopsys mobile application security testing methodology builds on more than 20 years of security expertise. We utilize proprietary static and dynamic analysis tools built specifically for the mobile landscape, along with manual verification and analysis, to find vulnerabilities in mobile apps. These tools are regularly updated and tested against new releases of the underlying mobile platforms, helping us identify issues that could be caused by a combination of application code and platform version.
In addition to looking for vulnerabilities in the app itself, our testing also looks for issues in the back-end services that are used by the application. By focusing both on the app and its back-end services, we ensure that all aspects of the application are covered during testing.
Learn about the 10 most common web and software app vulnerabilities
Download the reportLearn how to gain visibility and secure your apps across the enterprise
Download the white paperGet the trends and recommendations to help improve your software security program
Download the reportThree steps to consolidate your effort, insight, and tools
Download the guide