This commit is contained in:
WeiMing 2021-06-23 22:47:17 +08:00
parent 5a0ecdf76a
commit 6f82f3e82a
8 changed files with 155 additions and 17 deletions

11
dockerfile Normal file
View File

@ -0,0 +1,11 @@
FROM alpine:latest
COPY ./hfish /opt/hfish
RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86-64.so.2
EXPOSE 4433 4434
WORKDIR /opt/hfish
CMD ["./server"]

View File

@ -1,10 +1,10 @@
## 什么是蜜罐
**蜜罐** 技术本质上是一种对攻击方进 **欺骗的技术**,通过布置一些作为 **诱饵的主机**、**网络服务** 以及 **操作系统**等,诱使攻击方对它们实施攻击,从而可以**捕获攻击行为**进行 **分析、溯源、反制**等操作。
**蜜罐**技术本质上是一种对攻击方进 **欺骗的技术**,通过布置一些作为**诱饵的主机**、**网络服务**以及**操作系统**等,诱使攻击方对它们实施攻击,从而可以**捕获攻击行为**进行**分析、溯源、反制**等操作。
了解攻击方所使用的工具与方法,推测攻击意图和动机,能够让防御方清晰地了解他们所面对的安全威胁,并通过技术和管理手段来增强实际系统的安全防护能力。
**蜜罐** 是企业内部私有的 **情报收集系统**。通过对蜜罐本身的设定以及蜜饵的铺洒与运营 **引诱黑客前来攻击**。所以攻击者触碰陷阱时,你就可以知道他是如何得逞的,随时了解针对服务器发动的最新的攻击和漏洞。还可以通过窃听攻击之间的联系,收集黑客所用的种种工具,最终掌握他们的攻击路径与手法,知己知彼。
**蜜罐**是企业内部私有的**情报收集系统**。通过对蜜罐本身的设定以及蜜饵的铺洒与运营**引诱黑客前来攻击**。所以攻击者触碰陷阱时,你就可以知道他是如何得逞的,随时了解针对服务器发动的最新的攻击和漏洞。还可以通过窃听攻击之间的联系,收集黑客所用的种种工具,最终掌握他们的攻击路径与手法,知己知彼。
@ -14,7 +14,7 @@
+ 蜜罐丰富支持SSH、FTP、TFTP、MySQL、Redis、Telnet、VNC、Memcache、Elasticsearch、Wordpress、OA系统等10多种蜜罐服务支持用户制作自定义Web蜜罐
+ 开放透明支持对接微步在线X社区API、五路syslog输出、支持邮件、钉钉、企业威胁、飞书、自定义WebHook告警输出
+ 开放透明支持对接微步在线X社区API、五路syslog输出、支持邮件、钉钉、企业微信、飞书、自定义WebHook告警输出
+ 快捷管理:支持单个安装包批量部署,支持批量修改端口和服务;
+ 跨平台支持Linux x32/x64/ARM、Windows x32/x64平台

View File

@ -2,7 +2,7 @@
![logo](http://img.threatbook.cn/hfish/logo.png ":size=200x202")
# HFish <sup class="version">2.4</sup>
# HFish <sup class="version">2.4.1</sup>
# 安全、简单、有效的蜜罐平台 <sup class="version">永久免费</sup>

View File

@ -37,7 +37,7 @@
**当您处于离线环境不方便在线安装情况下,您可以使用手动上传安装的方式。**
```wiki
1. 下载最新官方服务包 http://img.threatbook.cn/hfish/svc/services-2.4.0.tar.gz
1. 下载最新官方服务包 http://img.threatbook.cn/hfish/svc/services-<% version %>.tar.gz
2. 在新增服务页面上选择该服务包上传。
```

View File

@ -87,6 +87,8 @@ nohup ./server &
> 第二步运行文件目录下的server.exe
server.exe为后台运行启动后直接后台运行。
> 第三步登陆web界面
```
@ -123,19 +125,19 @@ docker run -d -p 4433:4433 -p 4434:4434 --name=hfish --restart=always registry.c
## 数据库切换MySQL
HFish系统默认使用的sqlite数据库具体见 db/hfish.db自带的已经初始化好的db相关的初始化脚本见 db/sql/sqlite/V2.4.0__sqlite.sql
HFish系统默认使用的sqlite数据库具体见 db/hfish.db自带的已经初始化好的db相关的初始化脚本见 db/sql/sqlite/V<% version %>__sqlite.sql
如果您想要重置 hfish.db 可以通过下面命令生成新的 db 文件请确保安装了sqlite3数据库。 替换 db/hfish.db 即可。
```
sqlite3 hfish.db < db/sql/sqlite/V2.4.0__sqlite.sql
sqlite3 hfish.db < db/sql/sqlite/V<% version %>__sqlite.sql
```
**sqlite数据库无需安装使用方便但在遭到大规模攻击及当前版本升级时候会存在数据丢失的问题。**
因此HFish同时**支持mysql**数据库,相关的初始化脚本见 db/sql/mysql/V2.4.0__mysql.sql。
因此HFish同时**支持mysql**数据库,相关的初始化脚本见 db/sql/mysql/V<% version %>__mysql.sql。
如果您想要切换到mysql数据库可以进行以下操作请确认已经安装了mysql数据库推荐5.7及以上版本)
@ -144,10 +146,10 @@ sqlite3 hfish.db < db/sql/sqlite/V2.4.0__sqlite.sql
linux环境可以在命令行执行下述命令然后输入密码root用户密码
```
mysql -u root -p < db/sql/mysql/V2.4.0__mysql.sql
mysql -u root -p < db/sql/mysql/V<% version %>__mysql.sql
```
windows环境可以使用远程连接工具比如sqlyog等导入db/sql/mysql/V2.4.0__mysql.sql 脚本。
windows环境可以使用远程连接工具比如sqlyog等导入db/sql/mysql/V<% version %>__mysql.sql 脚本。

View File

@ -1,6 +1,6 @@
# 下载
### HFish <% version %>
### HFish v<% version %>
```wiki
2021年6月16日发布
@ -19,9 +19,9 @@
### 控制端安装包
- [HFish-Linux-amd64](http://hfish.cn-bj.ufileos.com/hfish-2.4.0-linux-amd64.tar.gz) 为 Linux x86 架构 64 位系统使用
- [HFish-Windows-amd64](http://hfish.cn-bj.ufileos.com/hfish-2.4.0-windows-amd64.tar.gz) 为 Windows x86 架构 64 位系统使用
- [HFish-Linux-arm64](http://hfish.cn-bj.ufileos.com/hfish-2.4.0-linux-arm64.tar.gz) 为 Linux Arm 架构 64 位系统使用,常见于 NAS、路由器、树莓派等……
- [HFish-Linux-amd64](http://hfish.cn-bj.ufileos.com/hfish-<% version %>-linux-amd64.tar.gz) 为 Linux x86 架构 64 位系统使用
- [HFish-Windows-amd64](http://hfish.cn-bj.ufileos.com/hfish-<% version %>-windows-amd64.tar.gz) 为 Windows x86 架构 64 位系统使用
- [HFish-Linux-arm64](http://hfish.cn-bj.ufileos.com/hfish-<% version %>-linux-arm64.tar.gz) 为 Linux Arm 架构 64 位系统使用,常见于 NAS、路由器、树莓派等……
## 文件结构
@ -41,10 +41,10 @@ HFish
│ │
│ └───sql
│ └───mysql
│ │ V2.4.0__mysql.sql #mysql数据库用户升级文件
│ │ V<% version %>__mysql.sql #mysql数据库用户升级文件
│ │
│ └───sqlite
│ │ V2.4.0__sqlite.sql #sqlite数据库用户升级文件
│ │ V<% version %>__sqlite.sql #sqlite数据库用户升级文件
└───logs
│ │ server-年-月-日.log #server日志文件

View File

@ -63,7 +63,7 @@
themeColor: '#e93636',
dv: {
model: {
version: 'v2.4.1',
version: '2.4.1',
}
},
search: {

125
install Normal file
View File

@ -0,0 +1,125 @@
#!/bin/bash
#初始化
initVar() {
installType='yum -y install'
removeType='yum -y remove'
upgrade="yum -y update"
echoType='echo -e'
}
initVar
export LANG=en_US.UTF-8
#字体颜色
echoContent() {
case $1 in
# 红色
"red")
# shellcheck disable=SC2154
${echoType} "\033[31m${printN}$2 \033[0m"
;;
# 天蓝色
"skyBlue")
${echoType} "\033[1;36m${printN}$2 \033[0m"
;;
# 绿色
"green")
${echoType} "\033[32m${printN}$2 \033[0m"
;;
# 白色
"white")
${echoType} "\033[37m${printN}$2 \033[0m"
;;
"magenta")
${echoType} "\033[31m${printN}$2 \033[0m"
;;
# 黄色
"yellow")
${echoType} "\033[33m${printN}$2 \033[0m"
;;
esac
}
cd /opt
#首页菜单
menu() {
echoContent red "\n==============================================================\n"
echoContent green "当前版本v2.4.0"
echoContent green "HFish官网 https://hfish.io "
echoContent red "\n==============================================================\n"
echoContent skyBlue "-------------------------安装部署-----------------------------\n"
echoContent yellow "1.安装并运行HFish单机版"
echoContent yellow "2.安装并运行HFish集群版控制端"
echoContent yellow "3.用Docker运行HFish控制端"
echoContent yellow "4.补充不同架构蜜罐服务包"
# echoContent skyBlue "\n-------------------------配置管理-----------------------------\n"
# echoContent yellow "5.防火墙放通控制端端口coming soon"
# echoContent yellow "6.将HFish添加为系统服务coming soon"
# echoContent yellow "7.将控制端数据库替换为MariaDBcoming soon"
# echoContent skyBlue "\n-------------------------运维管理-----------------------------\n"
# echoContent yellow "8.将错误日志反馈给开发者coming soon"
# echoContent yellow "9.卸载HFishcoming soon"
echoContent red "\n=============================================================="
read -r -p "请选择:" selectMenuType
case ${selectMenuType} in
1):
standaloneInstall
;;
2):
serverInstall
;;
4)
selectServiceInstall
;;
*)
echoContent red ' ---> 选择错误,重新选择'
selectMenuType
;;
esac
}
standaloneInstall(){
if [ $(uname -s) = 'Linux' ] && [ $(uname -m) = 'x86_64' ] && [ $(getconf LONG_BIT) = '64' ]; then
wget -N --no-check-certificate http://hfish.cn-bj.ufileos.com/standalone-2.4.0-linux-amd64.tar.gz
elif [ $(uname -m) = 'aarch64' ] && [ $(getconf LONG_BIT) = '64' ]; then
wget -N --no-check-certificate http://hfish.cn-bj.ufileos.com/standalone-2.4.0-linux-arm64.tar.gz
else
echoContent red "未检测到系统版本,请参阅 https://hfish.io 官网文档手动安装!\n" && exit 1
fi
tar -zxvf standalone*.tar.gz
cd /opt/hfish && nohup ./server &
sleep 2
cd /opt/hfish/client && nohup ./client &
}
serverInstall() {
if [ $(uname -s) = 'Linux' ] && [ $(uname -m) = 'x86_64' ] && [ $(getconf LONG_BIT) = '64' ]; then
wget -N --no-check-certificate http://hfish.cn-bj.ufileos.com/hfish-2.4.0-linux-amd64.tar.gz
elif [ $(uname -m) = 'aarch64' ] && [ $(getconf LONG_BIT) = '64' ]; then
wget -N --no-check-certificate http://hfish.cn-bj.ufileos.com/hfish-2.4.0-linux-arm64.tar.gz
else
echoContent red "未检测到系统版本,请参阅 https://hfish.io 官网文档手动安装!\n" && exit 1
fi
tar -zxvf hfish*.tar.gz -C hfish
cd hfish
nohup ./server &
}
selectServiceInstall() {
if [ -d "/opt/hfish/packages" ]; then
cd /opt/hfish/packages
wget http://img.threatbook.cn/hfish/svc/services-2.4.0.tar.gz
tar zxvf services*.tar.gz
rm -f services-2.4.0.tar.gz
else
echoContent red "未检测到安装目录,请参阅 https://hfish.io 官网文档手动安装!\n" && exit 1
fi
}
menu