multicat
Multithread reverse shell listener
Use cases
Sometimes you have to spread the same payload to multiple targets and don't know how many clients will try to connect back. Multicat allow to setup a listener capable of handling multiple connections on the same port and interact with each client on a separate session. This server is client agnostic: compatible with any reverse shell that would work with a netcat listener.
Installation
pip install multicat
Usage
To start listening on the port of your choice:
mc -p 1234
Arguments
Usage: mc [-h] [-p] [-m] [-t]
-h, --help show this help message and exit
-p , --port port to listen (default: 28000)
-m , --max-clients max number of new clients to queue before establish connection (default: 5)
-t , --timeout connections timeout (default: 10)
Commands
Available commands in general menu context:
COMMAND DESCRIPTION
------------------------------------
HELP List available commands
SESSIONS List established sessions
START <id> Interact with a client
CLOSE <id> Close an specific connection
EXIT / QUIT Exit the entire application
Available commands in session context:
COMMAND DESCRIPTION
------------------------------------
STOP Stop interacting with the current session
CLOSE Close the current connection
Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
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!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
License
Distributed under the GNU General Public License v3.0. See LICENSE for more information.
Legal disclaimer
This tool is created for the sole purpose of security awareness and education, it should not be used against systems that you do not have permission to test/attack. The author is not responsible for misuse or for any damage that you may cause. You agree that you use this software at your own risk.
Metadata
Release files for multicat 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| multicat-0.1.1.tar.gz | 17.3 kB | Without provenance | Details for multicat-0.1.1.tar.gz |
Release files / multicat-0.1.1.tar.gz
| Download URL | multicat-0.1.1.tar.gz |
|---|---|
| Size | 17.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4f4e77a6975cee4cc9570144fdb0bb492d41fd2ed3caf8ab04021d35ba2fbd00
|
|
BLAKE2b-256 checksum How to use checksums |
316c491d87d5f0148dab7d7fe00931dca7f130a38d64cba6781f4addecb3d97f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.8
|
Security for multicat 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.