Secure Software Processes Flashcards

1
Q

Code analysis is the process of …

A

inspecting the code for quality and weaknesses that can be exploited. It is primarily accomplished by two means; static and dynamic.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

The primary advantage that a binary code analyzer has over static code analyzers is that a binary code analyzer can …

A

detect vulnerabilities and code inefficiencies that have been introduced by the compiler, since it is inspecting the compiled object code, after the compilation process. It also has the ability to look into libraries that are linked during the compilation process.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

The benefits of performing static code analysis are …

A

errors and vulnerabilities can be detected early and addressed before the deployment of the software; can be performed in the development and testing environment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Dynamic code analysis is the inspection of …

A

the code when it is being executed (run as a program).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Dynamic code analysis can be performed to ascertain that …

A

the code is reliably functioning as expected and is not prone to errors or exploitation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Code/Peer Review can be performed manually or using

tools. It is a systematic evaluation of …

A

the source code with the goal of finding out syntax issues and weaknesses in the code that can impact the performance and security of the software.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is not detected in the code review? Code review can be used to validate …

A

Semantic issues such as business logic and design flaws are usually not detected in a code review, but a code review can be used to validate the threat model generated in the design phase of the software development project.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Injection flaws check for …

A

code that makes injection attacks possible. E.g. lack of input validation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Non-repudiation Mechanisms in code review should ensure that …

A

auditing is properly implemented and that the authenticity of the code and the user or system actions are not disputable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Spoofing Attacks in code review check for code that makes spoofing attacks possible. This check should ensure that …

A

session identifiers are not predictable, passwords are not hard-coded, credentials are not cached and code that allows changes to the impersonation context is not implemented.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Errors and Exception Handling in code review must check to make sure that …

A

errors, when reported, don’t reveal more information than is necessary, and that the software fails securely when errors occur.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Cryptographic Strength in a code review that uses non-standard or custom cryptographic algorithms are considered …

A

weak and must be avoided.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Unsafe and Unused Functions and Routines must be …

A

reviewed to ascertain that deprecated and banned APIs are not used.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Reversible Code in code review can be used to …

A

determine the internal architecture and design, and implementation details of software functionality.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

For code review, privileged code is the code that violates the … As part of the code review, checks must be performed to ensure that …

A

principle of least privilege; code that requires administrative rights to execute are explicitly controlled and monitored.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

In a code review, Maintenance Hooks are intentionally introduced, seemingly innocuous code that is implemented to … These maintenance hooks should not be deployed into the production environment because …

A

primarily provide for maintenance needs; an attacker could easily take advantage of the maintenance hook and gain back door entry into the system, often circumventing all security protection mechanisms.

17
Q

In a code review, Logic Bombs are serious code security issues as they can be placed in the code and …

A

go undetected if a code review is not performed. A logic bomb can be triggered to go off to perform some malicious and unintended operation when that logic is met.

18
Q

The integrity of the build environment can be assured by …

A

Physically securing access to the systems that build code; Using access control lists (ACLs) that prevent access to unauthorized users; Using version control software to assure that the code built is of the right version; Build automation is the process of scripting or automating the tasks that are involved in the build process.