Devkit for quickly creating client bots for remote communications
Project description
PyBots
This library aims to quickly write client bots for communicating with remote hosts in various ways.
It currently features the following bots:
- Protocol-bound: TCPBot, HTTPBot, JSONBot, IRCBot, EPassport
- Application-specific:
- CTF: RingZer0Bot, RootMeIRCBot, ZSISBot
- Security: ShodanBot, VirusTotalBot
- Miscellaneous: GitRecoveryBot
Installation
sudo pip install pybots
Usage
Each bot class is implemented as a context manager and has a logger attached. It can thus be instantiated in a clear and straightforward way. Here is an example:
from pybots import TCPBot
with TCPBot("remote_host", 1234) as bot:
data = bot.send_receive("Hello!")
# do something with data
Note that, if a bot is used behind a proxy, it will use system's proxy settings. This can be bypassed by using no_proxy=True
while instantiating the bot.
with TCPBot("LAN_host", 1234, no_proxy=True) as bot:
# ...
CTF Examples
- Hacky Easter 2017 (22 & 24)
- Hackvent 2017 (Day 06 & 10)
- RingZer0 / Coding (13 & 17)
- Root-Me / Programming
Contribution
For contributions or suggestions, please open an Issue and clearly explain, using an example or a use case if appropriate.
If you want to get new bots added, please submit a Pull Request.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.