Chapter 2
Chapter 2
Computer Threat
Contents
Malicious code
Class of Attacks
Program flaws
Reconnaissance
Access
Examples:
Port scanning
Network mapping
Examples:
Distributed Denial of Service (DDoS) attacks (using multiple systems to overwhelm the target)
compromised systems (a "botnet") flood a target with traffic, overwhelming its resources
Buffer overflows
Incomplete mediation
Program flows
of memory) than it can hold, causing the excess data to overwrite adjacent memory
locations.
Impact:
May allow attackers to execute arbitrary code, escalate privileges, or gain unauthorized access
to the system.
Common Causes:
Impact:
Can result in race conditions, where an attacker exploits the timing gap to manipulate the resource.
Common Causes:
Common Causes:
Relying on client-side validation without server-side enforcement.
Shift-Left: Address security early in development (e.g., threat modeling during design).
Cont.
Enforce strong passwords and multi-factor authentication (MFA) for database users.
Use centralized identity providers (e.g. Active Directory) for user management.
Authorization:
Apply the Principle of Least Privilege: Grant users only the permissions they need.
Use Role-Based Access Control (RBAC) to manage permissions via roles (e.g., admin, read-
only).
Encryption
Data at Rest:
Encrypt database files, backups, and storage media using AES-
256 or TDE (Transparent Data Encryption).
Data in Transit:
Use TLS/SSL to encrypt communication between clients and
the database.
Column-Level Encryption:
Encrypt sensitive fields (e.g., credit card numbers, SSNs)
individually.
Backup and Recovery
Regular Backups:
Schedule automated backups and store them securely (offsite or in immutable
storage).
Data Masking/Redaction:
Anonymize sensitive data in non-production environments (e.g., test
databases).
Any Questions