Soft Sec Final Flashcards
Difference between software security engineering and software engineering
software engineering is focused on building/making software, whereas software security is focused on the software’s security features
Difference between software testing and security testing
software testing is looking for bugs whereas security testing is trying to find vulnerabilities
Define penetrate and patch
A design flaw of poor coding that may allow an attacker to cause damage
Vulnerability
Software, data, or commands that take advantage of a weakness to cause unanticipated or unexpected beahviour
Exploit
An actor or agent that is a source of danger to a system
Threat
Failure of human cognition that can lead to problems
Human Error
Difference between a vulnerability and an exploit
vulnerability is a bug or flaw within the code, whereas the exploit is the action of manipulating the vulnerability
What is the recommended approach for mitigating SQL Injection vulnerabilities?
Sanitize all inputs and data validation
What does STRIDE?
Spoofing, Tampering, Repudiation, Information, Denial of Service, Elevation of Privilege
What does CIA stand for?
Confidentiality, Integrity, Availability
In session hijacking, you can attack someone by pretending to be them by stealing their information. Which part of the system are you violating?
Authentication
What is true about pen testing?
Is about attempting to exploit as much as possible, demonstrates the person-hours required to break into a system, requires a working system
What is functional and adversarial security testing?
Functional tests the security mechanisms defined in the requirements, whereas adversarial testing uses a risk based approach to simulate an attacker
Difference between misuse and abuse cases?
abuse cases are ways to exploit/take advantage whereas misuse are mistakes
What are some examples of security by obscurity?
Placing admin page on a web page that has no links, and requiring a difficult to guess password for authnetication
What is defense in depth?
someone breaks the first line of protection, but they cannot get any further
What is least privilege?
Every user or module should be allowed minimum access required
What does is mean to fail securely?
Make sure the error messages and exceptions do not reveal information or leave the system vulnerable