如何使用HASH创建低交互式蜜罐系统

admin 2025年1月21日22:49:20评论26 views字数 1982阅读6分36秒阅读模式
如何使用HASH创建低交互式蜜罐系统
关于HASH

HASH是一个用于创建和启动低交互蜜罐的框架,可以帮助广大研究人员轻松创建HTTP无关的低交互式软件蜜罐。

如何使用HASH创建低交互式蜜罐系统

HASH 的主要理念是易于配置,能够灵活地模拟在 HTTP/HTTPs 上运行的任何软件。尽可能减少占用空间,避免被检测为蜜罐。

功能介绍

1、单一框架即可部署基于 HTTP/HTTPs 的蜜罐;

2、通过 YAML 文件轻松配置;

3、内置honeytraps;

4、基于强大的随机化fakerjs以避免蜜罐检测;

5、支持与 Datadog 集成,通过 APM 提取和分析蜜罐日志和 HTTP 请求;

工具要求

Node.js

工具安装

HASH 使用 Node.js 构建,但它可以根据配置模仿任何基于 Web 的语言/服务器。

由于该工具基于Node.js开发,因此我们首先需要在本地设备上安装并配置好最新版本的Node.js环境。

源码获取

广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/DataDog/HASH.git

NPM安装

npm install -g hash-honeypot

Docker使用

docker run --rm ghcr.io/datadog/hash help
工具使用

生成蜜罐配置文件

HASH 使用 YAML 文件来配置如何模拟所需的软件,配置文件文件夹的典型结构如下:

|____templates|     |____resources|     |     |____index.html|     |     |____style.css|     |     |____favicon.ico|     |____404.yaml|     |____default.yaml|____init.yaml

我们可以自己构建它,也可以使用generate命令生成它

Usage: HASH generate [options] <folder>Generate honeypot profileArguments:  folder                         目标App路径Options:  -t --template <template_name>   基础模板 (默认: "default")  -n --name <honeypot_name>      蜜罐名称  -s --swagger <swagger_file>     待转换swagger文件的路径  -h, --help                      显示命令帮助信息

运行样例:

hash-honeypot generate myhoneypot --name my-honey-pot --template default

将 Swagger 文件转换为蜜罐的示例:

hash-honeypot generate sample-swagger2 -n sample -s ./test-swagger/test-swagger.yaml

我们还可以通过generate命令直接将 Swagger 文件转换为蜜罐。

蜜罐运行

Usage: HASH run [options] <folder>Run HASHArguments:  folder                     模板目录路径Options:  -l, --log <transport>      日志记录 (默认: "console,file,datadog")  -f, --log_file <filename>   日志文件名称 (默认: "hash.log")  -h, --help                显示命令帮助信息

运行样例:

hash-honeypot my-honeypot-profile -l file -f ./logs/hash.log

定制和配置

你可以根据需要自定义蜜罐配置文件,请求模板示例如下:

id: sqli-errorinfo:    title: 'SQL error honeytrap'requests:    - isTrap: false      expect:          method: GET          path: '/author/:Id([0-9]+)'      reply:          status: 200          headers:              content-type: 'text/html'          body:              view: 'author.html'    - isTrap: true      expect:          method: GET          path: '/author/:Id'      reply:          status: 500          headers:              content-type: 'text/html'          body:              contents: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 2"
工具运行截图

如何使用HASH创建低交互式蜜罐系统

许可证协议

本项目的开发与发布遵循Apache-2.0开源许可协议。

项目地址

HASH

https://github.com/DataDog/HASH

原文始发于微信公众号(FreeBuf):如何使用HASH创建低交互式蜜罐系统

 

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年1月21日22:49:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   如何使用HASH创建低交互式蜜罐系统http://cn-sec.com/archives/3657445.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息