中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)破解和混合编程实例 Hacker Reverse Engineering

中图科学技术大计算机科学与资术系 University of Science and Technology of China DEPARTME利TDFB口PUr三是马B1巨NCE AND T三CN口L口回 破解和混合编程实例 Hacker Reverse Engineering
破解和混合编程实例 Hacker Reverse Engineering

自定义保护机制,养尝武破解 ■创建一个最简单的保护机制并破解它: ■选一个实例,在此基础上学习十六进制编辑器,API窥 测器与反汇编器(IDA Pro) ■破解一个实际的例子 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824 2
■ 创建一个最简单的保护机制并破解它; ■ 选一个实例, 在此基础上学习十六进制编辑器, API窥 测器 与 反汇编器(IDA Pro) ■ 破解一个实际的例子 2 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824 自定义保护机制,并尝试破解

自定义保护机制,养尝试破解 最简单的密码保护算法: 密码存放位置: 程序中/配置文件/注册表 密码保护措施: 无 if (strcmp(password entered,reference password)) { /休密码不正确*/ } { /休密码正确*/ } chenkm@ustc.edu.cn 0551- 2022/11/8 3602824 3
最简单的密码保护算法: 密码存放位置: 程序中/ 配置文件/注册表 密码保护措施: 无 if (strcmp(password entered, reference password)) { /* 密码不正确 */ } else { /* 密码正确 */ } 3 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824 自定义保护机制,并尝试破解

黑客反向工程热身 Protect_password #define legal_psw "my.good.password" int main() { char user_psw[666]: cout user_psw; if (strcmp(legal_psw,user_psw)) cout<<"wrong password\n"; /升"标记"密码不匹配 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824
Protect_password #define legal_psw "my.good.password" int main() { char user_psw[666]; cout > user_psw; if (strcmp(legal_psw, user_psw)) cout<<“wrong password\n”; // “标记"密码不匹配 4 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824 黑客反向工程热身

黑客反向工程热身 else cout<<"password ok\nhello ,legal user|In"; /"标记”密码匹配//"中斥"密码不匹配 return O; } chenkm@ustc.edu.cn 0551- 2022/11/8 3602824 5
黑客反向工程热身 else cout<< “password ok\nhello ,legal user|\n “; //“标记”密码匹配 return 0; } 2022/11/8 chenkm@ustc.edu.cn 0551- 3602824 5 // "申斥"密码不匹配

自动过滤上述程序二进制内容猪果 00007d11:LCMapStringW 00007d1f: kernel32.dll 0000805c:crackme 00h 0000806a:enter passwd: 0000807d:my.good.password 0000808f:wrong password 0000809c:password ok 000080af:hello,legal user! 000080c2:.2 Avios@@ 000080de:?Avistream@@ chenkm@ustc.edu.cn 0551- 2022/11/8 3602824
2022/11/8 chenkm@ustc.edu.cn 0551- 3602824 6 自动过滤上述程序二进制内容结果 00007d11: LCMapStringW 00007d1f: kernel32.dll 0000805c: crackme 00h 0000806a: enter passwd: 0000807d: my.good.password 0000808f: wrong password 0000809c: password ok 000080af: hello, legal user! 000080c2: .?Avios@@ 000080de: .?Avistream@@ …………

结果分析 现在来看所得到的清单,特别要注意位于地址807Dh处的ay,gpod.passw0rd字符串。它 可能是密码吗?你在寻找的字符串经常位于最靠近“Enter pas9word”文本的地方,住下的-个位 置(80afh),可以看到另外一个候选串 ,你可以至少检查它们之中的一个。 将第-个候选密码▣馈给所要破解的程序 crackme.C5F11EA6h.exe Enter passwd:my.ood.password password ok hello,legal user! 对这种方法,保护机制的反应是完全无条件地投降。 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824
结果分析 2022/11/8 chenkm@ustc.edu.cn 0551- 3602824 7

黑客反向工程热身 编译后的程序执行 ☐猜测密码--凭运气,难度大 □分析程序的组成 代码 数据(密码字待串) chenkm@ustc.edu.cn 0551- 2022/11/8 3602824
黑客反向工程热身 编译后的程序执行 □猜测密码---凭运气,难度大 □分析程序的组成 代码 …… 数据(密码字符串) 2022/11/8 chenkm@ustc.edu.cn 0551- 3602824 8

黑客反向工程热身 ■data: 数据段 rdata:只读数据,字特串文字和常量.如本程序中的 "myGOODpassword\n"。 bss:未初始化数据,比如函数和静态变量。 idata:包括导入库和导入地址名称表。 edata:包会了应用程序或DLL的导出数据。 ■text(code):代码段。 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824
黑客反向工程热身 ■ data: 数据段 rdata: 只读数据, 字符串文字和常量. 如本程序中的 "myGOODpassword\n“。 bss: 未初始化数据, 比如函数和静态变量。 idata: 包括导入库和导入地址名称表。 edata:包含了应用程序或DLL的导出数据。 ■ text(code): 代码段。 9 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824

黑客反向工程热身 ■c中,内存数据分为如下几个区 1.栈-由编译器自动分配释放[bp+XX],[bp-XX]。 2.堆-一般由程序员分配释放new(),delete()函数。 3.全局区(静态区)共享存储区。 初始化的全局变量和静态变量在一块区域(data)。 未初始化全局和静态变量放在相邻区域(bSS)。 4.另外还有一个专门放常量的地方(rdata)。 ■C++中,内存分成5个区,分别为: 1.栈,里面的变量通常是局部变量、函数参数等。 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824 10
黑客反向工程热身 ■c中,内存数据分为如下几个区 1.栈--- 由编译器自动分配释放[bp+xx], [bp-xx]。 2.堆--- 一般由程序员分配释放new(), delete() 函数。 3.全局区(静态区)共享存储区。 初始化的全局变量和静态变量在一块区域(data)。 未初始化全局和静态变量放在相邻区域(bss)。 4.另外还有一个专门放常量的地方(rdata)。 ■ C++中,内存分成5个区,分别为: 1.栈,里面的变量通常是局部变量、函数参数等。 10 chenkm@ustc.edu.cn 0551- 2022/11/8 3602824
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)黑客反向工程导论(陈凯明).ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)防黑客技术简介(基本的”防”黑客技术 Basic Hacker Technique).ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(作业习题)历年黑客反向工程作业题目选编.docx
- 中国科学技术大学:《嵌入式操作系统 Embedded Operating Systems》课程教学资源(PPT课件讲稿)进程.ppt
- 山东大学:《化工制图》课程教学资源(PPT讲稿)第十二章 计算机绘图软件简介.pptx
- 成都东软学院:《嵌入式系统原理与接口技术》课程教学资源(PPT课件讲稿)第5章 ARM接口设计技术(杨宗德).ppt
- 《Autodesk AutoCAD 2004》课程教学资源:PPT课件讲稿(前11章).ppt
- 西安电子科技大学:神经网络与模糊系统(PPT讲稿)Neural Networks & Fuzzy System.ppt
- 高等学校计算机应用规划教材:《HTML5+CSS3 网页设计基础教程》教学资源(PDF电子书)第1章 Web开发新时代.pdf
- 高等学校计算机应用规划教材:《SQL Server 2019 数据库教程》教学资源(PDF电子书)第1章 数据库基础.pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)10 课程复习(二).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)09 ggplot2画图(二).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)08 ggplot2画图(一).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)07 R基本图形(二).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)06 R基本图形(一).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)05 课程复习(一).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)04 R编程结构.pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)03 R数据对象(二).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)02 R数据对象(一).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)01 R简介.pdf
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)通过不同途径搜索密码比较算法和实际破解例.ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)区块链简介(区块链详解).ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)注入攻击与防御(SQL攻击与防御).ppt
- 清华大学出版社:安全技术经典译丛(美)Justin Clarke《SQL注入攻击与防御》PDF电子书(SQL Injection Attacks and Defense).pdf
- 电子工业出版社:“十一五”国家重点图书出版规划项目(安全技术大系)《黑客反汇编揭密》PDF电子书(【俄】Kris Kaspersky,第二版,共四篇二十一章).pdf
- 银川能源学院:数据科学与大数据技术专业剖析(曹骜).pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)实验用开发板手册 APP009(manual)dsPIC30F4011/4012/2010 Motor Control Family Evaluation Board.pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC30F 系列参考手册(高性能数字信号控制器).pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC 语言工具入门.pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC30F 4011_4012 数据手册(高性能16位数字信号控制器).pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC30F 数字信号控制器入门用户指南.pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC30F33F 程序员参考手册(高性能数字信号控制器).pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)MCAI1.0 演示实验.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)多媒体素材制作实验.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)视频编辑实验.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)MCI 接口编程实验.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)WAVE 文件格式分析实验.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)基于 WindowsAPI 的视频捕捉卡操作.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)基于 SDK 的视频压缩卡操作.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)DirectXDraw 实验.pdf