aardwolf
aardwolf copied to clipboard
Asynchronous RDP client for Python (headless)
:triangular_flag_on_post: In-browser version
Did you know this also works in the browser?
A version of this library is included in the in-browser pentest suite Octopwn
AARDWOLF - Asynchronous RDP/VNC client in Python (headless)
This project is aimed to play around the RDP and VNC protocols.
Project contains no GUI, for a GUI client please check out aardwolfgui
Important
This is a headless client, for GUI functionality use the aardwolfgui package.
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)
- Support for Duckyscript files to emulate keystrokes
Example scripts
ardpscanMulti-purpose scanner for RDP and VNC protocols. (screenshot/capabilities/login scanner)
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 viasocks5towin2016ad.test.corp, the domain controller (kerberos service) is at10.10.10.2. The socks proxy is on127.0.0.1:1080rdp+ntlm-password://TEST\Administrator:[email protected]
CredSSP (akaHYBRID) auth using NTLM auth + password connecting to RDP server10.10.10.103rdp+ntlm-password://TEST\Administrator:<NThash>@10.10.10.103
CredSSP (akaHYBRID) auth using Pass-the-Hash (NTLM) auth connecting to RDP server10.10.10.103rdp+plain://Administrator:[email protected]
Plain authentication (No SSL, encryption is RC4) using password connecting to RDP server10.10.10.103vnc+plain://[email protected]
VNC client with VNC authentication using password connecting to RDP server10.10.10.103vnc+plain://[email protected]
VNC client with VNC authentication using password connecting to RDP server10.10.10.103vnc+plain://:admin:[email protected]
VNC client with VNC authentication using passwordadmin:aaaconnecting to RDP server10.10.10.103. Note that if the password contains:char you will have to prepend the password with:
Kudos
- Sylvain Peyrefitte (@citronneur)
rdpy. The decompression code and the QT image magic was really valuable. - Marc-André Moreau (@awakecoding) for providing suggestions on fixes