Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/link-wolf/stockholm
42 project - Prototype of a ransomware, without the ransom
https://github.com/link-wolf/stockholm
42 42born2code 42school cpp cybersecurity linux malware ransomware
Last synced: 9 days ago
JSON representation
42 project - Prototype of a ransomware, without the ransom
- Host: GitHub
- URL: https://github.com/link-wolf/stockholm
- Owner: Link-Wolf
- Created: 2023-09-14T14:51:50.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-09-25T13:03:03.000Z (4 months ago)
- Last Synced: 2024-11-29T00:08:30.494Z (2 months ago)
- Topics: 42, 42born2code, 42school, cpp, cybersecurity, linux, malware, ransomware
- Language: C++
- Homepage:
- Size: 202 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Piscine Cybersecurity - stockholm
Harmless malware
A ransomware without the ransom
Report Bug
·
Request Feature
Table of Contents
## Goal
This cybersecurity project aims to understand how a malware works and focus on ransomware.In our case the program will only affect a small portion of the local files.
Since it's only a prototype, there's isn't any ransom to pay to decrypt the files. Plus, the program will only affect the files in the `~/infection` directory and the spread will stay local.
> The program is written in C++
## Getting Started
Because it's a simple C++ project, there isn't much to say here
> NOTE: Despite the fact that the program is an harmless malware, it's still a malware. So please, don't use it on your computer but on a virtual machine and more importantly don't use it for malicious purposes.
### Prerequisites
Having a C++ compiler like c++
### Installation
1. Clone the repo
```sh
$> git clone https://github.com/Link-Wolf/stockholm.git
```2. Compile the program
```sh
$> cd stockholm
$> make
```3. Execute it
```sh
$> ./stockholm [(-h|--help)|(-v|--version)] [(-s|--silent)] [(-r|--reverse) KEY]
```> The `-h` (or `--help`) option is used to display the help message
> The `-v` (or `--version`) option is used to display the version of the program
> The `-s` (or `--silent`) option is used to run the program in silent mode and avoid the display of each file affected
> The `-r` (or `--reverse`) option is used to decrypt the files affected by the program. The `KEY` is the key used to decrypt the files## Usage examples
![](assets/pre_infection.png)
The whole `~/infection` directory is affected by the program
![](assets/infection.png)
Decrypting the files with the key
![](assets/uninfection.png)
## Contributing
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star! Thanks again!1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request