Disclaimer
This tool should be used on applications/networks that you have permission to attack only. Any misuse or damage caused will be solely the usersβ responsibility.
What is Karkinos?
Karkinos is a light-weight 'Swiss Army Knife' for penetration testing and/or hacking CTF's. Karkinos was made for a university Web Development project; feel free to add any features :)
Currently, Karkinos offers the following:
- Encoding/Decoding characters
- Encrypting/Decrypting text or files
- 3 Modules
- Cracking and generating hashes
Dependencies
- Any server capable of hosting PHP
- Tested with PHP 7.4.9
- Tested with Python 3.8
Make sure it is in your path as:
Windows:python
Linux:python3
If it is not, change the commands inincludes/pid.php
. - Pip3
- Raspberry Pi Zero friendly :) (crack hashes at your own risk)
Newest Feature
New Module
Port Scanning Demo
More information can be found in the Modules section.
Installing
This installation guide assumes you have all the dependencies. A Wiki page with troubleshooting steps can be found here.
Linux/BSD
A video going through these steps can be found here
git clone https://github.com/helich0pper/Karkinos.git
cd Karkinos
pip3 install -r requirements.txt
cd wordlists && unzip passlist.zip
You can also unzip it manually using file explorer. Just make sure passlist.txt is in wordlists directory.Make sure you have write privileges for db/main.db
- Enable
extension=sqlite3
in your php.ini file. You will also need to install it usingsudo apt-get install php7.0-sqlite3
. Replace "7.0" with your PHP version!php --version
Note: MySQLi is used to store statistics such as the total number of cracked hashes. - Thats it! Now just host it using your preferred web server that supports multithreading eg. Apache Server or Nginx.
Warning: Using the built in web serverphp -S 127.0.0.1:8888
in the Karkinos directory uses a single thread. You will only be able to use 1 module at a time! (it may stall until the task is complete)
Important: using port 5555, 5556, or 5557 will conflict with the Modules
If you insist on using these ports, change thePORT
value in:
/bin/Server/app.py Line 87
/bin/Busting/app.py Line 155
/bin/PortScan/app.py Line 128
Windows
git clone https://github.com/helich0pper/Karkinos.git
cd Karkinos
pip3 install -r requirements.txt
cd wordlists && unzip passlist.zip
You can also unzip it manually using file explorer. Just make sure passlist.txt is in wordlists directory.Make sure you have write privileges for db/main.db
- Enable
extension=php_sqlite3.dll
in your php.ini file. Refer to the installation page here.
Note: MySQLi is used to store statistics such as the total number of cracked hashes. - Thats it! Now just host it using your preferred web server that supports multithreading eg. Apache Server or Nginx.
Warning: Using the built in web serverphp -S 127.0.0.1:8888
in the Karkinos directory uses a single thread. You will not be able to multitask modules! (it may stall until the task is complete)
Important: using port 5555, 5556, or 5557 will conflict with the Modules
If you insist on using these ports, change thePORT
value in:
/bin/Server/app.py Line 87
/bin/Busting/app.py Line 155
/bin/PortScan/app.py Line 128
Demo
Open screenshots in full screen for a better view
Home Menu
Landing page and quick access menu.
User stats are displayed here. Currently, the stats recorded are only the total hashes and hash types cracked successfully.
Encoding/Decoding
This page allows you to encode/decode in common formats (more may be added soon)
Encrypt/Decrypt
Encrypting and decrypting text or files is made easy and is fully trusted since it is done locally.
Modules
Reverse Shell Handling
Reverse shells can be captured and interacted with on this page.
Create a listener instance
Configure the listener
Start the listener and capture a shell
Full reverse shell handling demo:
Directory and File Busting
Create an instance
Configure it
Start scanning
Full Directory and File Busting demo:
Port Scanning
Launch the scanner
Configure it
Start scanning
Full Port Scanning Demo:
Generating Hashes
Karkinos can generate commonly used hashes such as:
Cracking Hashes
Karkinos offers the option to simultaneously crack hashes using a built-in wordlist consisting of over 15 million common and breached passwords. This list can easily be modified and/or completely replaced.
Future Work
Pull requests and bug reports are always appreciated.
Below are features to be added/fixed:
- Creating a Wiki page to help customize Karkinos or troubleshoot common issues