Fundamentals & Requirements Flashcards
(5 cards)
what is Translating User Requirements into Secure Specs
Converting user needs into specific, secure system requirements
Example – Login:
Requirement: “Users must log in”
Spec: Use multi-factor authentication and secure password hashing
Example – Payment:
Requirement: “Users can make payments”
Spec: Use TLS encryption, PCI-DSS compliance, tokenization
User-Centered Security Testing
Focuses on how users interact with security features.
4 Key Questions:
Can users see the security features?
Are they easy to understand?
Are errors easy to make?
Are alerts and messages clear?
Example: A session timeout warning that users understand and act on.
security & usability Role of User Feedback
What it is: Gathering input from users to improve security & usability.
Examples:
Password rules too strict → users bypass security → rules improved
Confusing error messages → rewritten for clarity and protection
What are the CIA Triad in Secure Coding
Confidentiality: Prevent unauthorized access (e.g., encryption)
Integrity: Prevent tampering (e.g., hashing, checksums)
Availability: Ensure systems stay up (e.g., backups, failover)
Why: CIA guides secure software architecture and coding practices
How to Secure Debugging Practices
Avoid logging sensitive data
E.g., never log passwords or tokens
Disable debug tools in production
E.g., remove Django debug toolbar
Conduct security-focused code reviews
E.g., check for access control flaws, not just bugs