Skip to content

dhondta/python-pybots

Repository files navigation

PyPi Read The Docs Build Status Requirements Status Known Vulnerabilities Python Versions License

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

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.

About

🔧 Devkit for quickly creating client bots for remote communications

Topics

Resources

License

Stars

Watchers

Forks

Languages