Computer Information & Security
Lecture 29 to 35
By:
Dr. Asif Aziz Memon
Dawood University of Engineering
and Technology Karachi, Pakistan.
Outline
• Software Security
• Introduction
• Importance
• Common Software Vulnerabilities
• Exploiting Vulnerabilities
• Protection against software vulnerabilities
• Malware
• Types
• Delivery Methods
• Protection against malware
Software Security
Definition: Software security is the practice of designing and
implementing software that is resilient to attacks and failures.
Focuses on protecting the integrity, availability, and
confidentiality of software systems.
Importance: Software vulnerabilities are common attack vectors
for cybercriminals.
Protects data, user privacy, and critical infrastructure
Common Software Vulnerabilities
• Buffer Overflow – Occurs when a program writes more data to a buffer
than it can handle, leading to memory corruption and potential code
execution.
• SQL Injection – An attacker inserts malicious SQL code into a query, gaining
unauthorized access to a database.
• Cross-Site Scripting (XSS) – Malicious scripts are injected into web
applications, affecting users.
• Race Conditions – A flaw where the timing of actions causes inconsistent
behavior and can lead to security breaches.
Exploiting Vulnerabilities
• How Attackers Exploit Vulnerabilities:
• Reverse engineering software to find flaws.
• Using automated tools to scan for known vulnerabilities.
• Exploiting improperly configured systems or insecure coding practices.
• Consequences of Exploits:
• Unauthorized access to systems or data.
• Data theft, corruption, or loss.
• Denial of service (DoS) attacks.
Protection Against Software Vulnerabilities
• Secure Coding Practices:
• Input validation: Ensures all input is checked for expected formats.
• Avoiding hardcoded credentials: Use secure credential storage.
• Principle of least privilege: Limit user permissions to the bare minimum
required.
• Software Updates:
• Regular patching and updates to fix vulnerabilities.
• Security updates often close gaps that attackers could exploit.
Protection Against Software Vulnerabilities
• Static and Dynamic Analysis:
• Static analysis tools identify vulnerabilities in source code.
• Dynamic analysis tests software during runtime to detect
vulnerabilities.
• Code Reviews:
• Peer code reviews help identify and fix vulnerabilities early in
the development process.
Malware
• What is Malware?
Malicious software designed to damage, disrupt, or gain
unauthorized access to a computer system.
Can come in the form of viruses, worms, Trojans, ransomware, and
spyware.
• Why is Malware Dangerous?
• Causes data theft, system failure, financial loss, and reputational
damage.
Malware
• Virus:
• A self-replicating program that spreads by attaching itself to files or
programs.
• Worm:
• A standalone malware that replicates itself and spreads across networks.
• Trojan Horse:
• Malware disguised as legitimate software, often delivering additional
malicious payloads.
• Ransomware:
• Malware that encrypts the victim’s data and demands a ransom for
decryption keys.
• Spyware:
• Software that secretly monitors and collects user information.
Malware Delivery Methods
• Email Attachments:
• Often disguised as legitimate files to trick users into downloading malware.
• Phishing Links:
• Malicious URLs that lead to websites designed to steal user information or
install malware
• Drive-by Downloads:
• Exploit vulnerabilities in web browsers to automatically download and execute
malware without user interaction.
• Malicious Ads (Malvertising):
• Ads infected with malware, which can execute when users click on them.
Protection Against Malware
• Antivirus Software:
• Detects and removes malware from systems based on known signatures and
heuristics.
• Firewalls:
• Prevent unauthorized access and monitor network traffic for malicious activity.
• Endpoint Security:
• Protects individual devices (e.g., computers, smartphones) from malware and
unauthorized access.
• User Awareness Training:
• Educating users to recognize phishing emails and suspicious attachments or links.
• Regular Backups:
• Backing up critical data regularly to minimize the impact of ransomware and other
destructive malware.
Case Study: The Impact of Malware
• WannaCry Ransomware (2017):
• Spread globally, affecting organizations such as the NHS.
• Exploited vulnerabilities in Windows SMB protocol.
• Demonstrated the importance of regular security patches and rapid response
to zero-day exploits
Thank you