赞
踩
目录
HFish基本结构
HFish由管理端(server)和节点端(client)组成,管理端用来生成和管理节点端,并接收、分析和展示节点端回传的数据,节点端接受管理端的控制并负责构建蜜罐服务。
HFish各模块关系图
融合在企业网络中
安装HFish管理端后,默认在管理端所在机器上建立节点感知攻击,该节点被命名为「内置节点」。
该节点将默认开启部分服务,包括FTP、SSH、Telnet、Zabbix监控系统、Nginx蜜罐、MySQL蜜罐、Redis蜜罐、HTTP代理蜜罐、ElasticSearch蜜罐和通用TCP端口监听。
注意:该节点不能被删除,但可以暂停。
进入【节点管理】页面,点击【增加节点】
根据节点设备类型选择对应的安装包和回连地址
在节点机器执行命令语句或安装包,即可成功部署节点。
增加节点可以通过2种方式安装,一种是命令行安装,就是通过在被安装节点执行命令在线安装;另一种是账号密码安装,就是提供被安装节点的账户信息在管理节点远程安装。本次使用命令行在windows平台上安装。
windows下安装,会生成一个安装包,下载到被安装节点。双击安装程序,稍后会弹出安装成功的对话框。安装成功后会在系统中添加对应计划任务。
可以通过setup.log和hfishclient文件加下的log文件查看安装日志和运行日志。正常情况下刷新管理页面下的节点管理,就会出现新的节点。
节点重启后客户端进程会自动启动,但在client.log日志文件中发现一条报错信息:
2023-03-22 11:02:32.603 [WARN] scan.go:44: find all device err: couldn't load wpcap.dll
在官方文档中发现:
注意:Windows节点的扫描感知依赖WinPcap,需要手动进行下载安装!
WinPcap官方链接:https://www.winpcap.org/install/bin/WinPcap_4_1_3.exe
实际测试过程中我使用NPcap,安装完成后需要重启,重启后才可以做扫描感知。
扫描感知:
用于展示HFish蜜罐节点被TCP、UDP和ICMP三种协议的全端口扫描探测行为。
即使节点相关端口没有开放,HFish仍能记录下扫描行为,此外,HFish还会记录节点主机本身外联行为。
进入【节点管理】页面,在节点列表中找到要删除的节点,点击该节点右侧【删除】,HFish需要二次验证您的管理员身份,输入admin密码后,节点将被删除。
节点被删除后:
添加节点后,可以配置节点部署多种蜜罐服务,HFish提供两种方式配置节点服务。
该方法可以快速修改单个节点上的蜜罐服务,其操作步骤如下:
点击单个节点,可直接对节点上的服务进行添加和删除(可以选择内置模板应用并修改)
蜜罐模板便于用户同时管理很多节点,批量更改蜜罐服务,即将一套模板批量应用到多个节点上,其操作步骤如下:
进入【模版管理】页面,点击【新建模板】,输入模板名称,选择蜜罐服务,填写描述信息,点击【确定】保存
进入【节点管理】页面,展开具体节点,选择上面创建的蜜罐模板
等待应用模板后的蜜罐服务状态变为【启用】,注意:此时蜜罐尚未部署完成
节点正常完成模板加载后,服务状态应该为【在线】,如果显示为【离线】,说明蜜罐服务没有正常启动,您可以将鼠标移动到问号上查看提示,或请参考我们后面的【排错说明】
当前,HFish提供四个不同的页面进行攻击信息查看,分别为:攻击列表、扫描感知、攻击来源、账号资产
四种功能分别代表四种不同的攻击数据场景
功能简介 | 功能原理 | |
---|---|---|
攻击列表 | 收集所有对蜜罐的攻击 | 节点部署蜜罐后,攻击者对蜜罐的所有攻击信息都会被收录到「攻击列表」中。 |
扫描感知 | 收集了节点机器网卡的所有连接信息 | 节点生成之后,HFish会记录对节点所有网卡的连接,包括来访IP,连接IP和端口。 |
攻击来源 | 收集了所有连接和攻击节点的IP信息 | 所有尝试连接和攻击节点的IP信息都被记录在攻击来源中,如果蜜罐溯源和反制成功,信息也会被记录其中。 |
账号资产 | 收集了所有攻击者破解蜜罐使用的账号密码 | HFish会提取攻击者对SSH、以及所有Web蜜罐登陆所使用的账号密码,进行统一展示。同时,用户可自定义监控词汇,如员工姓名、公司名称等,一旦与攻击者使用的账号重合,可高亮显示并告警。 |
官方文档中的截图为老版本,新版本增加了新的功能。比如炫酷的大屏功能:
点击大屏可以打开大屏,按F11可全屏,该功能可以复制投放到大屏进行展示。
点击右上角设置可以更改大屏的标题。
1、删除计划任务进程
注意:不同的linux版本结束方式不同,需要自己确认
2、结束管理端进程
- # 结束hfish和hfish-server的进程
- root@HFish~# ps ax | grep ./hfish | grep -v grep
- 8435 ? Sl 97:59 ./hfish
- 8436 ? Sl 97:59 ./hfish-server
-
-
- root@HFish:~# kill -9 8435
- root@HFish:~# kill -9 8436
3、删除文件夹
- # 使用install.sh安装的HFish会被部署到/opt/hfish目标,将整个删除即可
- root@HFish~# rm -rf /opt/hfish
4、清理所有配置(如果后续还要安装,建议不要删除,否则下次使用需要完全重新配置)
- # 使用install.sh安装的HFish会在/usr/share/hfish下建立全局变量
- root@HFish~# rm -rf /usr/share/hfish
5、删除MySQL数据库配置(SQLite可忽略)
- # 删除HFish数据库
- root@HFish:~# mysql -h127.0.0.1 -uroot -p
- Enter password:*******(默认密码详见config.ini配置文件)
- mysql> DROP DATABASE hfish;
-
- # 停止MySQL服务
- root@HFish:~# systemctl stop mysqld
- root@HFish:~# systemctl disable mysqld
6、可还原SSH和Firewall配置
- # 清除SSH config内对于访问来源的限制
- root@HFish~# vi /etc/ssh/sshd_config
- 注释掉以 AllowUsers root@ 开头的行
-
- # 重启SSH服务
- root@HFish~# systemctl restart sshd
-
- # 清除Firewall服务的规则(请根据实际情况删除!)
- root@HFish~# firewall-cmd --permanent --list-all | grep ports | head -n 1 | \
- cut -d: -f2 | tr ' ' '\n' | xargs -I {} firewall-cmd --permanent --remove-port={}
-
- # 重启Firewall服务
- root@HFish~# systemctl restart firewalld
1、删除计划任务进程HFish管理端
2、结束hfish进程
在任务管理器,结束hfish和hfish-server的进程
3、删除管理端文件夹
1、删除计划任务进程
- # 打开计划任务,删除带有hfish字样的行
- root@HFish~# crontab -e
2、结束client进程
- # 结束client的进程
- root@HFish~# ps ax | grep ./client | grep -v grep
- 8435 ? Sl 97:59 ./client
-
- root@HFish:~# kill -9 8435
3、删除client文件夹
文件夹路径为按照自己的安装路径,client端没有全局配置,删除安装文件夹即可
1、关闭计划任务 HFishClient
2、结束client进程
在任务管理器,结束hfish和client的进程
3、删除client文件夹
文件夹路径为按照自己的安装路径,client端没有全局配置,删除安装文件夹即可
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。