Software Development Security Flashcards
(92 cards)
Which phase of security development should security considerations take place?
All
Which of the following is not an example of computer-aided software engineering (CASE)?
A. program editors B. version-control mechanisms C. static code analysis software D. manual code review E. debugger
D
Which of the following are secure software development best practices? (Choose all that apply)
A. OWSAP B OWASP C. BSI D. ISO/IEC 27034 E. ISO/IEC 27055
B, C, D
What are the top three in the top 10 OWASP web application security risks.
A. Insecure Direct Object Reference B. Cross-Site Request Forgery (CSRF) C Cross-Site Scripting (XSS) D. Injection E. Sensitive Data exposure F. Security Misconfiguration G. Broken Authentication and Session Management H. Using Components with Known Vulnerabilities
C, D, G
This is the act of sending random data to the target program in order to trigger failures.
Fuzzing
List the five maturity levels in CMMI.
1 = Initial 2 = Repeatable 3 = Defined 4 = Managed 5 = Optimizing
This SDLC model emphasizes verification and validation at each phase.
V-Model
In this SDLC model, multiple development cycles are carried out on a piece of software throughout its development stages.
Incremental
This SDLC model takes an iterative approach that emphasizes risk analysis per iteration.
Spiral
This SDLC model creates a sample of the code for proof-of-concept purposes. Not really used to produce production code.
Prototyping
This SDLC model combines prototyping and iterative development procedures with the goal of accelerating the software development process
Rapid Application
This SDLC model has iterative and incremental development processes that encourage team-based collaboration and flexibility and adaptability instead of a strict process structure.
Agile
This is the term for a multidisciplinary development team with representatives from many or all the stakeholder populations.
IPT
Integrated Product Team
Various levels of testing should be carried out during development. Which of following is not a testing type?
A. Acceptance B. Regression C. Aggregation D. Integration E. Unit
C
Acceptance testing = Ensuring code meets customer requirements
Regression testing = Testing after changes take place
Integration = verifying components work together in the production environment.
Unit = testing individual components. Mature developers develop unit tests for their modules before they even start coding or in parallel. Known as TEST-DRIVEN development.
This type of software development testing verifies components work together in the production environment.
Integration testing
This type of software development testing takes place after changes.
Regression testing
This type of software development testing is done to ensure code meets customer requirements.
Acceptance testing
Which of the following tasks does not belong in the requirements gathering phase of SDLC? (You can choose more than one)
A. Threat modeling B. Security risk assessment C. Privacy risk assessment D. Risk-level acceptance E. Static analysis
A, E
Which of the following tasks belongs in the development phase of SDLC? (You can choose more than one)
A. Threat modeling B. Security risk assessment C. Privacy risk assessment D. Risk-level acceptance E. Static analysis
E
Which of the following tasks belongs in the design phase of SDLC? (You can choose more than one)
A. Threat modeling B. Security risk assessment C. Privacy risk assessment D. Attack surface analysis E. Static analysis
A, D
Which of the following tasks belongs in the Testing/validation phase of SDLC? (You can choose more than one)
A. Threat modeling B. Dynamic analysis C. Regression Testing D. Attack surface analysis E. Static analysis
B, C
At this level of CMMI, the company has formal processes in place to collect and analyze quantitative data and metrics are defined and fed into the process-improvement program.
A. Optimizing
B. Managed
C. Defined
D. Repeatable
B
At this level of CMMI, a formal management structure is in place and the company can properly repeat processes throughout each project, but the company does not have formal process models defined.
A. Optimizing
B. Managed
C. Defined
D. Repeatable
D
At this level of CMMI, the company has budgeted and integrated plans for continuous process improvement.
A. Optimizing
B. Managed
C. Defined
D. Repeatable
A