首页
社区
课程
招聘
只看内存值的分析
发表于: 2012-11-16 22:45 4595

只看内存值的分析

2012-11-16 22:45
4595
貌似不能再在新人交流区发帖了。。。

后面的代码也不知道哪里才是正真的算法部分

004064F0 /$ 8BD1 mov edx,ecx
004064F2 |. 57 push edi
004064F3 |. B9 10000000 mov ecx,10
004064F8 |. 33C0 xor eax,eax
004064FA |. 8D7A 04 lea edi,dword ptr ds:[edx+4]
004064FD |. C702 B00D4300 mov dword ptr ds:[edx],Tracy.00430DB0
00406503 |. F3:AB rep stos dword ptr es:[edi]
00406505 |. 8942 48 mov dword ptr ds:[edx+48],eax
00406508 |. 8942 44 mov dword ptr ds:[edx+44],eax
0040650B |. C742 4C 01234>mov dword ptr ds:[edx+4C],67452301
00406512 |. C742 50 89ABC>mov dword ptr ds:[edx+50],EFCDAB89
00406519 |. C742 54 FEDCB>mov dword ptr ds:[edx+54],98BADCFE
00406520 |. C742 58 76543>mov dword ptr ds:[edx+58],10325476
00406527 |. 8BC2 mov eax,edx
00406529 |. 5F pop edi
0040652A \. C3 retn



可以知道是MD5.

上面一段代码运行后在内存这些地方进行了写入:


接着运行:

红框框里面的值发生了变化,框内的64位是我接受的数据包的前64位内容,可后面的05900000 00000000不知道是怎么得来的?

再经过一个算法CALL后,内存处变化如下:


最终算法还没完成,继续跟进:
下一个call后的此处的内存:


而后内存换为我收到的数据包的后面51的字符:


再在后面补上一个:0800 0000

这个就是补足64位?可是数了一下,并没有到64位啊。

继续跟进,又出现了0590 0000 0000 0000


在经过一个很长的算法call后,先前存放0123456789……的地方又发生了变化:


而这个值就是最后的校验码。

问题是如下:

1.前面有打“?”的地方的解释。
2.加密的内容有哪些?
3.加密的原理是什么?

谢谢了。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 517
活跃值: (35)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
晕死,MD5是也。
2012-11-16 22:49
0
雪    币: 329
活跃值: (230)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
3
没有可能是3DES?

因为在这个软件前面对文件加密的时候使用的是变形3DES。

这个加密是对网络数据包的加密。。。

所以没敢确定。
2012-11-16 22:50
0
雪    币: 81
活跃值: (55)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
这个常数是MD5里面的,其他的倒真不清楚,参考MD5源码看看?
2012-11-17 01:33
0
雪    币: 329
活跃值: (230)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
5
看了《加密解密3》提供的分析程序,还是没搞清楚。。。
2012-11-17 13:12
0
雪    币: 2105
活跃值: (424)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
MD5 ,。,。
2012-11-17 14:20
0
雪    币: 329
活跃值: (230)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
7
谢谢exile   可是,我想知道,加密的内容有哪些哦、、、
2012-11-17 18:21
0
雪    币: 2105
活跃值: (424)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
你看更上层的函数 看传进去的参数就知道了  别去管内部实现
2012-11-17 20:31
0
雪    币: 329
活跃值: (230)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
9
貌似加过两次密。

还有就是 0590 0000 0000 0000 这一段是干嘛用的哦。。。
2012-11-18 12:57
0
雪    币: 329
活跃值: (230)
能力值: ( LV13,RANK:320 )
在线值:
发帖
回帖
粉丝
10
通过努力,问题也早就得到了解决。谢谢大家的帮助,特别是  exile。。。虽然挺打击我的……

今天跑上来跟大家交代一声,防止大家也遇到相同的问题。。。

这个用的是变形的MD5加密。

变形形式是:
填充物由:100……但最后的一个字节肯定是   0000 + 总共传入字符的长度*8.

在这谢谢大家了。。。
2012-11-27 13:32
0
游客
登录 | 注册 方可回帖
返回
//