This project is part of our study on Common Vulnerabilities and Exposures (CVE) and Malware Development (MalDev). The goal is to understand how ransomware operates at a conceptual and technical level by building a controlled, educational prototype in a lab environment.
⚠️ This project is strictly for educational purposes in a controlled environment only. It must NOT be used on real systems or without explicit authorization.
-
Understand the fundamentals of ransomware behavior
-
Explore how malware interacts with:
- File systems
- Cryptographic functions
- Network communication
-
Study how vulnerabilities (CVEs) can be leveraged in attack chains
-
Gain hands-on experience in reverse engineering and defensive analysis
A Common Vulnerabilities and Exposures (CVE) is a publicly disclosed security flaw. Attackers often use CVEs as an initial access vector to deliver malicious payloads.
Example attack chain:
CVE Exploit → Initial Access → Payload Execution → Persistence → Ransomware Activity
Ransomware is a type of malware that:
- Encrypts victim files
- Denies access to data
- Demands payment (ransom) for decryption
Core components:
- File discovery
- Encryption mechanism
- Key management
- Communication with attacker (C2 / key server)
Most modern ransomware uses a combination of:
-
Symmetric encryption (fast) → Used to encrypt files (e.g., AES)
-
Asymmetric encryption (secure key exchange) → Used to protect the encryption key (e.g., RSA)
Typical workflow:
Generate symmetric key → Encrypt files → Encrypt key with RSA → Send to server
A key server / C2 server is used to:
- Store encryption keys
- Receive victim information
- Control infected machines
In this lab:
- A simple Flask-based server simulates key exchange
- C → low-level socket & system interaction
- Python (Flask) → key server (C2 simulation)
- Cryptography library → RSA key generation & serialization
- Pandas → simple key storage/logging
- Sockets (WinSock) → network communication
- Exploit simulation (optional, via CVE)
- Payload execution on victim machine
- File scanning and filtering
- File encryption process
- Key generation and encryption
- Key sent to attacker-controlled server
- Server stores keys for later decryption
This project also helps understand how to defend against ransomware:
- Patch known CVEs
- Monitor abnormal file access patterns
- Detect suspicious encryption behavior
- Analyze network traffic to unknown servers
- Use EDR/AV solutions
This project is intended strictly for:
- Cybersecurity education
- Malware analysis training
- Controlled lab environments
Any misuse of this knowledge:
- May violate laws
- May cause serious damage
Always obtain proper authorization before testing.
- MITRE CVE Database
- NIST Vulnerability Database
- Malware analysis reports (e.g., WannaCry, LockBit)
This project is part of a hands-on approach to learning:
- Reverse Engineering
- Exploit Development
- Malware Analysis
The focus is on understanding how attacks work in order to build better defenses.