• AI赋能实践-利用AI快速打造自用安全工具集成平台

    一、          背景与需求

    在企业安全检查、渗透测试、红蓝对抗等实际安全工作中,经常需要结合多个开源与自研工具(如 subfinder、httpx、nmap、dirsearch、nuclei、sqlmap等)完成信息收集、存活探测、指纹识别、漏洞验证与结果整理。传统手工化做法存在以下痛点:

    • 工具分散:工具安装在不同目录(甚至不同语言/生态),路径各异,调用不统一。
    • 手动执行成本高:需要逐个打开终端、切换目录、敲命令;稍有参数变动就要重跑。
    • 输出格式不统一:不同工具输出风格差异大,需要人工清洗去色、解析状态码/标题、落盘归档。
    • 结果复用难:阶段产物不能自动作为下阶段输入,常见复制/粘贴易错。
    • 缺少流程编排:通常是“先子域 → 再探活 → 再扫描”的串联流程,但缺少可视化的可配置编排。
    • UI 体验缺失:纯命令行不便于实时查看/筛选多工具输出,不利于记录与复盘。

    为解决上述问题,我们可以使用AI工具,快速搭建一套适合于自己习惯的定制化GUI安全工具集成平台:

    • 单窗口统一入口:通过配置命令模板统一所有工具的调用方式,跨平台兼容。
    • 两种执行模式:
      • 单一工具模式:对指定目标快速执行某个工具,便于验证与单点复测。
      • 工具链模式:如顺序执行subfinder ->httpx-> cdnanalyzer,随后自动对未使用cdn的IP地址进行全端口扫描,对未部署WAF的域名进行POC扫描、目录扫描、JS扫描等,支持“上一阶段结果作为下一阶段输入”。
    • 实时输出与落盘:子进程输出被统一截获、去除 ANSI 颜色、写入日志文件,并在 UI 多标签中实时展示。
    • 双重过滤与规范化:对 httpx 结果按状态码/标题黑名单过滤,生成高质量有效存活域名与指纹数据。
    • 便捷运维:一键检查工具安装、清理日志和临时文件、主题化界面等。

    该平台基于 Tkinter + ttkbootstrap实现,目标是让安全工程师“少写命令、多拿结果”,把精力更多地放在资产管理、漏洞管理、风险分析、安全研究等高价值安全能力上。

     

    二、          通过 AI 实施的主要步骤

    1、   选择AI工具

    可以选择cursor、gemini命令行、codebuddy等AI编程工具和合适的模型。

    2、   AI 提示词

    通过以下三条参考提示词,分阶段进行构建、测试和持续迭代。

    参考提示词1:生成基本框架(GUI界面+基本代码)

    需求:请用 Python(Tkinter + ttkbootstrap)生成一个桌面应用的基础框架,要求:

    • 左侧显示内容:
    • 目标设置:可以输入域名或IP,或者从文件导入
    • 单一工具选择:通过点击横向排列的工具类别页签,选择对应的检查工具
    • 工具链配置:用户点击选择多个工具后,自动显示汇总信息,后续按选择的命令依次执行,上一个命令的输入自动做为下一个命令的输入;
    • 命令执行按钮:开始扫描和停止扫描按钮
    • 右侧显示内容:
    • 上部分:实时日志输出显示,每个命令执行时新增对应的页签显示该命令的执行结果
    • 下部分:显示命令按钮,包括:清除日志,清理文件,关闭当前标签,关闭全部标签
    • 统一从py 读取命令模板(工具名称、工具类别、工具参数、主题等)。
    • 实现日志函数 log(),带时间戳输出到 UI;
    • 窗口主题使用 ttkbootstrap“superhero”。
    • 主要工具和工具类别包括:
    • 信息收集:subfinder,httpx
    • CDN和WAF检查:cdnanalyzer,wafw00f
    • 端口扫描:nmap,naabu
    • 目录扫描类:dirsearch,gobuster,ffuf
    • URL和JS分析:hakrawler,jsscan
    • POC工具:nuclei
    • 漏洞利用:xssstrike,dalfox,sqlmap
    • 手工测试:curl

    基本符合需求,也可以继续完善界面。

    参考提示词 2:实现单个命令执行和日志显示

    需求:在现有 GUI 框架中完善单一工具执行链路和实时日志显示:

    1)读取输入框内容或导入文件内容;

    2)单一命令执行时,只能同时选择一个命令;

    3)读取输入框和导入文件时,命令的执行方式不同,需要根据不同命令自动处理不同输入;

    4)命令执行时,命令运行日志显示在日志标签中,命令实时执行结果显示在新创建的命令标签中,命令最终执行结果保存在当前目录的工具名称-日期时间.txt;

    5)如果输入是从文件中读取,执行结果保存为单个日志文件,实时日志也是单个页签显示;

    6)当前命令运行环境是windows;

    7)增加暂停扫描按钮,实现扫描-暂停-停止功能;

    单个命令和日志:

    多次迭代后,所有命令日志执行: 

    参考提示词 3:实现命令链执行

     

    需求:在现有 GUI 框架中实现工具链执行功能:

    1)安全人员按照自己的检查思路,选择对应的检查工具;

    2)按顺序执行每个工具,工具执行时除了工具自身执行结果的输出外,还需要考虑如何对当前工具的执行结果进行处理以便作为下一个工具的输入;

    3)考虑工具执行的稳定性;

    4)如果工具链选择不合理,给出建议。或者在工具链配置界面给出常用的工具链案例

    多次迭代后的测试结果:输入域名,依次执行subfinder-httpx-cdnanalyzer-naabu-nuclei

    后续可继续优化命令执行参数、执行结果、增加其它工具、性能优化、漏洞展现、漏洞报告等功能,但是通过AI可以大幅降低编码能力要求、缩短时间,实现功能快速迭代。

     

    三、          实践总结

    本项目通过AI辅助开发,快速构建了一套具备基本功能的集成化安全平台,主要包括:

    • 统一操作– 整合多个安全工具到统一界面,支持单工具和流程化扫描
    • 自动流转– 智能衔接各工具执行,自动传递扫描结果,减少人工干预
    • 自主定制 – 通过AI持续微调和迭代,符合个人工作习惯和实际运行环境
    • 效率提升– 将安全工程师从重复命令操作中解放,专注于漏洞分析和风险研判

     

    本次实践证明了AI编程在安全领域的巨大潜力:

    加速开发:将传统需要数周的工作压缩至几天完成

    降低门槛:即使对GUI编程不熟悉也能构建专业工具

    聚焦价值:让安全工程师专注于分析而非重复操作

     

    拥抱AI技术不是替代专业知识,而是增强执行能力,让我们能够将有限精力投入到更高层次的安全分析和策略制定中。

     

    «
    »
以专业成就每一位客户,让企业IT只为效果和安全买单

以专业成就每一位客户,让企业IT只为效果和安全买单

在线咨询
连接中...