How to Integrate Mobile Security into App Development

In a bid to protect their network perimeters from hackers and other forms of online-borne threats, most app development companies spend a tremendous amount of money, time and resources shielding their systems. Unfortunately, most of these defensive efforts have not been good enough to withstand these threats as they often fall short in addressing some of the vulnerabilities within the network at the application layer.

The application layer is one of the most vulnerable risk areas in a system. According to recent studies, this is where some of the most damaging effects of mobile insecurity are experienced. Apart from the lack of protection, this potential damage can also occur through insider targets. These devastating effects can harm the reputation of a company, its customers and even the company itself due to the exposure of confidential information.

No doubt, web application security can be affected through many variable means; however, these vulnerabilities can be eliminated by improving security in certain key areas. As a matter of fact, app developers must shun the habit of retrofitting security after an app has been developed. Rather, security should be included in the initial application development phase. Although some professionals debate over the location and timing of security integration and testing during the development process, it is important to know that no one would argue about its efficiency.

As more and more providers try to support development teams with incentives on how to effectively integrate security during the application development process, giant strides have been achieved in this area, particularly within the software industry. Security integration for application development is simply a process of negotiation and not an all-or-nothing decision. When integrating security into application development, there are certain things mobile app developers must know.

Review at the Initial Stage
The initial review is the first step to security integration during the application development lifecycle. At this level, the security team seeks to assess various forms of initial risks. Both the development team and the security team must work in unison, so as to understand:

•    The business continuity requirements for application availability
•    The procedures and processes involved
•    Policy drivers
•    Suitable technical environment for the development and deployment of the app
•    The purpose of the app based on market and user context

Model Threat at the Definition Phase
In order to identify those sensitive areas where apps deal with sensitive information, there is need for threat modeling. Also, the security team needs to work with developers at this level to discover this. Apart from helping to identify critical areas requiring additional security attention in the app’s infrastructure, the model can also be used to map information flow.

For potential vulnerabilities, these professionals need to develop mitigation strategies, as soon as those entry points and critical areas have been identified. Of course, this should be done after the app has been modeled. It is important to know that if a secure foundation must be achieved, as well as an efficient use of resources, developers must ensure to perform threat modeling at the early stages of the app’s development lifecycle. As the app evolves in complexity, there is every need to continue this process throughout the development phase.

Review Design at the Design Phase
As a crucial aspect of the design phase, application design reviews go a long way in helping developers identify and resolve security risks at the early stage of the development process. As a rule of thumb, this review should be conducted by an independent moderator who isn’t a member of the development team. Apart from reviewing app documents, this process also involves interviewing app owners and developers. This method of review helps to inculcate the business purpose of the app at the helm for better analysis.

At every stage of the process, it is recommended that reviews should be conducted. Before an app is launched, reviews should be conducted at the end of every development phase and at the beginning of the design phase (i.e. before codes are written).

Review Code at the Development Phase
This is when the coding and development aspects of the system are performed. Throughout the development process, there is every need to conduct relevant security testing against each unit particularly when testing is completed for modules and phases. For best security practices, it is advisable to review codes and test units. At this point, developers’ attention tends to shift from software to hardware and the corresponding network environment. It’s highly appropriate to ensure trust and segments relationships. In a bid to configure and administer secure application software, servers tend to be hardened particularly at the operating system level.

Assess Risk at the Deployment Phase
Conducting a quality risk assessment prior to the deployment of an app is a great step in the right direction especially when it comes to setting a standard for the live application. Although security reviews are required throughout the process, it is imperative to establish a meaningful strategy to mitigate risks particularly when they have been benchmarked for the ‘go live’ application.

Mitigate Risk for App Development
Once the security team identifies the control needed to mitigate risks identified while assessing vulnerabilities, it becomes essential to prioritize, evaluate and implement the identified controls. In order to effectively implement the most appropriate controls, it is advisable to implement approaches that are least expensive.

For instance, some compensating options (like purchasing insurance) can be used to transfer risk; developers can also decide to remove the causing agent to avoid risk while reducing vulnerabilities to an acceptable level. During the decision-making process, it is needful for all appropriate teams to work in tandem with the security team, so as to be able to identify and use the most appropriate options for every recognized risk.

Benchmark Against Industry Standards
Any mobile app development company looking to achieve a security scorecard must be willing to benchmark the resulting app against industry standards. Through this executives can determine whether those efforts made to integrate security correspond with industry averages or whether there are some loopholes to amend. Based on the security criteria relevant to the company, many phases can be benchmarked to correspond to industry averages like:

•    The Sarbanes-Oxley Act
•    The Health Insurance Portability and Accountability Act (HIPAA)
•    California SB 1386
•    NIST SP 800-30 guidelines
•    The Gramm-Leach-Bliley Act
•    Open Web Application Security Project (OWASP) guidelines
•    BS 7799 guidelines

While it’s recommended to benchmark your application for internal improvements, it is also very essential to perform security benchmarking against other programs that share the same similarity within the specific industry of the organization.

What’s Hot on Infosecurity Magazine?