Secure Architecture Process
It is a well defined process for ensuring that the software system is as secure as possible. It goes through all phases of the software system. Architect must be involved in all the stages of the process. Based on the inputs from other stakeholders, architect will be able to design a secure architecture that best fits their needs.
The secure architecture process has 5 stages :
1.Threat Modeling
2. Secure Architecture
3. Secure Development Life Cycle (SDLC)
4.Testing
5.Production
Threat Modeling
Threat modeling is the process for identifying potential threats for the system. In this process the mitigation measures are prioritized and actions to defend the system are decided. The threat modeling has a great effect on the work plan. The decisions made in this stage are helpful in designing and developing the system. The threat modeling involves everyone in the team and every input is valuable.
Secure Architecture
The purpose of this stage is to integrate security defense mechanisms into the core architecture from beginning. If security mechanisms are integrated from beginning then it will make architecture more coherent, easier to understand and more secure. The secure architecture has impact on all aspects of the system.
Secure Development Life Cycle
In this stage actual code is written based on the secure architecture designed in earlier stages and code level security measures are implemented.
Example - Include SQL injection protection in the code.
领英推荐
Testing
This phase makes sure the system is actually secure. Testing team performs security related testing on the system according to threat modeling items. Testing results are analyzed and based on the testing results, code change might be required.
Production
When code is deployed in production then continuous monitoring is required to make sure no attack is run against our system. Keeping the system up to date is part of this stage. If there are new security patches for the operating system, they should be installed.
Why we need software security?
Using software security, we protect our system against data loss, disruption of service, data leak and data inconsistency.
Data Loss:
Data loss occurs when data is lost due to security breach.
Example- When some hacker gains access to the database and deletes some records.
Disruption of Service:
Disruption of service is when the system is down due to attacker's actions and system is unable to process the requests from users.
Data Leak:
Data Leak occurs when a sensitive data is stolen by hackers.
Example- Credit card information is accessed by hackers.
Data Inconsistency:
Data inconsistency occurs when data is manipulated by attackers and data becomes inconsistent.