evil-winrm.py

evil-winrm.py

 

download from:  GitHub – adityatelange/evil-winrm-py: Execute commands interactively on remote Windows machines using the WinRM protocol

Example

c:\Python\Scripts>evil-winrm-py.exe -i object.htb -u oliver -p c1cdfun_d2434

Install on Windows

C:\PENTEST\evil-winrm-py-main\evil-winrm-py-main>dir
 Volume in drive C has no label.
 Volume Serial Number is 2455-111A

 Directory of C:\PENTEST\evil-winrm-py-main\evil-winrm-py-main

27/08/2025  12:52    <DIR>          .
27/08/2025  12:52    <DIR>          ..
27/08/2025  12:52             3.467 .gitignore
27/08/2025  12:52    <DIR>          assets
27/08/2025  12:52    <DIR>          docs
27/08/2025  12:52    <DIR>          evil_winrm_py
27/08/2025  12:52             1.071 LICENSE
27/08/2025  12:52             6.864 README.md
27/08/2025  12:52             1.425 setup.py
               4 File(s)         12.827 bytes
               5 Dir(s)  333.581.987.840 bytes free

C:\PENTEST\evil-winrm-py-main\evil-winrm-py-main>pip install .
Processing c:\pentest\evil-winrm-py-main\evil-winrm-py-main
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: pypsrp==0.8.1 in c:\python\lib\site-packages (from evil-winrm-py==1.4.1) (0.8.1)
Requirement already satisfied: prompt_toolkit==3.0.51 in c:\python\lib\site-packages (from evil-winrm-py==1.4.1) (3.0.51)
Requirement already satisfied: tqdm==4.67.1 in c:\python\lib\site-packages (from evil-winrm-py==1.4.1) (4.67.1)
Requirement already satisfied: wcwidth in c:\python\lib\site-packages (from prompt_toolkit==3.0.51->evil-winrm-py==1.4.1) (0.2.13)
Requirement already satisfied: cryptography in c:\python\lib\site-packages (from pypsrp==0.8.1->evil-winrm-py==1.4.1) (45.0.6)
Requirement already satisfied: pyspnego<1.0.0 in c:\python\lib\site-packages (from pypsrp==0.8.1->evil-winrm-py==1.4.1) (0.11.2)
Requirement already satisfied: requests>=2.9.1 in c:\python\lib\site-packages (from pypsrp==0.8.1->evil-winrm-py==1.4.1) (2.32.4)
Requirement already satisfied: colorama in c:\python\lib\site-packages (from tqdm==4.67.1->evil-winrm-py==1.4.1) (0.4.6)
Requirement already satisfied: sspilib>=0.1.0 in c:\python\lib\site-packages (from pyspnego<1.0.0->pypsrp==0.8.1->evil-winrm-py==1.4.1) (0.3.1)
Requirement already satisfied: charset_normalizer<4,>=2 in c:\python\lib\site-packages (from requests>=2.9.1->pypsrp==0.8.1->evil-winrm-py==1.4.1) (3.4.3)
Requirement already satisfied: idna<4,>=2.5 in c:\python\lib\site-packages (from requests>=2.9.1->pypsrp==0.8.1->evil-winrm-py==1.4.1) (3.10)
Requirement already satisfied: urllib3<3,>=1.21.1 in c:\python\lib\site-packages (from requests>=2.9.1->pypsrp==0.8.1->evil-winrm-py==1.4.1) (2.5.0)
Requirement already satisfied: certifi>=2017.4.17 in c:\python\lib\site-packages (from requests>=2.9.1->pypsrp==0.8.1->evil-winrm-py==1.4.1) (2025.8.3)
Requirement already satisfied: cffi>=1.14 in c:\python\lib\site-packages (from cryptography->pypsrp==0.8.1->evil-winrm-py==1.4.1) (1.17.1)
Requirement already satisfied: pycparser in c:\python\lib\site-packages (from cffi>=1.14->cryptography->pypsrp==0.8.1->evil-winrm-py==1.4.1) (2.22)
Building wheels for collected packages: evil-winrm-py
  Building wheel for evil-winrm-py (pyproject.toml) ... done
  Created wheel for evil-winrm-py: filename=evil_winrm_py-1.4.1-py3-none-any.whl size=25078 sha256=4c41fb3e15749fe62f568921162435e82892aecd7e24dfd04c054fff731b9639
  Stored in directory: c:\users\puck\appdata\local\pip\cache\wheels\69\7f\05\0af1b9c2427890f813ed9f04707a6c6371d16ba42075d1cd37
Successfully built evil-winrm-py
Installing collected packages: evil-winrm-py
  Attempting uninstall: evil-winrm-py
    Found existing installation: evil-winrm-py 1.4.1
    Uninstalling evil-winrm-py-1.4.1:
      Successfully uninstalled evil-winrm-py-1.4.1
Successfully installed evil-winrm-py-1.4.1

[notice] A new release of pip is available: 24.3.1 -> 25.2
[notice] To update, run: python.exe -m pip install --upgrade pip



c:\PENTEST>pip uninstall evil-winrm-py
Found existing installation: evil-winrm-py 1.4.1
Uninstalling evil-winrm-py-1.4.1:
  Would remove:
    c:\python\lib\site-packages\evil_winrm_py-1.4.1.dist-info\*
    c:\python\lib\site-packages\evil_winrm_py\*
    c:\python\scripts\evil-winrm-py.exe
    c:\python\scripts\ewp.exe
Proceed (Y/n)? n

c:\PENTEST>cd c:\Python\Scripts

c:\Python\Scripts>evil-winrm-py.exe
          _ _            _
  _____ _(_| |_____ __ _(_)_ _  _ _ _ __ ___ _ __ _  _
 / -_\ V | | |___\ V  V | | ' \| '_| '  |___| '_ | || |
 \___|\_/|_|_|    \_/\_/|_|_||_|_| |_|_|_|  | .__/\_, |
                                            |_|   |__/  v1.4.1

usage: evil-winrm-py [-h] -i IP [-u USER] [-p PASSWORD] [-H HASH] [--no-pass] [--priv-key-pem PRIV_KEY_PEM]
                     [--cert-pem CERT_PEM] [--uri URI] [--ua UA] [--ssl] [--port PORT] [--log] [--debug] [--no-colors]
                     [--version]
evil-winrm-py: error: the following arguments are required: -i/--ip

c:\Python\Scripts>

.

Upload file

c:\Python\Scripts>evil-winrm-py.exe -i object.htb -u oliver -p c1cdfun_d2434
          _ _            _
  _____ _(_| |_____ __ _(_)_ _  _ _ _ __ ___ _ __ _  _
 / -_\ V | | |___\ V  V | | ' \| '_| '  |___| '_ | || |
 \___|\_/|_|_|    \_/\_/|_|_||_|_| |_|_|_|  | .__/\_, |
                                            |_|   |__/  v1.4.1

[*] Connecting to 'object.htb:5985' as 'oliver'
evil-winrm-py PS C:\Users\oliver\Documents> upload PowerView.ps1
[-] Usage: upload <local_path> <remote_path>
evil-winrm-py PS C:\Users\oliver\Documents> upload PowerView.ps1 .
Uploading C:\Python\Scripts\PowerView.ps1: 768kB [00:03, 262kB/s]
[+] File uploaded successfully as: C:\Users\oliver\Documents\PowerView.ps1
evil-winrm-py PS C:\Users\oliver\Documents>

.

Download file

evil-winrm-py PS C:\programdata> download Engines.xls .
Downloading C:\programdata\Engines.xls: 64.0kB [00:00, 264MB/s]
[+] File downloaded successfully and saved as: C:\Python\Scripts\Engines.xls

.