SSH-Honeypot For Windows
字数 1639 2025-08-22 18:37:15
Windows SSH 蜜罐部署与使用指南
项目概述
本项目是基于 Windows-OpenSSH 的 SSH 弱口令蜜罐系统,用于诱捕和监控针对 SSH 服务的攻击行为。系统通过创建一个具有弱口令的 SSH 服务账户,并配合自定义伪终端 Bacsh 来限制攻击者的活动范围。
系统组成
-
核心组件:
Winbacsh.exe: 自定义伪终端,提供隔离环境vshost.exe: 守护进程,防止容器逃逸SSH蜜罐控制进程.exe: 主控制程序
-
监控组件:
CommandMonitor.exe: 监控用户输入 (1次/秒)ResultMonitor.exe: 监控命令模拟执行结果 (1次/秒)SSHDMonitor.exe: 监控SSHD服务状态 (1次/5秒)
-
部署工具:
Update.exe: 初始安装程序SSH_Deployment_Program.exe: 全面部署程序
部署流程
自动部署
-
运行
Update.exe进行初始安装- 默认安装目录:
C:\Users\Public\SSHShell - 会在桌面创建快捷方式
- 默认安装目录:
-
以管理员身份运行
SSH_Deployment_Program.exe- 自动设置文件权限
- 创建弱口令用户
- 修改注册表配置
-
通过
SSH蜜罐控制进程.exe启动系统
手动配置
- 从
The included exe目录获取编译好的可执行文件 - 从
main code和monitor code目录获取源代码
技术原理
隔离机制
-
终端替换:
- 修改注册表
HKEY_LOCAL_MACHINE\SOFTWARE\OpenSSH下的DefaultShell值 - 用
Winbacsh.exe替换默认的cmd.exe
- 修改注册表
-
目录限制:
- 默认工作目录:
C:\Users\kali\Shell - 通过
chdir()函数限制目录变迁
- 默认工作目录:
-
进程监控:
vshost.exe监控并终止任何 Windows OS_Shell 进程
Bacsh 终端工作机制
输入过滤
-
字符过滤:
- 允许字符: 字母、数字、":"、"-"、"/"
- 其他可打印字符: 清空命令数组
- 控制字符: 大部分直接丢弃
\033[D和\033[C]: 允许光标移动但不记录- ASCII 0 字符: 直接终止程序
- "Z" 键: 退出程序
-
命令识别:
- 内置函数:
cat,cd,cls,ls,pwd及其别名 - OS_Shell 检测:
cmd,powershell,exe及其变体 - 其他命令: 返回 PowerShell 错误信息
- 内置函数:
路径处理
cd命令只接受C:开头的绝对路径- 实际路径会被重定向到
C:\Users\kali\Shell\下
默认配置
-
账户信息:
- 用户名:
kali - 密码:
kjx00000
- 用户名:
-
目录结构:
- 安装目录:
C:\Users\Public\SSHShell - 工作目录:
C:\Users\kali\Shell
- 安装目录:
-
可用命令:
cd,ls,cat,cls,pwd及其别名
使用注意事项
- 必须以管理员身份运行部署程序
- 系统运行期间避免使用 Windows OS_Shell
- 推荐在中文简体(代码页936)环境下运行
- 屏幕分辨率建议 1920×1080
- 测试平台: Windows 10/11 (x86/x64)
开发信息
- 开发语言: C 族语言
- 开发环境: Windows 11
- 完成日期: 2023-10-25
- 作者: Jessarin000 (kjx52@outlook.com)
未来计划
- 支持更多命令的自定义添加
- 加入客户端攻击检测功能
- 多语言版本支持
免责声明
本项目为开源特种类项目,用户需自行承担使用风险。任何将本项目用于非法行为的情况,作者均不承担责任。