"江南大学信息安全技术大作业:探究新型攻击技术ROP"

需积分: 19 2 下载量 124 浏览量 更新于2024-01-18 收藏 8.59MB DOC 举报
信息安全技术大作业报告:ROP攻击 一、简介 信息安全技术大作业主题为ROP(Return-oriented Programming,面向返回的编程)攻击。ROP是一种基于代码复用技术的攻击,攻击者通过从已有的库或可执行文件中提取指令片段,构建恶意代码。本文将对ROP攻击的原理、实现方式、防御方法以及江南大学相关研究进行综述。 二、ROP攻击原理 ROP攻击利用现有程序的代码,将其非恶意的指令片段(即gadget)重新拼接成恶意代码。gadget是指一系列特定指令,每个指令都以返回指令(return)结尾,这样攻击者可以通过连续触发多个gadget,使其形成一连串的恶意行为。ROP攻击利用堆栈上保存的返回地址,通过改变返回地址的值,将控制权转移至攻击者所构建的gadget序列,实现任意代码的执行。 三、ROP攻击实现方式 1.ROP攻击基本流程 (i) 攻击者首先通过漏洞获取程序的内存布局信息,包括函数库地址、函数地址、栈指针位置等。 (ii) 攻击者找到已有的gadget序列,这些gadget由指令片段组成,每个gadget以返回指令(return)结尾,攻击者通过将这些gadget连接起来,形成任意代码的执行序列。 (iii) 攻击者修改函数栈帧指针,将其指向构建的gadget序列的起始地址。 (iv) 当原程序的函数执行完毕,将返回到攻击者构建的gadget序列,实现恶意代码的执行。 2.常见的ROP攻击类型 (i) Stack Pivot:攻击者通过改变栈指针的位置,将其从栈上转移到堆上,从而实现对堆上对象的操作。 (ii) Sigreturn Oriented Programming:攻击者利用信号处理机制,在信号处理函数返回时执行恶意代码。 (iii) Not-Invented-Here ROP:攻击者利用已有的gadget,但通过修改其中的指令参数,实现自定义的攻击行为。 四、ROP攻击防御方法 1.地址空间布局随机化(ASLR):通过随机化内存地址分配,使攻击者难以获取到准确的内存布局信息,从而破坏了ROP攻击的精确性。 2.执行流完整性(Control Flow Integrity,CFI):CFI通过限制程序的控制流,只允许跳转到预期的目标地址,防止攻击者控制程序的执行。 3.栈保护技术:通过栈溢出检测和栈随机化等技术,防止栈被攻击者利用,进而防止ROP攻击的发生。 五、江南大学相关研究 江南大学在ROP攻击方面进行了深入研究,提出了一种基于CFI的防护方法。该方法通过在编译时插入额外的检查代码,确保每个指令的执行流在编译时就得到了限制,从而防止了ROP攻击的发生。该方法在实验中取得了较好的效果,有效防御了常见的ROP攻击。 总结: ROP攻击是一种利用现有程序的代码实现恶意行为的技术,通过构建gadget序列并改变返回地址,攻击者可以实现任意代码的执行。防御ROP攻击的方法主要包括ASLR、CFI以及栈保护技术。江南大学在ROP攻击领域开展了相关研究,并提出了基于CFI的防护方法,取得了较好的成果。对于信息安全技术的学习和研究,ROP攻击是一个重要的议题,需要进一步深入了解和研究。
1096 浏览量
一、题目 4 二、摘要 4 三、关键字 4 四、引言 4 五、正文 4 5.1Windows操作系统安全定义 4 5.1.1身份认证(authentication) 5 5.1.2访问控制(authorisation) 6 5.1.3数据保密性(privacy) 7 5.1.4数据完整性(date integrity) 9 5.1.5不可否认性(non-repudiation) 9 5.2Windows金字塔安全架构 9 5.3Windows系统的安全组件 9 5.3.1访问控制的判断(Discretion access control) 10 5.3.2对象重用(Object reuse) 10 5.3.3强制登陆(Mandatory log on) 10 5.3.4审核(Auditing) 10 5.3.5对象的访问控制(Control of access to object) 11 5.4Windows安全子系统的组件 11 5.4.1安全标识符(Security Identifiers) 12 5.4.2访问令牌(Access tokens) 12 5.4.3安全描述符(Security descriptors) 13 5.4.4访问控制列表(Access control lists) 13 5.4.5访问控制项(Access control entries) 13 5.5Windows安全子系统 13 5.6Windows安全子系统流程过程 13 5.6.1 Winlogon and Gina 14 5.6.2本地安全认证(Local Security Authority) 14 5.6.3安全支持提供者的接口(Security Support Provide Interface) 15 5.6.4认证包(Authentication Package) 15 5.6.5安全支持提供者(Security Support Provider) 16 5.6.6网络登陆(Netlogon) 16 5.6.7安全账号管理者(Security Account Manager) 16 5.7Linux安全机制概述 16 5.7.1PAM机制 16 5.7.2入侵检测系统 17 5.7.3加密文件系统 17 5.7.4安全审计 17 5.7.5强制访问控制 18 5.7.6防火墙 18 5.8WindowsXP下的一些常用安全设置 19 5.8.1WindowsXP系统安全补丁升级 19 5.8.2WindowsXP管理防火墙的例外程序 20 5.8.3WindowsXP端口安全设置 20 5.8.4WindowsXP下Internet安全设置 22 六、结论 22 七、参考文献 23