# Umay | IoT Malware Similarity Analysis Platform

**URL:** <https://onehack.st/t/umay-iot-malware-similarity-analysis-platform/210227>\
**Category:** Tools & Scripts\
**Tags:** learning, tools, data-recovery\
**Created:** [December 23, 2021, 10:21am UTC](https://onehack.st/t/umay-iot-malware-similarity-analysis-platform/210227 "2021-12-23T10:21:13Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Prometheus](https://onehack.st/user_avatar/onehack.st/prometheus/32/34950_2.png) [@Prometheus](https://onehack.st/u/Prometheus)\
**Post date:** [December 23, 2021, 10:21am UTC](https://onehack.st/t/umay-iot-malware-similarity-analysis-platform/210227/1 "2021-12-23T10:21:13Z")

</div>

[![Contributors](https://camo.githubusercontent.com/1838a527077a980eda4c2d7cccd7d10f0f7e4d11450c0485b91338e970983675/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f636f6e7472696275746f72732f6d75636f7a652f556d61792e7376673f7374796c653d666f722d7468652d6261646765)](https://github.com/mucoze/Umay/graphs/contributors) [![Forks](https://camo.githubusercontent.com/6d8a31f9a8649e592e78da8a1a82e504768dbaafd219c8a058289d7af5ccdc77/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f6d75636f7a652f556d61792e7376673f7374796c653d666f722d7468652d6261646765)](https://github.com/mucoze/Umay/network/members) [![Stargazers](https://camo.githubusercontent.com/c00676a83cd2f65461aab86c838bc827420def6da71e7956b9830e2e9fdcad0c/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f6d75636f7a652f556d61792e7376673f7374796c653d666f722d7468652d6261646765)](https://github.com/mucoze/Umay/stargazers) [![Issues](https://camo.githubusercontent.com/408ef1848925076aea8c5c7d006ea939527ccaeaad9165a68c11e56e54d811af/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f6d75636f7a652f556d61792e7376673f7374796c653d666f722d7468652d6261646765)](https://github.com/mucoze/Umay/issues)

[![Logo](https://github.com/mucoze/Umay/raw/main/static/img/logo.png)](https://github.com/mucoze/Umay)

### IoT Malware Similarity Analysis Platform

[**View Demo**](https://umay.xyz/)

**Table of contents**

- [About The Project](https://github.com/mucoze/Umay#about-the-project)
- [Current features](https://github.com/mucoze/Umay#current-features)
- [Getting Started](https://github.com/mucoze/Umay#getting-started)
  - [Prerequisites](https://github.com/mucoze/Umay#prerequisites)
  - [Installation](https://github.com/mucoze/Umay#installation)
  - [Create your own dataset](https://github.com/mucoze/Umay#create-your-own-dataset)

- [Contributing](https://github.com/mucoze/Umay#contributing)
- [License](https://github.com/mucoze/Umay#license)

## About The Project

[![Umay](https://github.com/mucoze/Umay/raw/main/static/img/umay.png)](https://github.com/mucoze/Umay/blob/main/static/img/umay.png)

This project provides IoT malware similarity analysis based on shared codes. It helps to identify other malwares that have shared code with the analyzed file. In this way, you can have a chance to get an idea about the family of the malware. There are various devices with different architectures in the IoT ecosystem. Static-based methods are more effective when addressing the multi-architecture issue. 1000 malware binaries provided by [IoTPOT](https://sec.ynu.codes/iot/) were used in the project. The basic blocks and functions of each of binaries were extracted by radare2 and the hash values of these data were stored in the SQL database. The basic blocks and functions of the sample to be analyzed are query from this database and all malwares that have shared code are listed.

## Current features

- Shared code based static analysis.
- Supporting ARM, MIPS, x86-64, i386, PowerPC, m68k, Renesas SH.
- ?

## Getting Started

### Prerequisites

- Python3+
- [Radare2](https://github.com/radareorg/radare2)
  - r2pipe

### Installation

```auto
git clone https://github.com/mucoze/Umay
cd Umay

```

virtualenv venv

source venv/bin/activate

pip install -r requirements.txt

python manage.py makemigrations

python manage.py migrate

python manage.py createsuperuser

python manage.py runserver

and now project app is accesible from your browser. Default: `127.0.0.1:8000`

### Create your own dataset file

`python create_dataset.py samples/`

Give the directory where all the samples are located as an argument and it will generate the `dataset.db` file for you.

## 🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to contact me.

## License

Umay is licensed under [Apache License 2.0](https://github.com/mucoze/Umay/blob/main/LICENSE)

## GitHub:

[https://github.com/mucoze/Umay](https://github.com/mucoze/Umay)
