逆向Becky! Internet Mail version 2 密码加密算法

时间:2022-04-30 13:06:37 其他范文 收藏本文 下载本文

“浩然呀”为你分享2篇“逆向Becky! Internet Mail version 2 密码加密算法”,经本站小编整理后发布,但愿对你的工作、学习、生活带来方便。

逆向Becky! Internet Mail version 2 密码加密算法

篇1:逆向Becky! Internet Mail version 2 密码加密算法

逆向Becky! Internet Mail version 2 密码加密算法

【文章作者】: crosoli

【作者邮箱】:crosoli@126.com

【软件名称】: Becky! Internet Mail

【下载地址】: 自己搜索下载

【编写语言】: VC6.0

【软件介绍】: 邮件收取工具

【作者声明】: 出于学习的目的

--------------------------------------------------------------------------------

【详细过程】

1,上个月买了本段刚老师的加密解密3,看完了第5章(只能下班的时间看),总感觉作者很了解我. 这本书太适合我了.

2.分析过程.

1,首先打开Becky! Internet Mail,配置好自己的邮件信息.

2,然后OD载入 B2.exe, F9运行后,右键点击邮件->属性,然后修改密码,此时对 GetWindowTextA下断点. 会发现配件的所有信息都会读入到内存.让发现密码明文读取到内存后,然后数据窗口跟随,找到密码的明文,并对它下内存断点.并移除先前的GetWindowTextA断点.

F9运行后程序来到:

0051A8C5 |. 85DB         TEST EBX,EBX

0051A8C7 |. 75 3A        JNZ SHORT B2.0051A903

0051A8C9 |. 8B86 B8000000 MOV EAX,DWORD PTR DS:[ESI+B8]           ;  新密码

0051A8CF |. 8BAF B8000000 MOV EBP,DWORD PTR DS:[EDI+B8]           ;  老密码

0051A8D5 |> 87747.net5 00      /MOV DL,BYTE PTR SS:[EBP]               ; 取老密码一位

0051A8D8 |. 8ACA         |MOV CL,DL

0051A8DA |. 3A10         |CMP DL,BYTE PTR DS:[EAX]               ; 取新密码一位

0051A8DC |. 75 1C        |JNZ SHORT B2.0051A8FA                  ; 密码不相同跳转

0051A8DE |. 84C9         |TEST CL,CL

0051A8E0 |. 74 14        |JE SHORT B2.0051A8F6

0051A8E2 |. 87747.net5 01      |MOV DL,BYTE PTR SS:[EBP+1]             ; 继续比较

0051A8E5 |. 8ACA         |MOV CL,DL

0051A8E7 |. 37747.net0 01      |CMP DL,BYTE PTR DS:[EAX+1]

0051A8EA |. 75 0E        |JNZ SHORT B2.0051A8FA

0051A8EC |. 83C5 02      |ADD EBP,2

0051A8EF |. 83C0 02      |ADD EAX,2

0051A8F2 |. 84C9         |TEST CL,CL

0051A8F4 |.^ 75 DF        JNZ SHORT B2.0051A8D5

0051A8F6 |> 33C0         XOR EAX,EAX

0051A8F8 |. EB 05        JMP SHORT B2.0051A8FF

0051A8FA |> 1BC0         SBB EAX,EAX                             ;

0051A8FC |. 83D8 FF      SBB EAX,-1

0051A8FF |> 85C0         TEST EAX,EAX

0051A901 |. 74 5F        JE SHORT B2.0051A962                    ; 原密码和新密码相同时候跳过不写入

0051A903 |> 8DAE B8000000 LEA EBP,DWORD PTR DS:[ESI+B8]

0051A909 |. 8D8F B8000000 LEA ECX,DWORD PTR DS:[EDI+B8]

0051A90F |. 55           PUSH EBP

0051A910 |. E8 22280800  CALL B2.0059D137

0051A915 |. 8B6D 00      MOV EBP,DWORD PTR SS:[EBP]

0051A918 |. A1 38685F00  MOV EAX,DWORD PTR DS:[5F6838]

0051A91D |. 55           PUSH EBP

0051A91E |. 68 00100000  PUSH 1000

0051A923 |. 8D4C24 24    LEA ECX,DWORD PTR SS:[ESP+24]

0051A927 |. 894424 24    MOV DWORD PTR SS:[ESP+24],EAX

0051A92B |. E8 FE2A0800  CALL B2.0059D42E

0051A930 |. 50           PUSH EAX

0051A931 |. E8 4A00F7FF  CALL B2.0048A980                       ;对新密码进行加密处理,

0051A936 |. 6A FF        PUSH -1

0051A938 |. 8D4C24 20    LEA ECX,DWORD PTR SS:[ESP+20]

0051A93C |. E8 3C2B0800  CALL B2.0059D47D

0051A941 |. 8B0E         MOV ECX,DWORD PTR DS:[ESI]

0051A943 |. 8B5424 1C    MOV EDX,DWORD PTR SS:[ESP+1C]

0051A947 |. 51           PUSH ECX                                ; /FileName

0051A948 |. 52           PUSH EDX                                ; |String

0051A949 |. 68 B8B35E00  PUSH B2.005EB3B8                        ; |Key = “PassWd”

0051A94E |. 68 E4E15E00  PUSH B2.005EE1E4                        ; |Section = “Account”

0051A953 |. FF15 64225C00 CALL DWORD PTR DS:[<&KERNEL32.WritePriva>; WritePrivateProfileStringA   把加密后的新密码写入配置文件的“PassWd”字段

下面来分析0048A980 这个函数

0051A931 |. E8 4A00F7FF  CALL B2.0048A980                       ;对新密码进行加密处理,

0048A980 /$ B8 00800000  MOV EAX,8000

0048A985 |. E8 268F0F00  CALL B2.005838B0

0048A98A |. 8B8424 088000>MOV EAX,DWORD PTR SS:[ESP+8008]         ;EAX新密码

0048A991 |. 56           PUSH ESI

0048A992 |. 8038 00      CMP BYTE PTR DS:[EAX],0                 ;判断新密码是不是为空

0048A995 |. 75 14        JNZ SHORT B2.0048A9AB

0048A997 |. 8B8424 088000>MOV EAX,DWORD PTR SS:[ESP+8008]

0048A99E |. 5E           POP ESI

0048A99F |. C600 00      MOV BYTE PTR DS:[EAX],0

0048A9A2 |. 81C4 00800000 ADD ESP,8000

0048A9A8 |. C2 0800      RETN 8

0048A9AB |> 8D4C24 04    LEA ECX,DWORD PTR SS:[ESP+4]

0048A9AF |. 50           PUSH EAX                                ; /Arg2

0048A9B0 |. 51           PUSH ECX                                ; |Arg1

0048A9B1 |. E8 8AF5FFFF  CALL B2.00489F40                        ; B2.00489F40     第一次对新密码进行00489F40加密处理

0048A9B6 |. 8D5424 04    LEA EDX,DWORD PTR SS:[ESP+4]

0048A9BA |. 8BB424 088000>MOV ESI,DWORD PTR SS:[ESP+8008]

0048A9C1 |. 52           PUSH EDX                                ; /Arg2

0048A9C2 |. 56           PUSH ESI                                ; |Arg1

0048A9C3 |. E8 78F5FFFF  CALL B2.00489F40                        ; B2.00489F40     2次加密

0048A9C8 |. 8A06         MOV AL,BYTE PTR DS:[ESI]

0048A9CA |. 84C0         TEST AL,AL

0048A9CC |. 74 0C        JE SHORT B2.0048A9DA

0048A9CE |> 34 02        /XOR AL,2                               ;把2次加密码后的结果和2进行xor

0048A9D0 |. 8806         |MOV BYTE PTR DS:[ESI],AL

0048A9D2 |. 8A46 01      |MOV AL,BYTE PTR DS:[ESI+1]

0048A9D5 |. 46           |INC ESI

0048A9D6 |. 84C0         |TEST AL,AL

0048A9D8 |.^ 75 F4        JNZ SHORT B2.0048A9CE                  ;循环xor

0048A9DA |> 5E           POP ESI

0048A9DB |. 81C4 00800000 ADD ESP,8000

0048A9E1 . C2 0800      RETN 8

下面来分析00489F40这个加密函数

00489F40 /$ 83EC 0C      SUB ESP,0C

00489F43 |. 8B4424 10    MOV EAX,DWORD PTR SS:[ESP+10]

00489F47 |. 53           PUSH EBX

00489F48 |. 57           PUSH EDI

00489F49 |. 8B7C24 1C    MOV EDI,DWORD PTR SS:[ESP+1C]

00489F4D |. 32DB         XOR BL,BL

00489F4F |. 894424 08    MOV DWORD PTR SS:[ESP+8],EAX

00489F53 |. 8A0F         MOV CL,BYTE PTR DS:[EDI]

00489F55 |. 3ACB         CMP CL,BL

00489F57 |. 0F84 CF000000 JE B2.0048A02C

00489F5D |. 55           PUSH EBP

00489F5E |. 56           PUSH ESI

00489F5F |> 47           /INC EDI

00489F60 |. 884C24 14    |MOV BYTE PTR SS:[ESP+14],CL           ;base64加密。

00489F64 |. 885C24 16    |MOV BYTE PTR SS:[ESP+16],BL

00489F68 |. 885C24 15    |MOV BYTE PTR SS:[ESP+15],BL

00489F6C |. 8A0F         |MOV CL,BYTE PTR DS:[EDI]

00489F6E |. BE 01000000  |MOV ESI,1

00489F73 |. 3ACB         |CMP CL,BL

00489F75 |. 74 1A        |JE SHORT B2.00489F91

..

..

...

....

由于篇幅的文件就不对BASE64进行分析了。

其实00489F40 就是一个BASE64的加密。

综上所述 他的密码的保存方式就是 2次BASE64后xor2.

篇2:基于现代密码学的加密算法验证系统的设计与实现的论文

基于现代密码学的加密算法验证系统的设计与实现的论文

摘要:针对现代密码学课程中理论与实践存在的差距,特意设计并开发了此款加密算法验证系统。本系统以AES、RSA、RC4、IDEA等几个经典的加密算法为例,采用JAVA技术体系与SWING界面元素开发,保证跨平台性与良好的用户体验,通俗易懂地展示了现代密码学理论魅力。本系统各个版块保持相对独立,每个版块侧重特定加密算法,提供一个以算法为基本模块的流程验证系统。实践证明,使用此系统有利于学生深刻剖析算法原理过程,从而加深理论理解。

关键词:现代密码学;AES;RSA;RC4;IDEA;验证系统;EAVS

1引言

现代密码学理论是安全类本科专业极其重要的一门专业课,但由于密码理论本身的抽象性特点,导致教学过程中易出现理论与实践脱节,理论概念模棱两可的情况。目前各个高校信息安全教学主要分为两个方向:一个是数学系的信息安全,主要研究密码学数学基础,偏重理论;二是计算机系的信息安全,主要研究安全编程技术,偏重实践。随着研究的深入,我们发现两者没有一个很好的平台联系起来,导致学生知识掌握不全面,不能适应工作和深层次科研的需求。

2密码算法的选择

为了深入结合本科教学培养方案,特选取几个经典的加密算法:AES、RSA、RC4、IDEA。

2.1AES算法

高级加密标准,又称高级加密标准Rijndael加密法,属于经典的`现代加密算法,是美国联邦政府采用的一种区块加密标准。由于此算法为对称加密算法,故通常用来加解密,用来替代原先的DES,已经被广泛使用。

AES很好地融合了混淆与扩散,因为信息的内容是以128位长度的分组为加密单元的。加密密钥长度有128,192或256位等多种选择。

AES算法加密过程:密钥扩展→初始轮→重复轮→最终轮

2.2RSA算法

1977年Rivest,Shamir和Adleman提出了RSA公钥算法,它是应用最广泛的公钥密码系统。不仅可以用于信息的加解密,还可用于数字签名。该算法为非对称加密算法,其理论基础是大整数因数分解问题。

c.计算整数

d.将整数c转换成密文信息

e.将密文信息发送给A

2.3RC4算法

RC4是RonRivest在1987年为RSA数据安全公司开发的可变密钥长度的序列密码,广泛应用于商业密码产品中。RC4是一种序列密码,面向字节流。用从1到256个字节(8到2048位)的可变长度密钥初始化一个256个字节的状态矢量S,S的元素记为S[0],S[1],…,S[255],从始至终置换后的S包含从0到255的所有8比特数。

2.4IDEA算法

IDEA是80年代提出的“过渡性”的“postDES”算法,它在1990年正式公布并在以后得到增强,是一种对称密码算法。这种算法是在DES算法的基础上发展出来的,类似于三重DES,和DES一样IDEA也是属于对称密钥算法。IDEA的密钥为128位,这么长的密钥在今后若干年内应该是安全的。不过IDEA中有大量弱密钥,并且难以直接扩展到128位块。

3EAVS的体系结构

3.1EAVS的实现结构

4系统实现的关键技术

5系统运行实例

6总结

6.1本文在对现代密码学基础算法理论深入研究的基础上,针对目前课题教学中理论与实践、抽象与具体中存在的不足,详细论述了一种沟通理论与实践的经典密码算法验证系统。

6.2基于C/S的整体系统,可视化的UI使得系统具有良好的交互性。用户通过客户端图像化操作,可以细致了解密码算法的加密解密流程,并将中间结果反馈给用户,加深对理论知识的全面理解。

6.3本系统目前只实现了一些经典算法,实际应用于整体课堂教学仍存在不足,下一步须要丰富算法模块,使其形成密码学整体实践验证体系。

参考文献:

[1][美]加内特,吴世忠等.密码学导引[M].北京:机械工业出版社,2003.

[2]李杰凤等.基于Linux的操作系统实验平台的设计与实现[D].计算技术与自动化,2010.

[3][美]旋奈尔,吴世忠等.应用密码学协议.算法与C源程序[M].北京:机械工业出版社,2003.

[4]李继国,余纯武等.信息安全数学基础[M].武汉:武汉大学出版社,2006.

我学会了用计算机

信息安全网络安全与网络空间安全分析论文

交换机的安全因子

合理维护网络服务器安全的七个小技巧

金融危机下应对策略分析论文

史上最细致的Cisco路由安全配置

电子商务客户细分与营销策略电商论文

面向实践的现代SoC设计课程教学方法的创新的论文

闪存博客SQL注入脚本安全

酒店管理论文题目选题参考

逆向Becky! Internet Mail version 2 密码加密算法
《逆向Becky! Internet Mail version 2 密码加密算法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

【逆向Becky! Internet Mail version 2 密码加密算法(共2篇)】相关文章:

word 文档怎么加密2024-01-12

电子商务中数据加密技术2023-02-12

详解加密技术概念、加密方法以及应用2024-02-19

数字签名2023-10-16

电子商务中信息安全目前状况调查论文2022-05-19

电子数字签名2023-08-19

网关攻击技术对网络安全的作用论文2023-06-05

网络安全技术论文2024-05-07

网络安全技术专业课程教学模式研究论文2023-06-07

商用密码自查报告2022-06-03

点击下载本文文档