过狗菜刀的制作

2013-05-11 13:19:04 136 18241 16


过狗菜刀的制作
  
BY:风之传说

好久木发帖子了,现在来发一个吧。亮亮相。
正文:

看到90sec的群里有一童鞋发了张图片。。。说神马,过狗菜刀。。好像很牛B的样子,也没截他过狗后的效果图。。就算他过狗吧,于是问了半天,你是如何弄的,然后一句话都没回。。

没办法,不搞破解几年了。现在,为了这个所谓的神器,那么我们来自己制作下吧~!不私藏。

首先截下我得菜刀版本。



这个网上有,我就不发了。。

我们开始吧,首先,要反汇编,我们要查壳,因为无壳,才好知道他是什么语音写的,程序也不会跑飞。



查了下,发现时UPX的,这个网上脱壳机,一把大。。也没什么技术含量。ESP定律我都忘记的差不多了。。UPX壳主要是为了压缩软件的,是一款不错的压缩壳。

好了脱壳后我们看看。



C++6.0好了,我们知道了程序。。
在制作的时候,我们还应该做点准备工作。。因为数据讲究精确性。我们先截取他的封包看看。





我们知道,能不能过狗,的关键之处在于User-Agent: 的伪造。于是
我们发现了。。User-Agent: Mozilla/5.0 (Windows; Windows NT 5.1; en-US) Firefox/3.5.0。
好,先用本子记着。。我们接下来要用到。。

(在这里我要说一下,有个误区,有的童鞋喜欢去搜索User-Agent。别的程序也许可行,这个程序,你搜索这个关键字就错了。我们后面是以Firefox为关键字进行搜索。)
OK,把菜刀载入OD。。



然后,接下来。我们搜索unicode的字符。



然后我们就搜索关键字Firefox吧。



OK.成功找到了。。。我们双击进去。。



我们看到。他指向push chopper_.00487E20
先把这个地址记住。00487E20。这句话的意思,把这个地址压入堆栈,那么此地址就是记录着Mozilla/5.0 (Windows; Windows NT 5.1; en-US) Firefox/3.5.0的地址了。。

然后我们到内存地址搜索。



OK,我们终于是找到了。我们来改改看。。

然后把要改的,跟原先的对比。。
改前:Mozilla/5.0 (Windows; Windows NT 5.1; en-US) Firefox/3.5.0
改后:Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://www.baidu.com/search/spider.html)
大家看到了神马。。改后的字数,跟以前的字数不对称。。明显长一大截。。如果把这个数据覆盖的话,会覆盖掉程序其他的地方。。程序就运行不起来了。。要是短的话还好说,把其他的清空就行。。长了就有些麻烦。


看来这过狗菜刀还真不好弄呢。。不过这可难不倒我们小菜。。
我们先记住个地址,00442060=原来的User-Agent:的字符串地址。
我们用C32打开。。



看到这里是程序的领空,就是一段空白代码,什么都没写,那么我们将我们要改的复制到这里。。



这个,复制的话,会改变格式,改出来就会乱码,所以我们只能一个个的输入了。。蛋疼。。
OK我们将他转换为,我们的内存地址,为00400A70。记下这个地址。。然后我们保存。。
好,我们现在记下了两个个地址。。

1.00442060=原来的User-Agent:的字符串地址。
2.00400A70 = 现在的User-Agent:字符串地址。

现在我们的思路就来了:他在压入我们的00442060(原来的User-Agent:的字符串地址)的时候,我们可以让他直接传送00400A70(现在的User-Agent:字符串地址。)这样我们就完成了,我们想要的。

OK,想到就来。。用OD载入。。跳到00442060(原来的User-Agent:的字符串地址)
原来的:



改为push 00400A70:



OK然后保存。。。



保存好了,我们再来看看效果。。



OK,我们可以看到 User-Agent: 已经改过来了。。所以,软件制作完成。。





我把图标等等信息也改了下,由于自己用,就不放出具体工具了。需要的PM我。在这里仅是技术交流。我已经把程序改了,放出来就等于侵犯版权。。
后记:其实,你每次改正后都需要确定你做的是不是正确的。。软件是否能成功运行。。在这里我一次成功了。。是因为,有些失败的地方我没写出来,要是你自己做的话,可得细心了喔~! OK,到此,过狗菜刀就完成了。。

关于作者

风之传说28篇文章1890篇回复

评论136次

要评论?请先  登录  或  注册