尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
拆解RedTiger-Tools项目架构:渗透测试OSINT工具的JSON配置、双模式CLI解析与插件注入机制深度解析
【免费下载链接】RedTiger-ToolsRedTiger-Tools is a multifunction automation tool dedicated to pentesting and OSINT. The project is open source and designed to be fully configurable according to user needs. It also includes a plugin system that allows users to extend or create new features, in order to centralize multiple tools into a single unified platform.项目地址https://gitcode.com/gh_mirrors/red/RedTiger-Tools点击查看免费下载RedTiger-Tools 是一款开源的渗透测试Pentesting OSINT 开源情报自动化多功能工具它将 17 个扫描、追踪、查询类工具整合进同一个命令行平台并支持通过 JSON 文件集中配置和通过插件系统自由扩展。本文带你从目录结构、JSON 配置体系、双模式 CLI 解析到插件注入机制逐层拆解它的内部架构即使你刚接触 Python 项目源码也能看懂它的工具箱是如何运转的。1. 项目总览一个瑞士军刀式工具箱RedTiger-Tools 把安全工具按三大类组织内置功能一览分类内置工具编号 PentestingAdvanced Scanner、Vulnerability Scanner、Port Scanner、URL Discovery Crawler、IP Pinger、Host Discovery️ OsintDorking Query Engine、Wallet Tracker、Username Tracker、Email Tracker、Email Lookup、Ip Lookup、Phone Number Lookup、Instagram Profile Lookup UtilitiesFile Metadata Scanner、File Metadata Deleter、Website Cloner Plugins由用户自行扩展见第 5 节所有工具的源码都集中在 Program/ 目录下例如端口扫描器 Program/NSPortScanner.py、用户名追踪器 Program/OUsernameTracker.py。这种一个模块一个工具的划分是理解后续架构的钥匙。2. 目录结构配置与代码严格分离RedTiger-Tools 采用数据驱动的目录布局改配置不用碰代码RedTiger-Tools/ ├── redtiger.py # 唯一入口注册选项、注入插件、双模式调度 ├── setup.py # 一键安装依赖 初始化界面设置 ├── Config/ │ └── Utils.py # 全局工具库加载JSON、日志、代理、颜色 ├── Data/ # 9个JSON配置文件默认参数、端口库、载荷库等 ├── Plugins/ # 插件目录放.py文件即自动生效 │ └── Example.py # 官方插件示例 └── Ouput/ # 工具产出的JSON结果路径常量在 Config/Utils.py#L22-L38 中集中定义程序以自身所在目录为根推导出Data、Plugins、Ouput等路径因此项目整体拷到任何位置都能运行。3. JSON 配置体系9 个文件一次加载3.1 启动时统一读入Config/Utils.py#L42-L50 在模块导入时一次性json.load全部配置文件配置文件作用Config/Credits.json工具名、版本号、授权、作者信息Config/UserSettings.json界面开关是否显示装饰色、是否启用交互模式Data/DefaultParameters.json默认超时、默认端口、User-Agent 等运行参数Data/DefaultPorts.json常用端口扫描列表Data/Ports.json端口 → 服务名映射表Data/VulnerabilityPayloads.json漏洞扫描的测试载荷库Data/VulnerabilityErrors.json漏洞判定的错误特征库Data/VulnerabilitySensitivePaths.json敏感路径探测清单Data/UsernameTrackerPlateforms.json用户名追踪的平台清单这意味着想加一个扫描平台、改默认超时、扩充漏洞载荷只改 JSON 即可完全不涉及 Python 代码——这是该项目fully configurable设计的核心。3.2 默认值占位符替换Data/DefaultParameters.json 中的 User-Agent 支持占位符%TOOL_NAME%/%TOOL_VERSION%。加载时 Config/Utils.py#L68-L74 会把%TOOL_NAME%、%TOOL_VERSION%替换成真实值版本号升级后请求头自动跟随无需手工维护。3.3 配置回写与远程版本检查界面设置通过 Program/TSettingsUpdate.py 的SettingsUpdate函数写回 Config/UserSettings.json而 setup.py 安装时也复用同一函数setup.py#L46-L71保证安装时配置和运行中配置逻辑一致。此外 Config/Utils.py#L238-L247 的CheckUpdate会请求远端仓库的Credits.json比对tool_version启动横幅上就会提示Update available!。4. 双模式 CLI 解析两次 argparse 协作启动时 Config/Utils.py#L111-L112 只做一个判断sys.argv长度大于 1 则has_cli_args为真。redtiger.py#L204-L242 的Menu()据此分流带参数 →HandleCli一次性命令行模式适合脚本化调用无参数 → 交互菜单打印分类菜单输入编号循环选择4.1 第一阶段只解析你选了哪个工具redtiger.py#L110-L149 的HandleCli先为每个工具注册一个布尔开关如--advanced-scanner/-as然后用parse_known_args做一次宽容解析——它不关心后面的参数是否合法只负责找出用户敲了哪个工具剩下的参数原样保留。这样做的好处17 个工具的参数互不冲突第一遍解析永远不会因为参数不匹配而报错。4.2 第二阶段为选中工具注册完整参数确定工具后程序重建一个新的 parser把该工具在Options()中登记的参数表required、choices、type、nargs、help等逐条注册进去再对剩余参数做严格解析最后把结果作为关键字参数传给工具函数redtiger.py#L151-L172。4.3 自定义错误体验项目没有用 argparse 默认的错误输出而是自定义了RedTigerArgumentParserConfig/Utils.py#L159-L164重写error方法报错时打印提示Use --help or -h并自动回到交互菜单重新加载对新手非常友好。参数示例python redtiger.py --port-scanner -ps --target 192.168.1.1 --mode range --port 80-1000 --protocol-scan TCP5. 插件注入机制丢一个 .py 文件即可扩展这是 RedTiger-Tools 最有特色的设计。InjectPlugins函数redtiger.py#L35-L71在每次启动时执行四步扫描目录遍历Plugins/下所有.py文件跳过官方示例Example.py动态加载用importlib.util.spec_from_file_location把文件加载为模块——不依赖包导入路径插件放进来就能跑调用契约要求模块提供Register()函数返回包含name/description/function/arguments四个键的字典见 Plugins/Example.py#L7-L54自动编号插件沿用内置选项表的结构(name, description, category, function, arguments)编号从内置工具的最大编号之后顺延避免冲突并统一归入Plugins分类显示在菜单中。单个插件加载失败会被try/except静默跳过不会拖垮主程序——健壮性设计值得借鉴。插件在 CLI 模式下同样生效它的arguments表会被同一套两阶段解析器自动注册与内置工具体验完全一致。6. 快速上手与插件扩展实战 三步跑起来需要 Python 环境git clone https://gitcode.com/gh_mirrors/red/RedTiger-Tools cd RedTiger-Tools python3 setup.py python3 redtiger.py 写第一个插件把 Plugins/Example.py 复制一份改名不能叫Example.py修改Register()返回的名称、描述和参数再让Run()完成你的逻辑即可。注意插件函数里要兼容交互模式——参数缺失时用input()手动询问Plugins/Example.py#L56-L65这样菜单模式和 CLI 模式都能调用它。7. 架构总结层次关键文件职责入口调度redtiger.py注册 17 个工具、注入插件、CLI/菜单双模式分流全局基础设施Config/Utils.py加载 JSON 配置、日志/代理/错误处理、版本检查配置数据层Data/默认参数、端口库、漏洞载荷等平台数据功能模块层Program/一模块一工具命名规则 NS*/O*/U*/T* 对应四大类扩展层Plugins/基于Register()契约的免重启插件注入一句话总结RedTiger-Tools 用JSON 管数据、注册表管选项、importlib 管扩展、两次 argparse 管解析四招把十余个独立工具熔铸成统一平台。无论你想学习 Python 命令行工具的分层写法还是给它贡献一个插件这份架构地图都能让你快速上手。赞分享【免费下载链接】RedTiger-ToolsRedTiger-Tools is a multifunction automation tool dedicated to pentesting and OSINT. The project is open source and designed to be fully configurable according to user needs. It also includes a plugin system that allows users to extend or create new features, in order to centralize multiple tools into a single unified platform.项目地址https://gitcode.com/gh_mirrors/red/RedTiger-Tools点击查看免费下载相关推荐AppFlowy 完整安装指南3 条路线搭好开源 Notion 替代品与本地 AI 知识库AppFlowy 完整安装指南3 条路线搭好开源 Notion 替代品与本地 AI 知识库 AppFlowy 是一个开源的 AI 协作工作空间也是 Noti知识管理内容协同AI 应用企业应用深入解析APT2自动化渗透测试工具包深入解析APT2自动化渗透测试工具包 什么是APT2 APT2是一款功能强大的自动化安全评估工具包其名称中的APT并非指高级持续性威胁 AdvancedD3Ext/WEF项目解析WiFi渗透测试框架深度指南D3Ext/WEF项目解析WiFi渗透测试框架深度指南 项目概述 D3Ext/WEFWiFi Exploitation Framework是一款专为安全研上一篇AirPodsDesktop突破Windows蓝牙限制解锁AirPods完整潜能下一篇calibre 电子书格式转换完全指南10 分钟把 PDF 转成 EPUB创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

5 秒参考音频出中文 TTS:GPT-SoVITS 少样本语音克隆实操指南

5 秒参考音频出中文 TTS:GPT-SoVITS 少样本语音克隆实操指南

5 秒参考音频出中文 TTS:GPT-SoVITS 少样本语音克隆实操指南 【免费下载链接】GPT-SoVITS 1 min voice data can also be used to train a good TTS model! (few shot voice cloning) 项目地址: https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS GPT-SoVI…

📅 2026/10/30 2:04:48
安装前必看的检查清单:如何为 dsh-voice-ai-girlfriend 配好环境?显存、CUDA、WSL2 一次装齐

安装前必看的检查清单:如何为 dsh-voice-ai-girlfriend 配好环境?显存、CUDA、WSL2 一次装齐

【免费下载链接】dsh-voice-ai-girlfriend 语音 AI 女友(Voice AI girlfriend for DeepSeek Harness):Whisper 语音输入 Qwen3-TTS 声音克隆 句子级流式朗读 数字人动画窗。插话/排队双模式,说话即打断。 项目地址:…

📅 2026/10/30 2:04:48
RapidOCR 5分钟装好,离线跑通多语言 OCR 识别

RapidOCR 5分钟装好,离线跑通多语言 OCR 识别

RapidOCR 5分钟装好,离线跑通多语言 OCR 识别 【免费下载链接】RapidOCR 📄 Awesome OCR multiple programing languages toolkits based on ONNX Runtime, OpenVINO, MNN, PaddlePaddle, TensorRT and PyTorch. 项目地址: https://gitcode.com/GitHub…

📅 2026/10/30 1:59:47
MORE NEWS

更多资讯

📰

六个Linux系统调用Demo:从实验报告到可运行代码

简介:这份资源是西安电子科技大学操作系统课程的实验报告文档,面向正在学习操作系统原理、需要完成Linux环境下进程与线程编程实验的高校学生。内容围绕进程建立、线程共享进程数据、信号通信、匿名管道与命名管道通信、信号量实现进程同步等六个实验展开…

📰

Java抢票助手源码拆解:自动登录、查询与订单提交实战

简介:这份资源面向熟悉 Java、希望在春运等购票高峰自动抢购 12306 火车票的程序员,提供一套可运行的自动购票程序及配套说明。程序支持自动登录与重试、自动查询刷新、指定车次与动车/卧铺优先、代理配置及验证码识别,并兼容 FirefoxScripti…

📰

深度学习车牌识别:OpenCV定位与CNN字符识别

简介:《车牌识别系统详细讲解》PPT面向做毕业设计、课程项目或准备答辩的学生,围绕Python与OpenCV构建车牌识别系统,梳理从图像预处理、车牌定位过滤到字符分割识别的完整技术路线,并说明双CNN结构在后台图片识别中的应用思路。压…

📰

深入了解Python的继承

前言 继承(inheritance)是 Python 里最常用的代码复用手段之一:把一组类共有的属性和方法抽到一个基类(base class,也叫父类)里,其余类通过 class Child(Base) 声明自己是它的子类(s…

📰

Python+OpenCV车牌识别系统:两段式定位、分割与CNN识别

简介:围绕Python与OpenCV实现车牌识别的毕业设计答辩PPT,面向计算机视觉入门者、本科毕业设计学生及希望梳理车牌识别流程的开发者,重点讲清车牌定位与字符识别两段式方案。内容从选题背景、我国车牌样式特点与技术难点切入,依次展…

📰

C# 无需 IIS 搭建 Web 服务:.NET 8 自托管与 Kestrel 实战指南

简介:这份资源面向希望摆脱IIS依赖、快速搭建轻量级HTTP服务的C#开发者与学习者,聚焦用内置HttpListener实现自托管Web服务的完整示例。压缩包共17个文件、约18KB,以8个cs源码文件为核心,配合csproj项目配置、resx资源与xml配置&a…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬