1
0
mirror of https://github.com/CPunch/Laika.git synced 2024-11-23 13:20:10 +00:00
Laika/README.md

36 lines
2.4 KiB
Markdown
Raw Normal View History

# Laika
2022-03-18 04:51:53 +00:00
<p align="center">
<a href="https://github.com/CPunch/Laika/actions/workflows/check-build.yaml"><img src="https://github.com/CPunch/Laika/actions/workflows/check-build.yaml/badge.svg?branch=main" alt="Workflow"></a>
2022-03-18 04:51:53 +00:00
<a href="https://github.com/CPunch/Laika/blob/main/LICENSE.md"><img src="https://img.shields.io/github/license/CPunch/Laika" alt="License"></a>
<br>
2022-06-29 22:55:42 +00:00
<a href="https://asciinema.org/a/499508" target="_blank"><img src="https://asciinema.org/a/499508.svg" /></a>
2022-03-18 04:51:53 +00:00
</p>
2022-04-14 17:38:57 +00:00
Laika is a simple cross-platform Remote Access Toolkit stack for educational purposes. It allows encrypted communication across a custom binary protocol. The bot client supports both Windows & Linux environments, while the shell & CNC server specifically target Linux environments. Laika is meant to be small and discreet, Laika believes in hiding in plain sight.
2022-03-07 17:06:56 +00:00
Some notable features thus far:
2022-04-14 17:38:57 +00:00
- [X] Lightweight, the bot alone is 183kb (`MinSizeRel`) and uses very little resources minimizing Laika's footprint.
- [X] Authentication & packet encryption using LibSodium and a predetermined public CNC key. (generated with `bin/genKey`)
2022-04-06 06:07:16 +00:00
- [X] Server and Shell configuration through `.ini` files.
2022-03-28 21:28:44 +00:00
- [X] Ability to open shells remotely on the victim's machine.
- [X] Persistence across reboot: (toggled with `-DLAIKA_PERSISTENCE=On`)
2022-04-14 17:38:57 +00:00
- [X] Persistence via Cron on Linux-based systems.
- [X] Persistence via Windows Registry.
2022-05-09 22:02:48 +00:00
- [X] Uses obfuscation techniques also seen in the wild (string obfuscation, tiny VMs executing sensitive operations, etc.)
2022-04-14 17:38:57 +00:00
- [ ] Simple configuration using CMake:
2022-03-28 21:28:44 +00:00
- [X] Setting keypairs (`-DLAIKA_PUBKEY=? -DLAIKA_PRIVKEY=?`, etc.)
- [ ] Obfuscation modes
2022-05-01 19:54:38 +00:00
## Why?
2022-07-31 04:16:00 +00:00
I started this project to practice my systems programming skills, specifically networking related things. The networking code in this project (under `/lib`) is probably what I'm most proud of in this project. After that I started trying to learn some common obfuscation methods I've seen used in the wild. I've used this project mostly to improve my skills of managing a 'larger' project. Things relating to having a consistent code style, documenting features and development tasks are really important skills to have when managing a codebase like this.
2022-05-01 19:54:38 +00:00
## How do I use this?
2022-02-18 00:21:29 +00:00
Please refer to the [Wiki](https://github.com/CPunch/Laika/wiki) for any questions relating to deployment, compilation & setup.
2022-04-11 17:56:42 +00:00
2022-04-17 06:12:01 +00:00
## Looking to contribute?
Read `CONTRIBUTING.md`