惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
罗磊的独立博客
M
MIT News - Artificial intelligence
G
Google Developers Blog
V
V2EX
D
Docker
博客园_首页
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
Y
Y Combinator Blog
WordPress大学
WordPress大学
T
Tailwind CSS Blog
博客园 - 司徒正美
J
Java Code Geeks
L
LangChain Blog
博客园 - 三生石上(FineUI控件)
B
Blog RSS Feed
博客园 - 【当耐特】
小众软件
小众软件
Apple Machine Learning Research
Apple Machine Learning Research
大猫的无限游戏
大猫的无限游戏
P
Proofpoint News Feed
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky

博客园 - Jason.NET

请不要为了自己的商业目地不择手段 DOTNET 32位下的程序在64位下真的可以运行吗? - Jason.NET - 博客园 加密狗保护的VFP软件破解 (朋友之作,代发) 使 Framework 2.0 的程序集不用安装 Framework 就可以运行的工具免费发布了 怎样给没有源代码的.net程序添加修改功能 谁不需要赚钱 -- 想,还要敢想 - Jason.NET 发布一个武汉的.net程序员招骋信息 中国软件业的混乱,观总价值2亿项目后的感叹 - Jason.NET - 博客园 刚刚收到来至 Reliasoft Corporation 的一封版权申明信 我想列出一个保护类软件的黑名单 排名和积分都大大降低了?怎么回事? 一款非混淆软件 for .net 保护 各种Web脚本下,日历的实现方法 为什么浏览器有这么多标准??? 由浅至深,谈谈.NET混淆原理 -- 五(MaxtoCode原理),六(其它保护方法) QQ有漏洞??? 由浅至深 谈谈.NET混淆原理 (四) -- 反混淆(原理 + 工具篇) WEB程序员,界面美化是你心中永远的痛吗? 由浅至深 谈谈.NET混淆原理(三)-- 流程混淆(续)
Thinstall 包装 Dotnet 程序分析
Jason.NET · 2005-11-02 · via 博客园 - Jason.NET

首先,非常抱歉之前的文章中说 Thinstall 对Dotnet 压缩会生成一个本地的文件,然后再调用.

这是我的失误,一直都以为是这样,今天在 Pediy 上看到有人问,我才光掉点时间去研究了 Thinstall的原理,由于太忙,所以分析的时候没有做笔记,现在把大至的原理给大家讲一讲.希望大家原谅我之前的不负责任. :)

好久没在 Pediy 上转了,今天上去转了转,下了点新版本的调试器和反汇编工具,充实了一下自己的弹药库。然后上论坛转转,看到有人问:“为什么有的Dotnet没有CLR Header?”。

Codelib Resource 是目标程序,我下载下来,用 Ildasm 一看,报错,没有 Clr header。ok。

开始分析。 我习惯使用  ODBG

目标中断在程序入口处。

还好 Thinstall 没有 Anit , 一路跟下去,一开始是自动生成asm,然后是有许多花指令。最后解压原 Assembly ,并将执行权交给 mscoree 执行

他利用了 Mscoree!_CorExeMain 来调用 Dotnet Assembly

因为一个标准的 Dotnet Application 的入口其实都是一段本地代码,即 Mscoree!_CorExeMain

而 Thinstall 把原 Assembly 解压后,存在的位置就是 BaseAddress + 0x2000左右.所以,只需要 dump BaseAddress 手工修复PE文件头,就可以得到原 Assembly,得到 Assembly 后,你可以使用任何反编译工具打开它.

以上是非常简单的说明,由于分析时没有做笔记,所以就不Post过程了.