Software Software Engineering
1. What are the three principles of the CIA Triad?
✅ Confidentiality, Integrity, Availability
2. What is the main goal of Secure Software Engineering?
✅ To develop software that is reliable, scalable, and resistant to attacks.
3. What are the key security considerations in the SDLC?
✅ Requirement Analysis: Identify security needs early.
✅ Design: Use secure architecture & threat modeling.
✅ Implementation: Follow secure coding practices (OWASP Top 10).
✅ Testing: Conduct penetration testing, static analysis.
✅ Deployment & Maintenance: Apply security patches regularly.
4. What is the main weakness of the Waterfall Model in security?
✅ Security is considered late in development, making it harder to fix vulnerabilities.
5. Why is the V-Model good for security?
✅ Security verification and validation are done at every phase, making it effective for safety-critical systems.
6. What is DevSecOps?
✅ DevSecOps integrates security practices into the development and operations process to ensure continuous security testing.
7. How does Agile development handle security?
✅ Security must be integrated into each sprint, with automated testing, threat modeling, and security reviews as part of development.
8. What is the difference between Use Cases and Misuse Cases?
✅ Use Case: Describes how a system should function normally.
✅ Misuse Case: Describes how an attacker could exploit vulnerabilities.
9. What is the best way to prevent SQL Injection?
✅ Use prepared statements and input validation to sanitize database queries.
10. What is Multi-Factor Authentication (MFA)?
✅ A security measure that requires multiple forms of verification (e.g., password + fingerprint).
11. What are common software security threats?
✅ SQL Injection – Use input validation & prepared statements.
✅ XSS (Cross-Site Scripting) – Sanitize user inputs & use CSP.
✅ DoS Attack – Implement rate limiting & firewalls.
✅ Phishing – Train users & enforce MFA.
✅ Buffer Overflow – Use safe coding practices.
12. What are the benefits of Security Testing?
✅ Identifies vulnerabilities before attackers do.
✅ Ensures compliance with security policies (e.g., GDPR, HIPAA).
✅ Reduces the cost of fixing security flaws later in development.
13. What is Kanban?
✅ A visual workflow management method that focuses on continuous delivery and work-in-progress limits.
14. How does Kanban compare to Scrum?
15. What are the key security practices in Kanban?
✅ Security Tasks Always Visible – Create a security-focused column.
✅ Continuous Security Testing – Regular penetration testing.
✅ Prioritize Security Fixes – Address high-risk vulnerabilities first.
✅ Security Reviews – Conduct regular audits.
16. What is the biggest lesson from the Equifax Data Breach?
✅ Unpatched vulnerabilities led to 147 million records being leaked, proving the importance of regular software updates.
17. What are some security testing methods?
✅ Static Code Analysis – Scans source code for security flaws.
✅ Penetration Testing – Simulates hacker attacks.
✅ Fuzz Testing – Sends random inputs to check for crashes.
✅ Access Control Testing – Ensures unauthorized users cannot access sensitive data.
18. What is Role-Based Access Control (RBAC)?
✅ A security model where access permissions are assigned based on a user’s role in the organization.
19. Why is Patch Management important?
✅ Patching software regularly fixes known vulnerabilities before attackers exploit them.
20. What is the "Principle of Least Privilege"?
✅ Users and applications should only have access to the minimum necessary data and permissions to perform their tasks.