Security (1,2,3)
Security (1,2,3)
of Software
Security Group
Assignment
Group 2
Introduction
• Security design principles create reliable, attack-resilient
software.
• Focus on safeguarding sensitive data and preventing
unauthorized access.
• Examples: Misconfigurations, weak access controls, and
poor input validation.
Authentication
• Verifies identity: "Who are you?"
• Common methods: Passwords, biometrics, and multi-
factor authentication.
• Example: Online banking requiring OTPs for secure login.
Authorization
• Determines "What are you allowed to do?"
• Uses roles, policies, and access control lists (ACLs).
• Example: Teachers viewing grades only for their students
in a school portal.
Dependency of Authentication and
Authorization
• Authorization requires prior authentication.
• Without authentication, authorization allows unrestricted
access.
• Analogy: Hotel ID check before issuing a room key.
Confidentiality
• Protects sensitive data from unauthorized access.
• Mechanisms: Encryption, secure channels, and access
controls.
• Example: Encrypted messaging apps ensure private
communication.
Integrity
• Ensures unaltered, trustworthy data.
• Tools: Hashing, checksums, and digital signatures.
• Example: Digital signatures verify contracts remain
unchanged
Confidentiality and Integrity
Interdependence
• Confidentiality without integrity risks tampered data.
• Integrity without confidentiality exposes accurate data to
attackers.
• Both are essential for secure communication.
Accountability
• Links actions to individuals or systems, ensuring
traceability.
• Key mechanisms: Logging and audit trails.
• Example: ATM logs link transactions to specific
cardholders.
Non-Repudiation
• Prevents users from denying actions they performed.
• Mechanisms: Digital receipts, timestamps, cryptographic
proofs.
• Example: E-commerce receipts confirm purchase details.
Denial-of-Service (DoS) Attacks
• DoS disrupts legitimate access by overwhelming
resources.
• Examples: Connection flooding and idle connection
exploits.
• Mitigation: Rate limiting, load balancing, and traffic
monitoring.
File Upload Risks
• Threats: Malicious uploads, DoS via large files, path
traversal attacks.
• Mitigation: File type validation, antivirus scanning, and
size restrictions.
• Example: Restrict uploads to verified file types like
images or PDFs.
Privilege Escalation
• Attackers exploit weak permissions to gain unauthorized
access.
• Example: Gaining admin rights via misconfigured
accounts.
• Mitigation: Enforce the least privilege principle and
sanitize inputs.
Path Traversal
• Exploits directory paths to access unauthorized files.
• Example: Manipulating upload paths to read sensitive
server files.
• Mitigation: Limit file access, enforce directory
restrictions.
Mitigation Strategies Overview
• Validate user inputs to prevent malformed or malicious
data.
• Apply least privilege principles to reduce damage from
attacks.
• Conduct regular audits to detect and resolve
vulnerabilities.
Conclusion
• Combine authentication, integrity, and accountability for
robust security.
• Proactive strategies protect systems and build user trust.
• Security must evolve with changing threats.
What is an Idle Connection
Attack?
• Idle Connection Attack: The client connects to the
server but does nothing—it doesn't send any data or
disconnect.
• Impact on Server: The server's resources are
consumed by these open, idle connections.
• Result: Legitimate users cannot access the server
because all resources are used up.
How Does the Attack Work?
1. Resource Exhaustion:
Every open connection uses memory and server resources (e.g., file descriptors).
If too many clients stay idle, the server runs out of resources, making it unavailable for real users.
2.Connection Flooding:
An attacker can create multiple idle connections, flooding the server and making it slow or unresponsive.
2.Connection Timeouts:
Definition: Close connections that are idle for too long.
Benefit: Frees up server resources for real users.
Cont..
3.Load Balancing:
Definition: Spread incoming traffic across multiple servers.
Benefit: Ensures no single server gets overloaded.
4.IP Blacklisting/Whitelisting:
Definition: Block suspicious IP addresses or only allow trusted
ones.
Benefit: Prevents known attackers from reaching the server.
5.Web Application Firewalls (WAF):
Definition: Use a firewall to filter traffic before it reaches the
server.
Benefit: Helps identify and block malicious requests.
Advanced Defense Tactics
Session Management:
• Definition: Limit the number of simultaneous sessions per user.
• Benefit: Prevents resource exhaustion by a single user.