Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

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

Awesome Lists containing this project

README

        


Link-Wolf - stockholm
42 grade - 100 / 100
Year - 2022
stars - stockholm
forks - stockholm
issues - stockholm
OS - linux





Logo

Piscine Cybersecurity - stockholm


Harmless malware

A ransomware without the ransom




Report Bug
·
Request Feature


Table of Contents



  1. Goal


  2. Getting Started


  3. Usage examples

  4. Contributing

## Goal



stockholm illu

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++

(back to top)

## 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

(back to top)

## 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)

(back to top)

## 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

(back to top)