Ceplin Command Identifier

Identifier / Programs / Windows

ssh.exe

Secure Shell is a protocol used to securely log onto remote systems. It can be used for logging or executing commands on a remote server. tldr-pages

LOLBAS Execute 3 Sigma rules name it 5 ATT&CK techniques 3 documented commands 5 known copies with hashes

Opens the identifier with your command. It is read in your browser and sent nowhere.

How ssh.exe is abused

documented by LOLBAS

Execute T1202 Indirect Command Execution

localhost

Execute T1202 Indirect Command Execution

-o

Each abuse is LOLBAS's category and the options and words it uses; the full write-up is on LOLBAS's page for ssh.exe.

3 documented commands

from LOLBAS, each read by the identifier

Execute T1202 Indirect Command Execution User privileges

Executes specified command on host machine. The prompt for password can be eliminated by adding the host's public key in the user's authorized_keys file. Adversaries can do the same for execution on remote machines.

ssh localhost "{CMD}"
Identify

Trips no Sigma process-creation rule.

Execute T1202 Indirect Command Execution User privileges

Executes specified command from ssh.exe

ssh -o ProxyCommand="{CMD}" .
Identify

Trips 1 Sigma rule: mediumProgram Executed Using Proxy/Local Command Via SSH.EXE by frack113, Nasreddine Bencherchali

Execute T1202 Indirect Command Execution User privileges

Executes a DLL from an SMB share by abusing the PKCS11Provider option. The payload executes upon DLL load (DllMain) and requires exporting C_GetFunctionList to prevent premature termination by ssh.exe. Note that all backslashes should be escaped (i.e. every \ should be turned into \\).

ssh -o PKCS11Provider="\\\\127.0.0.1\\Temp\\example.dll" win@github.com
Identify

Trips no Sigma process-creation rule.

1 of the 3 commands the identifier reads trips a Sigma process-creation rule; 2 trip none. These commands and their descriptions are from LOLBAS’s entry for ssh.exe, by Akshat Pradhan, at commit 2056cb766250 of 2026-09-26, under the GPL-3.0 and LOLBAS’s notice, with no warranty. Changed: Markdown is shown formatted. The source is in lolbas-gtfobins-commands.json.gz, and the full entry is on LOLBAS’s page for ssh.exe. The identifier reads each with LOLBAS’s placeholders filled in: a URL as https://example.com/file, a share as \\192.0.2.10\share\file, a path as C:\Data\file and a command as calc.exe.

What detects it

Sigma process creation rules
highPotential RDP Tunneling Via SSHNasreddine Bencherchali (Nextron Systems)
mediumPort Forwarding Activity Via SSH.EXENasreddine Bencherchali (Nextron Systems)
mediumProgram Executed Using Proxy/Local Command Via SSH.EXEfrack113, Nasreddine Bencherchali
T1021.001Remote Services: Remote Desktop Protocol
T1021.004Remote Services: SSH
T1202Indirect Command Execution
T1218System Binary Proxy Execution
T1572Protocol Tunneling

Is it the real ssh.exe?

file version info and known copies
Installed inC:\Windows\system32\OpenSSH\
C:\Users\user\AppData\Local\GitHubDesktop\app-2.5.3\resources\app\git\usr\bin\
C:\Users\user\AppData\Local\GitHubDesktop\app-2.5.4\resources\app\git\usr\bin\
Signed byMicrosoft Windows
ProductOpenSSH for Windows

5 known copies

8.1.0.1 · C:\WINDOWS\system32\OpenSSH\ssh.exe · signed by Microsoft Windows

0d6b181edc282e0f14b3db6c59235290b1a5e7772f3fcf859fe7e92d57fec9fc

8.1.0.1 · C:\Windows\system32\OpenSSH\ssh.exe · signed by Microsoft Windows

722bee41ccf54b88660c0e67adeb2c9612c18d739e5a8eb8c35c3d7066a95871

7.7.2.1 · C:\Windows\system32\OpenSSH\ssh.exe · signed by Microsoft Windows

0c0e91427a4b0e4cd0b59bdb73054252fb74c0977d13a73ab7423e15528b0485

Version not recorded · C:\Users\user\AppData\Local\GitHubDesktop\app-2.5.3\resources\app\git\usr\bin\ssh.exe · signed by GitHub

4c259bbbb1ab6c554c4ac65218740590b71603306d92552bda41c951e5a6a962

Version not recorded · C:\Users\user\AppData\Local\GitHubDesktop\app-2.5.4\resources\app\git\usr\bin\ssh.exe · signed by GitHub

937f3317fad790c1f3980cb12b31ca6d000698ab99e31839f1cfec575e4193b7

From the file’s version info and the copies recorded by xCyclopedia (MIT). A copy in another folder, signed by someone else or with another hash is not necessarily malicious, but it is worth a closer look. In Ceplin, "<sha256>".whatis() says which known copy a hash is.

Everyday use

from tldr-pages, CC BY 4.0

Connect to a remote server

ssh username@remote_hostIdentify

Connect to a remote server with a specific identity (private key)

ssh username@remote_host -i path/to/key_fileIdentify

Connect to a remote server with IP 10.0.0.1 and using a specific port (Note: 10.0.0.1 can be shortened to 10.1)

ssh username@10.0.0.1 -p 2222Identify

None of the 3 examples the identifier reads matches LOLBAS abuse or trips a Sigma process-creation rule.