【免费下载链接】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),仅供参考
阅读完成 · 觉得有帮助?