Skip to content

armudgal/thug

 
 

Repository files navigation

Thug

version badge travis badge Code Health codefactor badge codecov badge

The number of client-side attacks has grown significantly in the past few years shifting focus on poorly protected vulnerable clients. Just as the most known honeypot technologies enable research into server-side attacks, honeyclients allow the study of client-side attacks.

A complement to honeypots, a honeyclient is a tool designed to mimic the behavior of a user-driven network client application, such as a web browser, and be exploited by an attacker's content.

Thug is a Python low-interaction honeyclient aimed at mimicing the behavior of a web browser in order to detect and emulate malicious contents.

Documentation

docs badge

Documentation about Thug installation and usage can be found at http://thug-honeyclient.readthedocs.io/.

Contributions

donate badge

Thug is open source and we welcome contributions in all forms!

Thug is free to use for any purpose (even commercial ones). If you use and appreciate Thug, please consider supporting the project with a donation using Paypal.

Development Setup

To setup a development environment, follow the steps:

git clone https://github.com/buffer/thug.git
cd thug
./dev/dev.sh

The dev script will create a virtualenv environment in a directory called "venv" and install all the mandatory and optional dependencies into it. Thug is installed as a permanent package and the package needs to be installed again executing pip install . in order to compile all the changes.

If you want to install Thug as an "editable", please replace line 11 in dev.sh by the following line and re-run dev.sh

pip2 install -e .

Installing Thug as an "editable" allows changes to the source in the repository to be reflected in the virtualenv.

Make sure that you successfully installed Thug by running the following commands:

. venv/bin/activate
thug --version

Testing

To run the full test suite using tox, run the command:

tox

Since tox builds and installs dependencies from scratch, using pytest for faster testing is recommended:

pytest --cov thug

Support

Thanks to JetBrains for free PyCharm licenses!

License information

Copyright (C) 2011-2019 Angelo Dell'Aera <angelo.dellaera@honeynet.org>

License: GNU General Public License, version 2

Packages

No packages published

Languages

  • Python 88.0%
  • JavaScript 6.1%
  • Gherkin 3.2%
  • YARA 1.2%
  • Shell 0.6%
  • HTML 0.5%
  • Other 0.4%