《攻防技术基础》复习资料- 下载本文

《漏洞利用与渗透测试基础》课程期末复习资料

《漏洞利用与渗透测试基础》课程讲稿章节目录: 第一章 绪论

第一节 病毒和木马 第二节 软件漏洞及产生原因 第三节 漏洞产业链 第四节 渗透测试 第五节 实验环境 第二章 基础知识

第一节 内存区域 第二节 函数调用 第三节 常见寄存器与栈帧

第四节 汇编语言—寄存器及主要指令 第五节 汇编语言—寻址方式 第六节 函数调用汇编示例 第七节 PE文件 第八节 虚拟内存 第九节 OllyDBG和IDA 第十节 OllyDBG示例 第三章 漏洞概念

第一节 漏洞概念及特点 第二节 漏洞分类 第三节 漏洞库 第四节 第一个漏洞 第四章 常见漏洞

第一节 缓冲区溢出漏洞-栈溢出 第二节 缓冲区溢出漏洞-其他溢出 第三节 格式化字符串漏洞 第四节 整数溢出漏洞

第五章 漏洞利用

第一节 漏洞利用概念 第二节 Shellcode编写示例 第三节 Shellcode编写 第四节 软件防护技术

第五节 漏洞利用技术-地址利用技术 第六节 漏洞利用技术-绕过DEP防护 第六章 漏洞挖掘

第一节 漏洞挖掘-源代码检测 第二节 漏洞挖掘-可执行代码检测 第三节 动态检测 第四节 模糊测试实例 第五节 自己动手写Fuzzer 第七章 渗透测试基础

第一节 渗透测试过程 第二节 Kali Linux基础

第三节 Metasploit渗透测试框架 第八章 渗透测试实践

第一节 渗透实践—被动信息收集 第二节 渗透实践—主动信息收集 第三节 渗透实践—Nessus扫描 第四节 渗透实践—攻破XP系统 第五节 渗透实践—后渗透攻击 第九章 WEB安全基础

第一节 WEB基础 第二节 HTTP会话管理 第三节 WEB编程环境 第四节 JavaScript实践 第五节 PHP语言 第六节 HTTP请求

第七节 PHP连接数据库 第八节 Cookie实战 第九节 十大WEB安全威胁 第十章

第一节 文件上传漏洞 第二节 SQL注入漏洞 第三节 SQLMAP 第四节 跨站脚本

一、客观部分:(单项选择、判断、填空) (一)、选择部分

1、木马与病毒的重大区别是() A.木马会自我复制 B.木马具有隐蔽性 C.木马不具感染性 D.木马通过网络传播

★考核知识点: 病毒与木马的概念 参见讲稿章节:1-1 附1.1(考核知识点解释):

计算机病毒(Computer Virus),根据《中华人民共和国计算机信息系统安全保护条例》,病毒的明确定义是“指编制或者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码”。

病毒往往具有很强的感染性,一定的潜伏性,特定的触发性和很大的破坏性等,由于计算机所具有的这些特点与生物学上的病毒有相似之处,因此人们才将这种恶意程序代码称之为“计算机病毒”。

木马(Trojan Horse),是指那些表面上是有用的软件、实际目的却是危害计算机安全并导致严重破坏的计算机程序。它是具有欺骗性的文件(宣称是良性的,但事实上是恶意的),是一种基于远程控制的黑客工具,具有隐蔽性和非授权性的特点。

所谓隐蔽性是指木马的设计者为了防止木马被发现,会采用多种手段隐藏木马,这样服务端即使发现感染了木马,也难以确定其具体位置;所谓非授权性是指一旦控制端与服务端连接后,控制端将窃取到服务端的很多操作权限,如修改文件、修改注册表、控制鼠标、键盘、窃取信息等等。一旦中了木马,你的系统可能就会门户大开,毫无秘密可言。

木马与病毒的重大区别是木马不具传染性,它并不能像病毒那样复制自身,也并不“刻意”地去感染其他文件,它主要通过将自身伪装起来,吸引用户下载执行。特洛伊木马中包含能够在触发时导致数据丢失甚至被窃的恶意代码,要使特洛伊木马传播,必须在计算机上有效地启用这些程序,例如打开电子邮件附件或者将木马捆绑在软件中放到网络吸引人下载执行等。

2、漏洞也称为(),是计算机系统的硬件、软件、协议在系统设计、具体实现、系统配置或安全策略上存在的缺陷。 A.机密性 B.不完整性 C.可否认性 D.脆弱性

★考核知识点: 漏洞的概念 参见讲稿章节:3-1

附3.1.1(考核知识点解释)

漏洞也称为脆弱性(Vulnerability),是计算机系统的硬件、软件、协议在系统设计、具体实现、系统配置或安全策略上存在的缺陷。这些缺陷一旦被发现并被恶意利用,就会使攻击者在未授权的情况下访问或破坏系统,从而影响计算机系统的正常运行甚至造成安全损害。

漏洞的定义包含了以下三个要素:首先,漏洞是计算机系统本身存在的缺陷;其次,漏洞的存在和利用都有一定的环境要求;最后,漏洞的存在本身是没有危害的,只有被攻击者恶意利用,才能给计算机系统带来威胁和损失。 3、栈的存取采用()的策略 A.先进先出 B.后进先出 C.后进后出

D.先进后出

★考核知识点: 栈溢出的概念 参见讲稿章节:4-1

附4.1.2(考核知识点解释)

被调用的子函数中写入数据的长度,大于栈帧的基址到esp之间预留的保存局部变量的空间时,就会发生栈的溢出。要写入数据的填充方向是从低地址向高地址增长,多余的数据就会越过栈帧的基址,覆盖基址以上的地址空间。

如果返回地址被覆盖,当覆盖后的地址是一个无效地址,则程序运行失败。如果覆盖返回地址的是恶意程序的入口地址,则源程序将转向去执行恶意程序。

栈的存取采用先进后出的策略,程序用它来保存函数调用时的有关信息,如函数参数、返回地址,函数中的非静态局部变量存放在栈中。栈溢出是缓冲区溢出中最简单的一种。 4、以下说法正确的是()

A.Metasploit项目最初由HD Moore在2005年夏季创立。

B.Metasploit v2版本为Metasploit从一个渗透攻击框架性软件华丽变身为支持渗透测试全过程的软件平台打下坚实的基础。

C.除了渗透攻击之外,Metasploit在发展过程中逐渐增加对渗透测试全过程的支持,包括情报搜集、威胁建模、漏洞分析、后渗透攻击与报告生成。 D. Metasploit版本都可以自动生成报告。 ★考核知识点: 对Metasploit的认识 参见讲稿章节:7-3

附7.3.1(考核知识点解释)

Metasploit是一个开源的渗透测试框架软件,也是一个逐步发展成熟的漏洞研究与渗透代码开发平台,此外也将成为支持整个渗透测试过程的安全技术集成开发与应用环境。

Metasploit项目最初由HD Moore在2003年夏季创立,目标是成为渗透攻击研究与代码开发的一个开放资源。2004年8月,在拉斯维加斯举办的BlackHat全球黑客大会上,HD与Spoonm携最新发布的Metasploit v2.2站上演讲台,他们的演讲题目是“Hacking Like in the Movies”(像在电影中演的那样进行渗透攻击)。大厅中挤满了听众,过道中也站着不少人,人群都已经排到了走廊上。