侧边栏壁纸
博主头像
ZDREAM

一万年太久,只争朝夕

  • 累计撰写 35 篇文章
  • 累计创建 2 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

Hfish蜜罐部署体验

Thassarian
2024-09-06 / 0 评论 / 0 点赞 / 6 阅读 / 0 字

近来工作繁杂,但对于技术的探索欲丝毫未减。在维护现有平台稳定运行的间隙,总想尝试一些新的东西,既是学习,也算是一种调剂。最近对网络安全领域的一些实践很感兴趣,特别是蜜罐技术。作为一种主动防御手段,它通过模拟易受攻击的服务来诱捕攻击者,记录其行为,从而达到威胁感知和溯源的目的。在众多开源蜜罐系统中,HFish因其跨平台、部署简单和社区活跃等特点,成为了本次实践的首选。

这篇笔记主要记录一次完整的HFish蜜罐部署、配置和接入远程节点的过程,算是一次学习体验的沉淀。

一、 环境准备与部署

为了不污染现有服务器环境,同时便于管理,照例基于Portainer去进行Docker部署HFish容器。

HFish由管理端(Server)和节点端(Client)组成。管理端负责接收和分析攻击数据,并对节点进行管理;节点端则负责模拟各种服务,是直接面对攻击的“诱饵”。

部署步骤大致如下:

https://hfish.net/#/README
  1. 拉取镜像:在Portainer的镜像管理页面,直接从公共仓库拉取HFish的官方镜像。选择一个稳定的版本标签即可。

  2. 创建容器

version: '3.8'

services:
  hfish:
    image: hfish:ubuntu335
    container_name: hfish
    ports:
      - "4433:4433"
      - "4434:4434"
      - "22:22"
      - "135:135"
      - "139:139"
      - "1433:1433"
      - "3306:3306"
      - "3389:3389"
      #- "6379:6379"
      - "9379:6379"
      - "7879:7879"
      #- "8080:8080"
      - "9080:8080"
      - "8081:8081"
      - "9000:9000"
      - "9200:9200"
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - /zdream/datas/hfish:/usr/share/hfish
    restart: always
    networks:
      - monitor-net
    
networks:
  monitor-net:
    external: true

二、 创建蜜罐

部署完成后,通过浏览器访问 http://<服务器IP>:4433 即可进入HFish的管理后台。首次登录修改密码。

HFish内置了丰富的蜜罐服务类型,涵盖了常见的Web服务、数据库服务(如MySQL、Redis)、基础服务(如SSH、Telnet)等,几乎可以“以假乱真”。

创建一个蜜罐服务的操作很简单:

  1. 在“环境管理” -> “服务管理”页面,可以看到所有支持的服务列表。

  2. 选择一个想要模拟的服务,例如MySQL服务,点击右侧的“操作”按钮进行配置。

  3. 配置的核心在于端口。默认情况下,HFish会使用服务的标准端口(如MySQL的3306)。如果宿主机的该端口已被占用,可以在部署时映射到其他端口。

  4. 点击“新建服务”按钮,一个MySQL蜜罐就启动了。此时,任何扫描或尝试连接该端口的行为都将被HFish精准记录下来。

为了让蜜罐更具迷惑性,还可以自定义一些服务的Banner信息或返回内容,让它看起来更像一个真实的业务系统。

三、 接入远程蜜罐

HFish的强大之处不仅在于单机部署的便捷,更在于其支持分布式部署。这意味着可以在不同的网络区域、不同的服务器上部署多个节点端,并将它们统一接入到一个管理端,形成一个分布式的蜜罐网络。

接入远程蜜罐的步骤同样清晰:

  1. 在管理端生成节点

    • 进入“环境管理” -> “节点管理”页面,点击“添加节点”。

    • 系统会自动生成一段安装命令。这段命令包含了连接到当前管理端所需的所有信息。

  2. 在远程节点服务器上执行命令

    • 准备一台新的、干净的服务器作为远程节点。这台服务器可以是内网的任意一台机器,也可以是位于不同云服务商的VPS。

    • 以root权限登录这台服务器,直接粘贴并执行刚才生成的命令。脚本会自动下载并安装节点端程序,并完成与管理端的连接配置。需要注意的是,要确保节点服务器的防火墙允许与管理端4434端口的通信。

  3. 验证与管理

    • 安装成功后,稍等片刻,就可以在管理端的“节点管理”页面看到新加入的节点。

    • 之后,便可以像管理本地节点一样,为这个远程节点开启或关闭各类蜜罐服务,所有攻击数据都会被实时回传到管理端进行统一分析和展示。

通过这种方式,可以轻松地将蜜罐的触角延伸到网络的各个角落,极大地扩展了威胁感知的范围。

结语

这次HFish的部署体验,从Portainer的容器化安装到分布式节点的接入,整个过程比预想的要平滑得多。它将复杂的蜜罐技术以一种非常易用的方式呈现出来,即便是非专业的安全人员也能快速上手。

当然,蜜罐并非万能的“银弹”,它更像是一个网络中的“哨兵”和“摄像头”。通过它,可以更早地发现潜在的威胁,了解攻击者的意图和手段,为后续的安全加固和应急响应提供宝贵的情报。

0

评论区