吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 3256|回复: 14

[原创逆向图文] 防逆向研究一之[列举各种分析方法]

  [复制链接]
zhao1509841 发表于 2017-8-19 10:52 | 显示全部楼层 |阅读模式



防逆向研究一之[列举各种分析方法]





本文章将从逆向的角度,来向大家展示目前主流的各种分析方法,一方面让从前写软件被逆向的作者们死得明白,另一方面给大家一些提醒,在以后的程序开发上,少犯些错误。知己知彼,方能百战百胜。

目前,对网络验证的分析方法主要有以下几种:

一 本地验证

本地验证是指通过转连接的方法,把本来必须远程验证的程序,转到本机的服务器上进行验证。

可用于本地验证的程序,其接收到的封包,基本上都是固定的。如一些程序通过博客来进行验证,这类的软件基本上是可以被本地验证的方法逆向的。

实现本地验证的手法,有以下几种:1 修改HOST文件内容,将远程网址转到本机。 2 网截 网截是易语言里的一个专门的支持库,调用者可以通过它实现将远程地址转到本机127.0.0.1从而实现转连接 3 HOOKAPI法 逆向者通过HOOK住WINDOWS自带的ws2_32.dll里的connect函数,将远程IP修改成本地IP,实现转连接。

综上所述,若你的程序是固定内容封包,是无论如何都会逆向的。唯一的解决办法是,对数据进行动态加密,让每个封包都不一样。

丁丁神盾网络验证因为是采用动态加密的,所以对通过本地验证的方法免疫。

二 山寨

在字面上来说,山寨是模仿,抄袭,造假的意思。

在网络验证的逆向上,同样存在着这么一种手法。其实现的方式,就是模拟一个完全和正版一样的服务器端,然后通过转连接的方式,将软件客户端转到被模仿的服务器端进行验证,其传回去的数据,同样的是和正版的服务器端发送的数据一模一样。被山寨后的产品,从外观上来说,是和正版完全一样的,用户无法发觉,甚至连软件开发者也发现不了。

目前被山寨得多的网络验证有:飘零网络验证,万捷网络验证。

山寨的手法则是,同样都是那个网络验证的用户,只要把自己服务器后台的密钥,改成和被山寨的软件的后台密钥一样,或者是通过改变内存的方式,修改软件客户端里的密钥内容变成和自己服务器后台的相对应。

在所有的方法中,山寨是最为隐蔽同时也是最为有效的分析方法。所以请大家一定要留意自己的软件是否有被山寨的可能。

丁丁神盾网络验证,由于采用的是定制的方式,不但每个客户收到的模块文件不一样,而且每个客户拿到的后台文件也不同,对会员间互相山寨的情况,做到了最大的防范。

三 内存补丁

程序的流程,总是离不开一些判断语句的。在网络验证的逆向中,逆向者会抓住其中的一些关键判断,对内存进行修改。

程序如果存在漏洞,往往能在调试器里给找出来。很多网络验证的判断比较单一,逆向者则在程序的关键比较语句上,对内存进行修改,即可达到目的。如将JE,JZ,JNE等进行修改,改变其跳转方向。将一些无返回值的校验子程序RETN掉,将一些有返回值的校验子程序NOP掉或者使其返回正确的值,诸如此类。

有些网络验证,在验证过程中,只需要将原本错误的数据,在内存里改成正确的数据,便可达到欺骗程序通过验证的目的。通过此方法实现逆向,最典型的是飘零云网络验证以及可可网络验证。

事实上,内存补丁基本上是无法被抵制的。最好的对抗方法是,程序写严谨一点,验证弄复杂一点,再添加一些暗桩,一方面让逆向者看不懂验证的流程,再就是通过暗桩让其摸不着头脑从而失去耐心。

大部分软件开发者都会给自己的软件加上保护壳,如SE壳,VMP壳等,加壳后的程序在调试器中看起来,代码会变得比较混乱而让人看不懂,再加之有些壳里还带有反调试器功能,逆向者在对程序下断点时,被保护壳检测出来,然后程序退出。从效果上来说,给程序加壳,可以对大部分中小水平的逆向者造成干扰,但防不了一些大牛。大牛们往往会先对程序进行脱壳处理,然后逆向。

另一种是所谓的反调试器程序,不过这依然是可防小人,防不了大牛。很多大牛往往手里头有一些比较私密的调试器,能绕过这些检测。再者调试器的种类繁多,防得了A,防不了B,对于一些弱点比较明显的程序,逆向者甚至不需要下断点进行调试,只需要找到一些特征码的位置,直接进行修改,即可实现逆向。

总而言之,应对各种爆破,玩这些保护壳,或者是反调试器等小花样,是没有根本性用处的,而且一朝失手,世世受制,最重要的还是程序上要写得严谨,验证中不嫌繁杂。

后续的一些文章里,丁丁将会以视频的方式,来向大家讲解一些软件逆向上的攻与防。

四 未知方法

由于微软公司在九十年代被别的公司控告其不开源时,咬紧牙关,宁可冒着公司被一拆为三的风险,也不将WINDOWS系统的源代码放出。其后虽然给出了一些系统内核函数的参数及调用方法等,但仍有一些更为关键的内核函数未被公布出来。这或许是斯诺登之流能在互联网上畅行无阻的原因。关于这部分的应对办法,基本上无解。


评分

参与人数 17HB +36 THX +8 收起 理由
一路走来不容易 + 2
禽大师 + 1
消逝的过去 + 1
冷亦飞 + 1
l278785481 + 1
雷神来了 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
MoeRay + 1
无边无际的人 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
清风而已 + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
ghostxu + 1 [吾爱汇编论坛52HB.COM]-学破解防破解,知进攻懂防守!
lies + 1
商都赵永强 + 1 + 1 [快捷评语] - 分享精神,是最值得尊敬的!
jiqigouer + 2 + 1 [快捷评语] - 分享精神,是最值得尊敬的!
laodaoWULITOU + 1 + 1 [快捷评语] - 2017,让我们17学破解!
wswwj + 1 + 1 [快捷评语] - 2017,让我们17学破解!
Shark恒 + 20 + 1 [快捷评语] - 分享精神,是最值得尊敬的!
海天一色001 + 1 + 1 [快捷评语] - 评分=感恩!简单却充满爱!感谢您的作品!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
fdw1991 发表于 2017-8-21 10:40 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
叩瞳白蓝 发表于 2017-8-21 11:49 | 显示全部楼层

为什么看起来像某验证的广告呢
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
piaoxue 发表于 2017-8-25 09:38 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
jiqigouer 发表于 2017-8-26 00:11 | 显示全部楼层

学习了,感谢高手分享
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
gxcz123 发表于 2017-8-27 15:06 | 显示全部楼层

DENUVO都被破了,只能说防破是加大难度,不过永恒之蓝确实难破
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
商都赵永强 发表于 2017-9-8 10:42 | 显示全部楼层

感谢分享,一路有你
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
loveY 发表于 2017-9-21 09:52 | 显示全部楼层

学习了                                    
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
loveY 发表于 2017-9-21 10:24 | 显示全部楼层

谢谢大佬分享经验     
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
拿着雪糕 发表于 2022-2-24 01:56 | 显示全部楼层

学习大佬经验
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层
8层
9层
10层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表