平台安全保密防护技术培训讲座PPT(2).ppt
《平台安全保密防护技术培训讲座PPT(2).ppt》由会员分享,可在线阅读,更多相关《平台安全保密防护技术培训讲座PPT(2).ppt(76页珍藏版)》请在三一办公上搜索。
1、平台安全保密技术,2023/2/18,1,计算机平台的泄密途径,(1)自然因素引发的危害(2)计算机系统本身的软硬件缺陷(漏洞发现技术)(3)计算机技术和产品的非自主性(4)落后的数据备份技术(5)不完备的灾难恢复策略和计划(6)电磁辐射泄露(7)计算机病毒危害(8)非法入侵窃密(9)安全管理问题,2023/2/18,2,2023/2/18,哈尔滨工程大学计算机科学与技术学院,3,平台保密技术,数据加密技术,密钥管理技术,信息隐藏技术,信息认证技术,访问控制技术,病毒防治技术,漏洞扫描技术,安全审计技术,防电磁防辐射技术,Bug与漏洞,现代软件工业的发展,软件规模不断扩大软件内部的逻辑也变得异
2、常复杂。为了保证软件的质量测试成了极为重要的一环。即便如此,不论从理论上还是工程上都没有任何人敢声称能够彻底消灭软件中所有的逻辑缺陷 bug。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,4,Bug与漏洞,软件逻辑缺陷中,有一部分能够引起非常严重的后果。“超出设计范围的事情的bug称为漏洞(vulnerabillty)功能性逻辑缺陷(bug):影响软件的正常功能执行结果错误、图标显示错误安全性逻辑缺陷(漏洞):通常情况下不影响软件的正常功能,但被攻击者成功利用后,有可能引起软件去执行额外的恶意代码常见的漏洞包括软件中的缓冲区溢出漏洞、网站中的跨站脚本漏洞(XSS)、SOL注入漏洞等
3、。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,5,困惑的安全问题,(1)从来不运行来历不明的软件,为什么还会中病毒?利用系统漏洞冲击波蠕虫、slamer蠕虫服务器软件中存在安全漏洞系统中可以被RPC远程调用的函数中存在缓冲区溢出漏洞沦为“肉鸡”,2023/2/18,哈尔滨工程大学计算机科学与技术学院,6,困惑的安全问题,(2)我只是点击了一个URL链接,并没有执行任何其他操作,为什么会中木马?如果浏览器解析HTML文件时,存在缓冲区溢出漏洞攻击者可以精心构造一个承载恶意代码的HTML文件点击该链接就会触发漏洞,从而导致HTML中的恶意代码(shellcode)被执行这样的恶意代码
4、通常是在没有任何提示的情况下去指定的地方下载木马客户端并运行,2023/2/18,哈尔滨工程大学计算机科学与技术学院,7,困惑的安全问题,(3)word文档、power point文档、excel表不是可执行文件,他们会导致恶意代码执行吗?如果office软件在解析数据文件时,存在缓冲区溢出漏洞攻击者可以精心构造一个承载恶意代码的word文件,2023/2/18,哈尔滨工程大学计算机科学与技术学院,8,困惑的安全问题,(4)使用高强度密码,账户是否安全?高强度密码可以抗暴力破解,但是否安全还存在其他一些因素密码存在哪里?本地还是服务器密码怎么存?明文还是密文,加密算法强度怎样?密码怎样传递?密
5、钥交换过程是否安全、是否使用SSL等如果网站存在SQL注入漏洞,2023/2/18,哈尔滨工程大学计算机科学与技术学院,9,软件漏洞分类,(1)缓冲区溢出漏洞(2)整数溢出漏洞(3)格式化字符串漏洞(4)指针覆盖漏洞(5)SQL注入漏洞(6)Bypass漏洞(7)信息泄露漏洞(8)越权型漏洞,2023/2/18,哈尔滨工程大学计算机科学与技术学院,10,(1)缓冲区溢出漏洞非常普遍、非常危险的漏洞,在各种操作系统、应用软件中广泛存在利用缓冲区溢出攻击,可以导致程序运行失败、系统宕机、重新启动等后果更为严重的是,可以利用它执行非授权指令,甚至可以取得系统特权,进而进行各种非法操作,2023/2/
6、18,哈尔滨工程大学计算机科学与技术学院,11,缓冲区溢出攻击有多种英文名称buffer overflow、buffer overrun、smash the stacktrash the stack、scribble the stack、mangle the stack、memory leak、overrun screw第一个缓冲区溢出攻击-Morris蠕虫,发生在二十年前,它曾造成了全世界6000多台网络服务器瘫痪。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,12,缓冲区溢出是指当计算机向缓冲区内填充数据位数时超过了缓冲区本身的容量,溢出的数据覆盖在合法数据上理想的情况是程序检
7、查数据长度并不允许输入超过缓冲区长度的字符但是绝大多数程序都会假设数据长度总是与所分配的储存空间相匹配,这就为缓冲区溢出埋下隐患.操作系统所使用的缓冲区又被称为堆栈.在各个操作进程之间,指令会被临时储存在堆栈当中,堆栈也会出现缓冲区溢出。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,13,缓冲区溢出的原理通过往程序的缓冲区写超出其长度的内容,造成缓冲区的溢出,从而破坏程序的堆栈,造成程序崩溃或使程序转而执行其它指令,以达到攻击的目的。造成缓冲区溢出的原因是程序中没有仔细检查用户输入的参数。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,14,上面的strcpy()将直接把
8、str中的内容copy到buffer中。这样只要str的长度大于16,就会造成buffer的溢出,使程序运行出错。存在象strcpy这样的问题的标准函数还有:strcat(),sprintf(),vsprintf(),gets(),scanf()等,2023/2/18,哈尔滨工程大学计算机科学与技术学院,15,当然,随便往缓冲区中填东西造成它溢出一般只会出现“分段错误”(Segmentation fault),而不能达到攻击的目的。最常见的手段是通过制造缓冲区溢出使程序运行一个用户shell,再通过shell执行其它命令。如果该程序属于root且有suid权限的话,攻击者就获得了一个有root
9、权限的shell,可以对系统进行任意操作了。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,16,缓冲区溢出的漏洞和攻击缓冲区溢出攻击的目的在于扰乱具有某些特权运行的程序的功能,这样可以使得攻击者取得程序的控制权,如果该程序具有足够的权限,那么整个主机就被控制了。一般而言,攻击者攻击root程序,然后执行类似“exec(sh)”的执行代码来获得root权限的shell。为了达到这个目的,攻击者必须达到如下的两个目标:1.在程序的地址空间里安排适当的代码。2.通过适当的初始化寄存器和内存,让程序跳转到入侵者安排的地址空间执行。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,1
10、7,(2)整数溢出漏洞整数分为无符号和有符号两类,其中有负符号整数最高位为1,正整数最高位为0,无符号整数无此限制;常见的整数类型8位(布尔、单字节字符等)16位(短整型、Unicode等)32位(整型、长整型)64位(_int64)等,2023/2/18,哈尔滨工程大学计算机科学与技术学院,18,整数溢出就是往存储整数的内存单位中存放的数据大于该内存单位所能存储的最大值,从而导致了溢出。举例当整型变量nIn输入小于sOut的最大值65535时,输出正常;否则,输出的值是对65536取模得到的。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,19,例子1,int num;num=ar
11、gv(1);if(num+150000)strcpy(des,src);如果从外部获得num=ox7fffffff时,会发生什么?(十进制2147483647),2023/2/18,哈尔滨工程大学计算机科学与技术学院,20,例子2,代码/(1)char*buf;(2)int sizeBuf=sizeof(argv1)+260;(3)buf=new charsizeBuf;(4)memcpy(buf,argv1,sizeof(argv1);/,2023/2/18,哈尔滨工程大学计算机科学与技术学院,21,如果sizeof(argv1)=2 147 483 388sizeBuf=2 147 483
12、 388+260=2 147 483 648这个值大于有符号数的最大值,因此变为一个负数导致后面的memcpy发生严重的内存溢出错误,2023/2/18,哈尔滨工程大学计算机科学与技术学院,22,(3)格式化字符串漏洞由于程序的数据输出函数对输出数据的格式解析不当而引发的%d,%o,%x,%u,%f,%e,%g,%c,%s,2023/2/18,哈尔滨工程大学计算机科学与技术学院,23,#include#includeint main()printf(“s%n”,”abcdef”);/printf(“c%n”,”abcdef”);/return 0;,2023/2/18,哈尔滨工程大学计算机科学
13、与技术学院,24,(4)指针覆盖漏洞对于一个程序来说,内存中的数据往往都影响着程序的执行流程,因为程序将取出某个内存地址中的内容作为它下一个将要执行的地址。这个时候,称这个程序执行地址的内存地址为“指针”。由于程序在运行中往往会将来自于程序外部的数据也存放进入内存中,如果某些数据恰好覆盖了程序的指针,那么程序的执行流程就会被这些外部数据所控制,这就是指针覆盖漏洞。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,25,缓冲区溢出漏洞主要是因为程序的返回地址被外部数据所覆盖,程序在函数调用返回的时候被外部数据控制。指针覆盖漏洞的范围则更广泛一些,外部数据不仅可以覆盖程序的函数返回地址,还
14、可能覆盖程序运行中其他的关键地址。如程序正在调用指令call ecx,此时,ecx寄存器中的数据来源于内存中的某个地址。一旦程序发生指针覆盖漏洞,ecx索取数据的这个内存地址被一个执行ShellCode代码的地址所覆盖,那么程序一旦调用call ecx指令,ShellCode就会马上被执行。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,26,指针覆盖漏洞可能是最近几年软件安全中出现最多的漏洞。缓冲区溢出漏洞则随着一些安全技术的提高慢慢开始消失,尤其近几年CPU硬件设计者采用的一些硬件级别的防止缓冲区溢出漏洞的方法,更加使得缓冲区溢出漏洞难以被利用。但是对于指针覆盖漏洞来说,由于它不
15、牵涉用过长的数据覆盖内存数据,而是让程序主动修改自己的关键寄存器数据,从而使得硬件级别的方法也无法防止这种漏洞被恶意利用,2023/2/18,哈尔滨工程大学计算机科学与技术学院,27,(5)SQL注入漏洞(6)Bypass漏洞Bypass漏洞翻译过来就是“绕过漏洞”假设一个软件,只允许管理员登录,不允许其他人登录。可是你发现利用某种方法,即使你不知道管理员密码,也能够登录该软件,这时候,就发现了一个“登录限制绕过漏洞”。假设一个软件,限制你访问某些特定的文件,如被加密的文件。可是,你发现利用修改文件属性的方法可以使得你能够访问特定的被加密文件,这个时候,你绕过了软件的限制,就是发现了一个“文件
16、限制绕过漏洞”。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,28,总的来说,Bypass漏洞是一个大类,包含了很多小类共同的特点,就是这些出现问题的软件在使用上都存在对用户使用的限制,而Bypass漏洞就可以绕过软件的限制,使得软件的限制形同虚设。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,29,Windows2000系统的输入法漏洞这个漏洞可以让你在不知道别人系统密码的情况下,成功地访问到系统内部的所有文件与数据信息,这就是。Windows2000系统的输入法漏洞允许用户在不知道系统密码的情况下,在输入用户名的窗口中调出“帮助”程序,借助“帮助”程序的“跳至URL
17、”功能,访问到系统的任意一个文件,2023/2/18,哈尔滨工程大学计算机科学与技术学院,30,著名的谷歌输入法的漏洞只要安装了谷歌输入法的操作系统,不论你是WindowsXP还是WindowsVista,别人都可以在不知道你系统密码的情况下访问你系统中的任意一个文件对安全软件来说,Bypass漏洞更加具有危害性例如杀毒软件,一个原本是病毒的文件,由于杀毒软件存在Bypass漏洞,该病毒文件竟然绕过了被杀毒软件发现的安全保护机制,用户相信杀毒软件没有警告的文件一定是安全的,于是会放心地运行该病毒文件,后果可想而知。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,31,(7)信息泄露漏
18、洞按照在操作系统上的软件会随时泄露自己系统中的信息分类本地式信息泄露漏洞原程式信息泄露漏洞,2023/2/18,哈尔滨工程大学计算机科学与技术学院,32,本地式信息泄露漏洞当用户在计算机系统上安装某个软件之后,该软件生成的文件会将用户计算机系统上的其他的数据信息在未经用户许可的情况下,擅自保存到文件中。当该文件被恶意攻击者获得后,恶意攻击者就可以借助该漏洞获得用户计算机系统的信息,从而造成用户信息被泄露。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,33,远程式信息泄露漏洞常见于提供远程网络服务的软件(8)越权型漏洞,2023/2/18,哈尔滨工程大学计算机科学与技术学院,34,漏
19、洞利用过程,漏洞挖掘漏洞分析漏洞利用,2023/2/18,哈尔滨工程大学计算机科学与技术学院,35,漏洞利用过程-漏洞挖掘,比较权威的两个漏洞发布机构CVE(Common Vulnerabilities and Exposures)CERT(Computer Emergency Response Team)此外国外eEye、LSD等组织也对最新的漏洞进行及时跟踪分析,并给出相应的漏洞解决方案绿盟科技、启明星辰等单位是国内安全研究组织的代表,2023/2/18,哈尔滨工程大学计算机科学与技术学院,36,漏洞利用过程-漏洞挖掘,现有漏洞挖掘技术分类根据分析对象的不同,漏洞挖掘技术可以分为基于源码的
20、漏洞挖掘技术基于目标代码的漏洞挖掘技术两大类,2023/2/18,哈尔滨工程大学计算机科学与技术学院,37,漏洞利用过程-漏洞挖掘,基于源码的漏洞挖掘前提是必须能获取源代码,对于一些开源项目,通过分析其公布的源代码,就可能找到存在的漏洞。例如对Linux系统的漏洞挖掘就可采用这种方法。但大多数的商业软件其源码很难获得,不能从源码的角度进行漏洞挖掘,2023/2/18,哈尔滨工程大学计算机科学与技术学院,38,漏洞利用过程-漏洞挖掘,基于目标代码的漏洞挖掘对目标码进行分析涉及编译器、指令系统、可执行文件格式等多方面的知识,难度较大 首先将要分析的二进制目标代码反汇编,得到汇编代码;然后对汇编代码
21、进行切片,即对某些上下文关联密切、有意义的代码进行汇聚,降低其复杂性;最后通过分析功能模块,来判断是否存在漏洞。,2023/2/18,哈尔滨工程大学计算机科学与技术学院,39,漏洞利用过程-漏洞挖掘,漏洞挖掘技术从逆向分析的软件测试角,又可分为三类白箱分析黑箱分析灰箱分析,2023/2/18,哈尔滨工程大学计算机科学与技术学院,40,漏洞利用过程-漏洞挖掘,常用的漏洞发现技术:手工测试manual testing静态分析static analysis运行时分析runtime analysis-动态分析技术二进制比较Diff and BinDifffuzzing技术,2023/2/18,哈尔滨工
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 平台 安全保密 防护 技术培训 讲座 PPT
链接地址:https://www.31ppt.com/p-2410470.html