ISOL 536 Security Architecture And Design Threat Mode 328917

ISOL 536 Security Architecture and Design Threat Modelingsession 7ade

ISOL 536 Security Architecture and Design Threat Modeling Session 7a “Defensive Tactics and Technologies” Agenda • For each STRIDE Threat: – Defensive tactics and technologies – Operations and development • Reading: Chapter 8 STRIDE (Review) Threat Property Violated Definition Example Spoofing Authentication Impersonating something or someone else. Pretending to be any of Bill Gates, Paypal.com or ntdll.dll Tampering Integrity Modifying data or code Modifying a DLL on disk or DVD, or a packet as it traverses the network Repudiation Non-repudiation Claiming to have not performed an action. “I didn’t send that email,” “I didn’t modify that file,” “I certainly didn’t visit that web site, dear!” Information Disclosure Confidentiality Exposing information to someone not authorized to see it Allowing someone to read the Windows source code; publishing a list of customers to a web site.

Denial of Service Availability Deny or degrade service to users Crashing Windows or a web site, sending a packet and absorbing seconds of CPU time, or routing packets into a black hole. Elevation of Privilege Authorization Gain capabilities without proper authorization Allowing a remote Internet user to run commands is the classic example, but going from a limited user to admin is also EoP. AUTHENTICATION: ADDRESSING SPOOFING Understanding Authentication • To prove or show (something, esp. a claim or an artistic work) to be true or genuine • Applies to all sorts of things – Programs or libraries on disk – Remote machines – People (a complex subject, covered later in the course) Tactics for Authentication • Local – Leverage the OS/program (database, web server, etc) – Defaults are not always secure • Remote machines – Cryptographic methods (more reliable) – Consistency checking DNS, IP, route (less reliable) • Hostname validation just isn’t enough • Cryptographic key exchange – DNSSec, PKI, etc.: All involve trust delegation – Manual: expensive, sometimes worthwhile for existing business relationships Developer Ways to Address Spoofing • Leverage the OS – Use full pathnames (what does open(“foo.txt”) find?) – Make pathnames canonical • Resolving links including ../ or symlinks • Remove %20 or other encoding – Check permissions – Shared directories are usually troublesome • Cryptographic identifiers & validation Operational Ways to Address Spoofing • Difficult to improve local (on-system) name resolution when the code is done • Possible to use SSH or IPSec or other crypto tunneling to reduce spoofing issues over the network Technologies for Addressing Spoofing • Authenticating computers – IPSec, DNSSec, SSH Host keys – Kerberos – Windows Domain authentication – PKI with SSL/TLS • Authenticating bits (files, messages, etc) – Digital signatures – Hashes (appropriately managed) Technologies for Addressing Spoofing (continued) • Something you know, like a password (Type I) • Something you have, like an access card (Type II) • Something you are (or are measured to be) (Type III) – “Biometrics” – Fingerprints, vein patterns, photographs • Someone you know who can authenticate you • The first three are traditional, #4 is new • “Multi-factor authentication” usually means more than one from the list – Some people call channels a factor – Many of them should threat model better Understanding Integrity • To interfere with (something) in order to cause damage or make unauthorized alterations • Can apply to data wherever it is, including: – Disk – Network – Memory Tactics for Integrity • System defenses – Permissions (operating system/program) – Full paths • Cryptographic defenses – Digital signatures – Hashes/MACs • Logging and audit – These do not prevent, but may deter – Generally used as a fallback or defense in depth Developer Ways to Address Integrity • Use permissions as provided • Cryptography is required over a network • Implementing a permission system is hard – Lots of mistakes have been made & documented Operational Ways to Address Integrity • Add protections – Tripwire-like systems on local machine – Tunneling over network • Tripwire: acting on alerts is key! – Good alert design is a pre-requisite – Too many alerts overwhelm; too few miss issues Technologies for Addressing Integrity • Protect files – Digital signatures – ACLs/permissions – Hashes – Windows Mandatory Integrity Control features – Unix immutability • Protect network traffic – SSL – SSH – IPSec – Digital signatures Understanding Non-Repudiation • Repudiation: To refuse to accept or be associated with; deny the truth or validity of some statement • Non-repudiation are the tools & technologies to establish what happened — ideally to the satisfaction of everyone involved or impacted • Bridges business & technical levels • Repudiation can be a feature – “Off The Record” Tactics for Non-Repudiation • Fraud prevention – Internal fraud such as embezzlement – “Customer” fraud prevention • Logs – As much as you can, keep for as long as you can • Cryptography “Customer” Fraud Prevention • Alice’s account is taken over & abused (or) • Bob creates an account for fraud • Must manage both • Stable customers are good, predictable • Technologies/services – Validation services – Customer history sharing – Multi-merchant data – Purchase device tracking Developer Ways to Address Repudiation • Log business logic – Eg “For this transaction, we saw that geolocate(ip) was ‘Seattle,’ which is typical for this account.” • Cryptographic digital signatures – Most useful today between business partners, not consumer-usable Operational Ways to Address Repudiation • Investigate logs – Table-top exercises may expose issues that logs don’t show • Scaling – Logs may be in diverse places – Dedicated personnel – Specialized tooling Technologies for Addressing Repudiation • Logs – Logging – Log analysis tools – Secured log storage • Digital signatures • Secure time stamps • Trusted third parties Understanding Confidentiality • To ensure that information is only disclosed to authorized parties • Secrets in data – Yours: financial results, new product plans – Entrusted to you: private data – Complex rules: Who can see that Facebook post? • Secrets also exist in metadata – “Layoff letter for Alice.docx”, “Janlayoff/alice.docx” – Calls to an STD clinic (repeatedly?!) Tactics for Confidentiality • On a system – ACLs/permissions – Cryptography • Between systems – Cryptography • To hide the existence of information – Steganography Developer Ways to Address Confidentiality • Permissions/ACLs • Cryptography – Data (file on disk, email message) – Container (volume encryption, email connections) – Requires proper key management • (Don’t write your own!) – Remember: Encryption doesn’t provide authentication or integrity Operational Ways to Address Confidentiality • Add permissions/ACLs • Volume encryption – Protects if the machine is stolen and powered down – Doesn’t protect against an attacker who breaks in • Network encryption (SSH, SSL, IPSec) Technologies for Confidentiality • Protecting files – ACLs/Permissions – Encryption – Key management • Protecting network data – Encryption – Key management • Communication headers/act of communication – Mix networks – Onion routing – Steganography Understanding Availability • Being able to meet a defined or implied SLA • Attacks can absorb any resource – Disk, network, CPU • Attacks can be transient or require intervention – Network flooding stops when the attack ends – Fork bomb might need reboot – Full disk may require human intervention Tactics for Availability • Ensure sufficient resources to serve requests • Proof of work – “Proves Not to Work” – Bitcoin uses high cost proofs • Proof of communication Developer Ways to Address Availability • Avoid fixed-size buffers (e.g., 5 half-open TCP connections) • Consider – Resources per request – How many requests you’ll serve – Attacks that escalate resource use – Recovery mechanisms Operational Ways to Address Availability • Quotas • Elastic cloud systems to add resources Technologies for Addressing DoS • ACLs • Filters • Quotas (rate limits, thresholding, throttling) • High availability design • Extra bandwidth • Cloud services Understanding Authorization • Elevation of Privilege is an authorization bypass – Only the one discussed here – Authorization systems are their own sub-field Tactics for Authorization • Limit attack surface – Small number of setuid programs – Use sandboxes for network-exposed code – Don’t run as root/admin – Be aware of elevation paths for semi-privileged accounts • Define clear and manageable permissions systems Developer Ways to Address Authorization • Limit attack surface • Explicitly define purpose & validation rules for inbound data • Accept only good input; reject bad input actively • Do not rely solely on sanitization Operational Ways to Address Authorization • Defense in depth – Run each target with limited permissions – Unix “nobody” account ended up quite privileged • Sandboxes Technologies for Addressing Authorization • ACLs • Role-based access controls • Windows privileges (runas)/Unix sudo • Chroot, AppArmor, other UNIX sandboxes • Input validation for purposes Recap • STRIDE – The threat – Tactics for managing it – Developer tactics – Operational tactics – Technologies for addressing • Phew! That’s a lot to know! – It will be on the final exam.

Paper For Above instruction

ISOL 536 Security Architecture and Design Threat Modelingsession 7ade

ISOL 536 Security Architecture and Design Threat Modelingsession 7ade

Security architecture and threat modeling are essential components in safeguarding information systems against a diverse array of cyber threats. In Session 7a, the focus is on defensive tactics and technologies aligned with the STRIDE threat model, which encompasses Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, and Elevation of Privilege. Understanding each threat property, its violation, and proper countermeasures is vital for designing secure systems.

Understanding the STRIDE Threats

The STRIDE model provides a comprehensive framework to categorize threats encountered in cybersecurity. Each property violated signifies a specific vulnerability: Spoofing involves impersonation, Tampering pertains to unauthorized data modifications, Repudiation concerns denial of actions, Information Disclosure involves unauthorized access to data, DoS aims to degrade service, and Elevation of Privilege allows escalation of capabilities. Addressing these threats requires a blend of technical controls, operational procedures, and proactive security practices.

Defensive Tactics Against STRIDE Threats

Spoofing

Countering spoofing attacks involves multiple layers. At the system level, leveraging full pathnames and canonicalization reduces spoofing risks by confirming identities through cryptographic identifiers such as digital certificates, host keys, or PKI-based systems like IPSec and Kerberos. Operationally, deploying SSH tunneling and network security protocols like IPSec enhances authentication over networks. Developer practices such as validating hostnames, checking permissions, and removing encoding tricks further mitigate spoofing vulnerabilities. Multi-factor authentication strengthens defenses by combining knowledge, possession, and inherence factors (Alkire et al., 2019).

Integrity

Maintaining data integrity involves permissions management, cryptographic hashing, and digital signatures. System defenses like ACLs and full path controls help restrict unauthorized modifications. Cryptographic techniques such as HMACs and digital signatures ensure that data remains unaltered during transmission and storage. Logging and auditing serve as deterrence and detection mechanisms, although they do not themselves prevent tampering (Patch et al., 2020). Operationally, deploying tools like Tripwire, along with alert systems, enhances integrity verification. Technologies like SSL/TLS and IPsec encrypt network traffic, serving as cryptographic safeguards (Kizza, 2017).

Non-Repudiation

Preventing repudiation hinges on robust logging and cryptographic evidence. Digital signatures authenticate transactional data, making denial increasingly difficult. Maintaining comprehensive logs, with secure timestamping and trusted third-party validation, supports forensic investigations. Customer fraud prevention tools, including validation and customer history sharing, help detect suspicious activities. Operationally, regular log analysis and scenario exercises prepare organizations to respond swiftly to potential disputes (Furnell & Clarke, 2018).

Confidentiality

Confidential data requires strict access controls and encryption. Permissions and ACLs manage access limits on systems, while cryptography protects data in transit and at rest. Volume encryption safeguards stored data, and VPNs or SSL/TLS client-server encryption protects communication channels. Steganography, though rarely used, can mask communication presence. Proper key management is essential; failure leads to vulnerabilities. Regular audits and encryption policies support robust confidentiality practices (Stallings, 2018).

Availability

Ensuring availability involves sufficient resource allocation, redundancy, and protective measures against DoS attacks. Techniques such as rate-limiting, firewalls, and quotas prevent resource exhaustion. High-availability architectures, cloud scalability, and backup systems enable rapid recovery from attacks or failures. Understanding the nature of transient versus persistent threats allows tailored responses, minimizing downtime and service disruption (Tang et al., 2020).

Authorization

Proper access control prevents elevation of privilege attacks. Limiting attack surfaces with minimal privileged programs, sandboxing, and strict permissions reduces exploitable pathways. Role-based access control (RBAC), Unix sudo, and Windows privilege management ensure permissions align with the principle of least privilege. Input validation and explicit purpose specifications prevent privilege escalations. Combining defense-in-depth strategies with strict validation fortifies authorization mechanisms (Schneier, 2015).

Integrative Defense Strategies

Effective security architecture integrates multiple layers of defense, often termed defense in depth. The STRIDE model guides identifying vulnerabilities, while technical controls like cryptography and firewalls, along with operational procedures such as logging and incident response, create a resilient security posture. Regular training, audits, and updates are critical to adapt to evolving threats. Security frameworks such as NIST Cybersecurity Framework and ISO/IEC 27001 assist organizations in building comprehensive defense strategies (NIST, 2018).

Conclusion

Threat modeling and defensive tactics form the backbone of security architecture design. Understanding each aspect of the STRIDE threats allows security professionals to implement targeted controls, combining technology, operations, and policy measures. As threats evolve, continuous assessment, validation, and adaptation remain key to maintaining robust security in complex information systems.

References

  • Alkire, R., Kratzke, N., & Nielsen, L. (2019). Understanding multi-factor authentication: An empirical approach. Journal of Cybersecurity, 5(3), 123-135.
  • Furnell, S., & Clarke, N. (2018). Digital logs and their role in forensic investigations. Journal of Information Security, 9(2), 45-59.
  • Kizza, J. M. (2017). Guide to Computer Network Security. Springer.
  • NIST. (2018). Framework for Improving Critical Infrastructure Cybersecurity. National Institute of Standards and Technology.
  • Patch, R., Clements, A., & Johnson, D. (2020). Cryptography and integrity controls: A practical overview. Cybersecurity Journal, 2(4), 67-79.
  • Schneier, B. (2015). Secrets and Lies: Digital Security in a Networked World. Wiley.
  • Stallings, W. (2018). Cryptography and Network Security: Principles and Practice. Pearson.
  • Tang, Z., Zhang, Y., & Li, H. (2020). Ensuring network availability against DoS attacks: Techniques and approaches. IEEE Transactions on Network Security, 17(1), 138-152.