- 尽管明确指定了防守资产,但外包人员还是频繁误封生产环境。
- 安全设备匹配到DNS服务器请求的IOC域名告警时,外包人员胡乱封禁DNS,导致邮件等需要外联的生产系统崩溃。
- 外包人员甚至对127.0.0.1进行封禁,显现出严重的专业知识缺乏。
- 监测人员每时每刻都需要根据安全设备告警填写封禁IP协同表格,封禁人员也无法实时封禁攻击IP,效率低下。
- 重复性的工作需要大量人员参与,还必须进行24小时轮班,增加了人力成本和管理复杂度。
- 防守单位的防火墙等封禁设备性能低下,添加规则既繁琐又易导致系统崩溃。
- 误封IP后,解禁时需要在多个设备上反复排查搜索,耗费了大量时间和精力。
- 临时添加白名单IP后,无法有效同步给所有工作组成员。
- 总是重复封禁相同IP,封禁设备的规则库又容易空间不足,无法满足封禁需求。
- 封禁设备陈旧,无法支持封禁一定时间后自动解除。
- 安全厂商自家设备只能和自家设备进行联动,无法也不给适配全部设备,限制了整体防护效果。
针对以上问题,我们特此研发了全自动封禁平台(https://github.com/sec-report/SecAutoBan),从此防守不再困难,平台具备以下优势:
- 智能化防护:自动封禁威胁,减少人为错误,降低人力成本。
- 高效协同:封禁信息实时同步,确保所有工作组成员及时了解动态。
- 精确管理:支持对封禁规则进行细粒度控制,自动解除过期封禁,提升封禁设备性能。
- 兼容性强:能够与不同厂商的安全设备进行联动,构建全面的防护体系。
- 简化操作:用户友好的界面设计,简化操作流程,降低学习成本。
服务采用分布式设计,由三大模块组成,分别为:告警日志解析处理模块、核心处理模块、IP封禁/解禁模块,每个模块单独运行。
-
告警模块:负责处理所有来自安全设备的告警信息,并提取其中的IP地址。
-
核心模块:接收到告警模块传入的IP地址后,进行去重和过滤等处理,以确保只有有效的IP被处理。
-
封禁模块:接收来自核心模块处理后的IP地址,并进行相应的封禁操作。
具体思维导图如下:
核心模块采用docker-compose方案一键安装,运行脚本前请先安装docker:
mkdir SecAutoBan && cd SecAutoBan
wget https://raw.githubusercontent.com/sec-report/SecAutoBan/main/docker-compose.yml
wget https://raw.githubusercontent.com/sec-report/SecAutoBan/main/run.sh
chmod +x run.sh
./run.sh
Docker全部运行后访问http://127.0.0.1/访问管理后台,初始化管理员账号。
0x02 新建告警/封禁设备
首先在管理后台添加设备:
安装加密依赖,回连平台数据包需要加密:
pip3 install pycryptodome
模块具体使用方法请跳转至项目文档:https://github.com/sec-report/SecAutoBan
(目前项目中只有python版样例,后续会上新golang等语言样例),根据项目文档配置好模块后,使用python运行即可。
运行告警分析模块:
运行封禁/解封模块:
运行成功后,平台将显示设备已连接:
模块全部运行后,就会有源源不断的报警推送到核心模块中,核心模块处理后会再推送给所有连接平台的封禁模块进行处置。
至此整个系统就全部运行起来了,享受全自动封禁带来的高效和便捷吧~
– END –
原文始发于微信公众号(ChaMd5安全团队):蓝队巨献!告警IP全自动封禁平台