🚩 This is the public repository of aardwolf, for latest version and updates please consider supporting us through https://porchetta.industries/
AARDWOLF - Asynchronous RDP client in Python
This project is aimed to play around the RDP protocol.
🚩 Sponsors
If you want to sponsors this project and have the latest updates on this project, latest issues fixed, latest features, please support us on https://porchetta.industries/
Official Discord Channel
Come hang out on Discord!
Features
- Supports credssp auth via NTLM/Kerberos.
- Built-in proxy client allows SOCKS/HTTP proxy tunneling without 3rd part software
- PtH via CredSSP+Restricted admin mode
- Scriptable Keyboard, Mouse input and Clipboard input/output
- Can run in headless mode, no GUI required (read: no need for Qt)
Example scripts
aardpclient
Basic RDP client running on top of Qt5. Can copy-paste text, handles keyboard and mouse.aardpscreenshot
RDP ?screenshotter? scans the given target/s or network ranges for open RDP clients, tries to log in either with or without credentials and takes a screemshotaardpcapscan
RDP login capability scanner identifies the supported login protocols on a target or network ranges.
URL format
As usual the scripts take the target/scredentials in URL format. Below some examples
rdp+kerberos-password://TEST\Administrator:[email protected]/?dc=10.10.10.2&proxytype=socks5&proxyhost=127.0.0.1&proxyport=1080
CredSSP (akaHYBRID
) auth using Kerberos auth + password viasocks5
towin2016ad.test.corp
, the domain controller (kerberos service) is at10.10.10.2
. The socks proxy is on127.0.0.1:1080
rdp+ntlm-password://TEST\Administrator:[email protected]
CredSSP (akaHYBRID
) auth using NTLM auth + password connecting to RDP server10.10.10.103
rdp+ntlm-password://TEST\Administrator:<NThash>@10.10.10.103
CredSSP (akaHYBRID
) auth using Pass-the-Hash (NTLM) auth connecting to RDP server10.10.10.103
Kudos
- Citronneur's
rdpy
. The decompression code and the QT image magic was really valuable. - Marc-André Moreau (@awakecoding) for providing suggestions on fixes
Additional info for Qt install.
- installing in venv will require installing Qt5 outside of venv, then installing 'wheel' and 'vext.pyqt5' in the venv via pip first. then install pyqt5 in the venv
- installing Qt5 can be a nightmare
- generally on ubuntu you can use
apt install python3-pyqt5
before installingaardwolf
and it will (should) work