基本上,NimExec 是一个使用服务控制管理器远程协议 (MS-SCMR) 的无文件远程命令执行工具。它更改由 LocalSystem 运行的随机或给定服务的二进制路径,以在目标上执行给定命令,并稍后通过手工制作的 RPC 数据包而不是 WinAPI 调用来恢复它。它通过 SMB2 和 svcctl 命名管道发送这些包。
NimExec 需要 NTLM 哈希来对目标计算机进行身份验证,然后使用 NTLM 身份验证方法通过手工制作的包完成此身份验证过程。
由于所有必需的网络包都是手动制作的,并且没有使用特定于操作系统的功能,因此通过使用 Nim 的交叉编译支持,NimExec 可以在不同的操作系统中使用。
汇编
nim c -d:release --gc:markAndSweep -o:NimExec.exe Main.nim
上面的命令使用了不同的垃圾收集器,因为 Nim 中的默认垃圾收集器在服务搜索过程中会抛出一些 SIGSEGV 错误。
此外,您还可以使用以下命令通过 Nimble 安装所需的 Nim 模块:
nimble install ptr_math nimcrypto hostname
命令行参数
-v | --verbose Enable more verbose output.
-u | --username <Username> Username for NTLM Authentication.*
-h | --hash <NTLM Hash> NTLM password hash for NTLM Authentication.*
-t | --target <Target> Lateral movement target.*
-c | --command <Command> Command to execute.*
-d | --domain <Domain> Domain name for NTLM Authentication.
-s | --service <Service Name> Name of the service instead of a random one.
--help Show the help message.
项目地址
https://github.com/frkngksl/NimExec
原文始发于微信公众号(TtTeam):内网渗透 - Nim 中横向移动的无文件命令执行
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论