Download Latest Version 2.1.0 - Quality of [Serpent] Life source code.tar.gz (13.1 MB)
Email in envelope

Get an email when there's a new version of PyRDP

Home / v1.2.0
Name Modified Size InfoDownloads / Week
Parent folder
1.2.0 - The Rudolph Desktop Protocol!.tar.gz 2022-12-23 13.1 MB
1.2.0 - The Rudolph Desktop Protocol!.zip 2022-12-23 13.2 MB
README.md 2022-12-23 4.1 kB
Totals: 3 Items   26.3 MB 0

Release blog post: https://www.gosecure.net/blog/2022/12/23/a-new-pyrdp-release-the-rudolph-desktop-protocol/

Release highlights

  • Net-NTLMv2 Hash Capture
  • 6x faster pyrdp-convert
  • RDP Version 10.9 and 10.10 supported
  • Python 3.10 support
  • Plugged memory leak and fixed important long-standing bugs

Full list of changes follows.

Backwards Compatibility Changes

  • Collected files are now stored as their SHA-256 hash value instead of SHA-1 (#389)
  • The log field shasum now holds the SHA-256 hash value of files instead of SHA-1 (#389)

Security

  • Backported security fixes from rdesktop to our Python C extension doing RLE processing. Exploitability wasn't verified. (#357)

Enhancements

  • Support for RDP version 10.9 and 10.10 (#396, [#397])
  • Capture and log NetNTLMv2 hash if the server enforces NLA and we don't have the NLA redirection attack activated (#367, [#358])
  • The Net-NTLMv2 challenge can be defined via --ssp-challenge allowing to do more efficient parallel cracking or leverage rainbow tables (#405, [#418])
  • pyrdp-convert video conversion is now 6x faster! (See [#349])
  • pyrdp-convert video format can be viewed during encoding and will play even if the conversion process crashes or is halted (#352, [#353])
  • pyrdp-convert can now handle exported PDUs (decrypted pcaps) with multiple sessions in them (#313, [#368])
  • pyrdp-convert can now extract session information including keyboard and mouse movement information in JSON from pcap and PDUs (#331, [#366])
  • pyrdp-convert has better success messages, error reporting and exit status (#361, [#369])
  • pyrdp-mitm added --address argument to choose the IP address where PyRDP is listening (#411, [#412])
  • Minor CLI improvements
  • Improved type hints
  • Updated instructions to extract the RDP certificate and private key (#345)
  • Documentation updates (#335, [#339], [#340], [#360], [#371], [#381], [#383], [#384], [#408], [#420])
  • Replaced unmaintained dependency notify2 with py-notifier (#363, [#365])
  • Some Python 3.10 compatibility work (#366, [#380], [#421])
  • Enable play/pause replay on the Player by pressing the Space key (#403).

Bug fixes

  • Fixed situations where device redirection or clipboard sharing would hang and timeout (#139, [#422])
  • Fixed a memory leak in the bitmap decoding routine preventing the conversion or the replay of very large captures (#352, [#353])
  • Fixed pyrdp-player on macOS platforms (#362)
  • Fixed pyrdp-convert pcap processing when victim IP and MITM IP are the same (#366)
  • Fixed a pyrdp-convert segmentation fault in QT in some MP4 conversions (#378, [#428], [#429])
  • Fixed NLA redirection problems if original target and NLA redirection target are the same (#342, [#343])
  • Fixed leak of file descriptors due to missing close on replay file recording (#392, [#413], [#415])
  • Added a missing dependency for the GUI on Ubuntu 20.04 LTS (#348, [#351], [#355])
  • No longer assuming every connection will have VirtualChannels (#375)
  • Some minor protocol-level fixes (#408)

Infrastructure

  • The slim flavor of our Docker image is now provided for the ARM64 platform (#346, [#388])
  • Docker images are now built and pushed via GitHub Actions (#334, [#341])
  • Added an automated video conversion test to CI configuration (#349)
  • Added an automated JSON conversion test to CI configuration with some validation (#369)
  • Added an automated replay conversion test to CI configuration (#369)
  • Test refactoring to allow running most GitHub CI tests locally when developing (#368)
  • Added Python 3.10 to CI test configuration (#387)
  • Updated our dependencies to the latest stable versions (#386, [#391], [#400], [#414], [#417])

Credits

Thanks to the following people who contributed to this release:

Alexandre Beaulieu (@alxbl), Lisandro Ubiedo (@lubiedo), Francis Labelle (@xshill), Lukas Kupczyk (@lkupczyk), Olivier Bilodeau (@obilodeau), simonhuang (@thelongestusernameofall), Jonas (@spameier) and Flare Systems

Source: README.md, updated 2022-12-23