<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>静态分析 on Timmoc 的技术小屋</title>
    <link>https://t1mmoc.github.io/tags/%E9%9D%99%E6%80%81%E5%88%86%E6%9E%90/</link>
    <description>Recent content in 静态分析 on Timmoc 的技术小屋</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sat, 17 Oct 2026 15:46:00 +0800</lastBuildDate>
    <atom:link href="https://t1mmoc.github.io/tags/%E9%9D%99%E6%80%81%E5%88%86%E6%9E%90/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>【AIGC】12 行的关机程序，重编 11 次滚到 7.4 MB：靠量长度重建自我携带链，再让反编译器对一遍答案</title>
      <link>https://t1mmoc.github.io/posts/2026-10-17-epl-self-hosting-shutdown/</link>
      <pubDate>Sat, 17 Oct 2026 15:46:00 +0800</pubDate>
      <guid>https://t1mmoc.github.io/posts/2026-10-17-epl-self-hosting-shutdown/</guid>
      <description>学生时代写过一对互保的关机程序，主程序 12 行、看守进程 10 行，可编译产物一个 7.4 MB、一个 7.9 MB。这篇先不运行任何东西，只靠量长度和比哈希就重建出它的 11 代家谱：两个工程容器里各检出 10 / 11 个合法 PE 头，按构建时间戳排序后从第三代起每代正好大 557,056 字节，而且每代都完整含住上一代、字节全等；资源名「图片1」和它后面那个 PE 头只差 11 字节。之后用 e-packager 把源码真解出来做交叉验证——它吐出的两个载荷文件，字节数和 md5 与我预测的第 10、11 代逐位相同。可迁移的点：等差数列怎么当嵌套深度的免费线索、PE 时间戳怎么反过来当构建日志、双进程守护为什么只能靠一个死循环批处理来解，以及「我这套方法扫不出来」和「这个格式读不了」是两件事。</description>
    </item>
  </channel>
</rss>
