NET Win HTML Editor Control破解过程全记录
前几天做项目。需要用到一个WinForm的HTML的编辑和显示控件。.NET自己并没有提供这方面的控件。去Googel百度了一下。没有找到合适的.NET控件。无奈去英文Googel了一下。果然发现了一款名为:.NET Win HTML Editor Control 3.2的控件。下载配置环境试用。发现免费版提供全功能试用。唯一不好的地方就是在编辑区有一个注册的链接。暂时还没发现有其他的限制。
整理一下破解思路如下:
1. 首先使用Reflector反编译工具尝试反编译程序。
2. 查找程序判断是否注册或者显示非注册版限制的代码。
3. 使用ilDasm反编译DLL为IL文件。
4. 去掉“判断是否注册”的代码或者“显示非注册版限制”的代码。
5. 使用ILasm编译IL文件为DLL。
6. 使用VisualStudio编写例子程序测试。
标准的破解流程。还好破解需要的软件电脑上都有,不需要从新下载。说干就干。
第一步:使用Reflector反编译程序:
哭泣!代码进行了混淆。虽然还是可以看得懂。不过估计没个十天半个月是搞不定了。我可没那么好的耐心。难道真的破解不了了么?算了直接跳过这步进行第三步。
第三步:使用ilDasm反编译DLL为IL文件
使用ilDasm反反编译DLL为IL文件的方法如下:进入命令行模式。 进入.NET SDK目录输入:
iLDasm.exe WinHTMLEditorControl.dll /out=E:"il" WinHTMLEditorControl.il
第四步:去掉“判断是否注册”的代码或者“显示非注册版限制”的代码
使用Visual Studio打开WinHTMLEditorControl.il。不管三七二十一先找到:
1 .publickey = (00 24 00 00 04 80 00 00 94 00 00 00 06 02 00 00 // .$..
2 00 24 00 00 52 53 41 31 00 04 00 00 01 00 01 00 // .$..RSA1..
3 F5 F3 1F 13 1D D7 B1 30 75 AD 0F B8 45
相关文档:
HTML <!DOCTYPE> 标签
定义和用法
<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。
该标签可声明三种 DTD 类型,分别表示严格版本、过渡版本以及基于框架的 HTML 文档。
以下面这个 <!DOCTYPE> 标签为例:
<!DOCTYP ......
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns=" http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档< ......
下面这个网站罗列了,几乎所有的关于HTML 5 在各种主流浏览器上的安全问题,这些安全问题很有可能将会是黑客攻击你的网上的敲门砖,他们几乎都和Javascript都有关系,你就要好好注意了。
http://heideri.ch/jso/
下面罗列几个:
1)<table background=”javascript:alert(1)”>
IE6,7,8,9,和Opera ......
function unhtml($content){
$content=htmlspecialchars($content);
$content=str_replace(chr(13),"<br>",$content);
$content=str_replace(chr(32)," ",$content);
return trim($content);
}
......