ageno

能拆什么

提交网址,或上传安装包、程序、固件、桌面应用。ageno 在云端做静态分析,每条结论都带可信度和证据编号,没覆盖到的写「未知」和原因。

支持的目标

网页

提交
http 或 https 的公开网址;不带协议时按 https 处理
能拆出
页面结构、样式数值、1440、768、390 三个宽度下的排版和断点、悬停和焦点状态、滚动时的变化、动效参数、站内多个页面、接口形状、技术栈、三个宽度的图层画布(图层和截图对齐,每个属性带证据,只给本人)
范围
内网和保留地址直接拒绝;只看和提交页同源的页面,遵守 robots.txt,不登录、不点击、不提交表单
报告分类
设计、布局、交互、页面、技术
分析步骤
校验网址 → 打开页面 → 页面检查 → 截图 → 测量样式 → 多宽度排版 → 悬停与焦点 → 滚动行为 → 动效参数 → 站内多页面 → 接口与请求 → 技术栈识别

安卓安装包

提交
.apk 文件,按文件内容识别
能拆出
文件清单、框架、页面模块、代码结构和反编译摘录、权限和组件、依赖和许可证、体积、界面布局和控件,以及布局对应到哪个界面类
报告分类
架构、权限与组件、结构、代码、页面、依赖与许可、体积
分析步骤
校验文件 → 安装包清点 → 解包 → 识别框架 → 网页层与 JS 应用 → 清单与权限 → 资源解码 → 自写代码 → 文件事实与许可

鸿蒙安装包

提交
.hap 文件,按文件内容识别
能拆出
清点、解包、模块和页面路由、权限、方舟字节码里的字符串、体积
范围
ArkTS 业务逻辑暂时读不了(还没有方舟字节码反汇编器),报告写成未知
报告分类
架构、权限与组件、结构、页面、体积
分析步骤
校验文件 → 安装包清点 → 解包 → 识别框架 → 文件事实与许可 → 网页层与 JS 应用

原生程序

提交
Mach-O、ELF、PE 程序文件,按文件内容识别
能拆出
结构、导入导出、函数、调用关系、伪代码、字符串;Go、Rust、.NET 程序的语言和依赖信息
报告分类
架构、结构、接口、依赖与许可、函数、伪代码、字符串
分析步骤
校验文件 → 读取结构 → .NET 元数据 → 反编译引擎自动分析 → 程序概览 → 语言与运行时 → 调用关系 → 伪代码 → 字符串

固件

提交
.bin、.img、.fw 固件文件
能拆出
分区识别和解包、启动项、许可证,再挑一个主要程序按原生程序的流程分析
范围
每个固件只分析一个程序
报告分类
架构、结构、接口、依赖与许可、函数、伪代码、字符串
分析步骤
校验文件 → 分区识别 → 解包 → 文件事实与许可 → 网页层与 JS 应用 → 读取结构 → .NET 元数据 → 反编译引擎自动分析 → 程序概览 → 语言与运行时 → 调用关系 → 伪代码 → 字符串

iOS 应用包

提交
你自己构建的未加密 .ipa
能拆出
清点、解包、Info.plist 和权限,再按原生程序的流程分析主程序;自己构建的 ipa 还有 nib 界面结构
范围
App Store 下载的应用不做脱壳;上传时要勾选「自己构建的未加密包」;包里有加密的程序或 App Store 分发标记时不分析,勾选了也一样
报告分类
架构、权限与组件、结构、依赖与许可、函数、伪代码、字符串
分析步骤
校验文件 → 安装包清点 → 解包 → 识别框架 → 应用元数据 → 文件事实与许可 → 读取结构 → .NET 元数据 → 反编译引擎自动分析 → 程序概览 → 语言与运行时 → 调用关系 → 伪代码 → 字符串 → 网页层与 JS 应用

桌面应用

提交
Electron 应用包(asar)、macOS 磁盘映像、macOS 应用(zip)、桌面应用(zip),按文件内容识别
能拆出
运行时和进程(Electron 的主进程、预加载脚本)、渲染进程能调的接口、模块树、依赖和许可证、CSS 变量、体积
范围
这一轮不反编译桌面应用里的原生程序和 .node 原生插件
报告分类
架构、设计、依赖与许可、结构、体积
分析步骤
校验文件 → 安装包清点 → 解包 → 识别框架 → 网页层与 JS 应用 → 文件事实与许可 → 应用元数据

未识别格式

提交
识别不出格式的文件也能提交
能拆出
先做格式识别,报告写明识别结果
报告分类
结构
分析步骤
校验文件 → 格式识别

不做的事

  • App Store 下载的 iOS 应用脱壳:这是规避技术保护措施,ageno 不做。
  • 运行你上传的文件:所有安装包和程序只做静态分析,不运行。
  • 分析你无权分析的软件:提交和上传时都要勾选授权确认。
  • 给别人的软件输出可以直接复用的反编译代码:第三方软件只给结构、参数和思路,伪代码只给短摘录(最多 8 段、每段不超过 40 行);只有验证过所有权的自己的软件,才给已分析部分的反编译全文。
  • 导出原作的文案、图片、字体:任何情况下都不导出,自己的软件也一样。
  • 网页上登录、点击、提交表单:网页只读取,不做任何操作。
  • 看到服务器上的逻辑:拆的是网页和客户端,服务器上运行的代码看不到。
  • 按产品名搜索(例如输入「微信」):规划中;现在需要网址或文件。

分析深度

上传安装包、程序和固件时在确认框里选深度,默认是设置里的「默认分析深度」;提交网址时不单独选,直接用设置里的默认分析深度。网页的快速深度不含悬停与焦点、滚动行为、动效参数、站内多页面;站内页面最多快速 1 页、标准 8 页、深度 20 页。

  • 快速:结构和符号
  • 标准:再加关键函数反编译
  • 深度:全部函数

代码给多少

提交时选这是谁的软件,报告按选择和证据决定给多少代码;判断不了一律按第三方处理。原作的文案、图片、字体任何情况下都不导出,公开时也一律不带代码。

  • 第三方软件(学习研究)(第三方或未确认):重建蓝图,伪代码只给短摘录(最多 8 段、每段不超过 40 行);公开时不带线框底图、多宽度截图和交互状态截图
  • 开源软件(开源软件):代码和第三方一样;另外写出许可证、上游地址(不联网核验)和 copyleft 义务,公开时带线框底图、多宽度截图和交互状态截图和上游地址;包里要同时看到目标自己的开源许可证和上游地址才按开源处理
  • 自己的软件(自有软件(未验证) / 自有软件(已验证)):生成优化任务;在设置里验证过网站主机或安卓应用的所有权后,给已分析部分的反编译全文,公开时带线框底图、多宽度截图和交互状态截图;没验证时同第三方

所有权在「设置 › 所有权验证」里验证:网站用 DNS TXT 记录或网站上的文件证明主机,安卓应用要签名证书、包名和 App Link 三项都对上,验证 90 天有效。其他类型这一轮只能声明。

报告里有什么

  • 已观察 工具直接读到的事实
  • 推导 由已观察的事实计算或组合得出
  • 推断 从名字、模式等线索判断,还没有直接验证
  • 未知 这次没有覆盖到;报告不替它编答案

每条结论都能点开证据:编号、工具、引擎版本、可信度和限制原文。报告开头有一页看懂;每张图都附一张表格(文字版),公开作品的页面关掉 JavaScript 也能读到。报告附一份「实现说明」或「优化任务」,还有重建蓝图和只给你自己下载的重建工程包,可以直接交给你的编码 Agent。

报告默认只有你自己能看;上传的文件按设置里的保留期删除(分析完即删、1 天、7 天)。可以选择公开到发现页:公开的有目标名称(网址目标是网址,上传的文件换成按格式和摘要起的公开名)、类型、识别出的格式、文件大小和 SHA-256;报告标题和副标题、生成时间和分析耗时;结论(标题、正文、可信度、证据编号、推断依据、未知原因、所在分类和出自哪个工具);结论里的图和表格;一页看懂;结论引用到的证据头(出处是 REA 还是 ageno 自己的测量、工具、操作、引擎和版本、可信度、来源性质、限制原文、采集时间,分析对象的文件名、格式和 SHA-256,文件名不带目录,不含引用片段);知识面板的标题、副标题、预览、文件的 SHA-256 和目标信息(例如格式、大小、包名、版本、SDK、UUID、函数和字符串数量,网页的地址、浏览器和 HTTP 状态,带文件路径的信息和你上传的文件名去掉);分析引擎和版本(引擎名和目标类型也做标签)、引用校验结果(通过没有、校验了几次、去掉了几个数值);代码政策(档、规则版本、你提交时的所有权声明、许可证和是不是 copyleft、允许给多少代码和判定依据,开源软件附上游地址,不带所有权验证记录和许可证线索);公开者(你的昵称和头像)。网页的首屏截图和整页截图会公开(首屏截图做发现页封面和公开页的预览图),和代码政策无关;线框底图、多宽度截图和交互状态截图只在代码政策是「自有软件(已验证)」或「开源软件」时公开,其余只公开它们的结构和数值。不公开的有你上传的原始文件和文件名(换成按格式和摘要起的公开名)、任何代码、引用片段、你的实现说明、重建蓝图、图层和重建工程包;文字里构建机的用户目录写成 ~。

怎么引用

引用时请附链接和证据编号。每个公开拆解在链接后加 .md 就是同样内容的 Markdown 版本。

常见问题

ageno 会运行我上传的文件吗?

不会。所有安装包和程序只做静态分析,不运行。

能拆 App Store 下载的 iOS 应用吗?

不能。ageno 不做脱壳;只分析你自己构建的未加密 .ipa,上传时要勾选确认。包里有加密的程序或 App Store 分发标记时不分析。

能拆桌面应用吗?

能。支持Electron 应用包(asar)、macOS 磁盘映像、macOS 应用(zip)、桌面应用(zip),按文件内容识别;这一轮不反编译里面的原生程序和 .node 原生插件。

网页会看哪些内容?

页面结构、样式数值、1440、768、390 三个宽度下的排版和断点、悬停和焦点状态、滚动时的变化、动效参数、站内多个页面、接口形状、技术栈、三个宽度的图层画布(图层和截图对齐,每个属性带证据,只给本人)。只看和提交页同源的页面,站内页面最多快速 1 页、标准 8 页、深度 20 页。

能拿到反编译出来的完整代码吗?

只有你自己的软件可以:提交时选「自己的软件」,并在设置里验证网站主机或安卓应用的所有权,报告给出已分析部分的反编译全文。别人的软件只给结构,伪代码只给短摘录(最多 8 段、每段不超过 40 行)。

报告里的「已观察」「推导」「推断」「未知」是什么意思?

已观察:工具直接读到的事实;推导:由已观察的事实计算或组合得出;推断:从名字、模式等线索判断,还没有直接验证;未知:这次没有覆盖到;报告不替它编答案。

我的报告会被别人看到吗?

默认只有你自己能看。你可以选择公开到发现页,随时可以撤回。公开的有目标名称(网址目标是网址,上传的文件换成按格式和摘要起的公开名)、类型、识别出的格式、文件大小和 SHA-256;报告标题和副标题、生成时间和分析耗时;结论(标题、正文、可信度、证据编号、推断依据、未知原因、所在分类和出自哪个工具);结论里的图和表格;一页看懂;结论引用到的证据头(出处是 REA 还是 ageno 自己的测量、工具、操作、引擎和版本、可信度、来源性质、限制原文、采集时间,分析对象的文件名、格式和 SHA-256,文件名不带目录,不含引用片段);知识面板的标题、副标题、预览、文件的 SHA-256 和目标信息(例如格式、大小、包名、版本、SDK、UUID、函数和字符串数量,网页的地址、浏览器和 HTTP 状态,带文件路径的信息和你上传的文件名去掉);分析引擎和版本(引擎名和目标类型也做标签)、引用校验结果(通过没有、校验了几次、去掉了几个数值);代码政策(档、规则版本、你提交时的所有权声明、许可证和是不是 copyleft、允许给多少代码和判定依据,开源软件附上游地址,不带所有权验证记录和许可证线索);公开者(你的昵称和头像)。网页的首屏截图和整页截图会公开(首屏截图做发现页封面和公开页的预览图),和代码政策无关;线框底图、多宽度截图和交互状态截图只在代码政策是「自有软件(已验证)」或「开源软件」时公开,其余只公开它们的结构和数值。不公开的有你上传的原始文件和文件名(换成按格式和摘要起的公开名)、任何代码、引用片段、你的实现说明、重建蓝图、图层和重建工程包;文字里构建机的用户目录写成 ~。

上传的文件保存多久?

按你在设置里选的保留期删除:分析完即删、1 天、7 天。

网址怎么选分析深度?

上传安装包、程序和固件时在确认框里选深度,默认是设置里的「默认分析深度」;提交网址时不单独选,直接用设置里的默认分析深度。网页的快速深度不含悬停与焦点、滚动行为、动效参数、站内多页面;站内页面最多快速 1 页、标准 8 页、深度 20 页。

能按产品名搜索吗?

现在需要网址或文件。按产品名搜索在规划中。

怎么引用 ageno 的公开拆解?

附上作品链接和结论对应的证据编号;每个公开作品在链接后加 .md 就是同样内容的 Markdown 版本。

开始拆解