下午就考试了,东西背的头好疼
贴出来点:好多啊,好难背啊。。。
8、网络数据包生成技术
原始套接字
创建原始套接字时,用户必须具有管理员权限
其构造的数据包最底层协议的数据包只能是IP数据包,不能构造链路层数据包
基于WinPcap方法
Windows环境中专门捕获网络数据包的组件
用户只需要掌握编程接口
可以构造基于链路层的数据包
基于Libnet方法
提供了通用的数据包构造方法
为用户提供了方便的编程接口
任何协议的数据包度可以实现
9、溢出的工作原理
堆栈溢出
一种写入的数据超出了给堆栈分配的缓冲区大小而发生的溢出
整型溢出
用来保存某个数值范围的特定数据类型或CPU寄存器,当分配给它的值超出其范围时,就出现了整型溢出。
在计算分配的内存大小时发生的整型溢出通常会导致缓冲区溢出
堆溢出
当数据被写入所分配的堆空间之外时,发生堆溢出
格式化字符串攻击
当写入格式化字符串参数%n中的数据超出目标缓冲区时,就导致了格式化字符串攻击
2. 缓冲区溢出的定义:
指写入缓冲区的数据量超过该缓冲区能容纳的最大限度,造成溢出的数据改写了与该缓冲区相邻的原始数据的情形。
10、Linux内核安全技术(Netfilter的实现机制)
可加载的内核模块LKM(内核功能动态扩充技术)
威胁:内核级入侵。
Linux的内核防火墙---- Netfilter的实现机制
11、安全测试:威胁模型、入口点、恶意节点等概念
安全测试:试图寻找软件的安全漏洞,并验证攻击者是否可能出于恶意目的滥用该 程序。否定性测试。
威胁模型
是一个过程
能够用来描绘一个软件模块是如何工作的
软件与什么进行交互
数据是如何进入并离开软件或软件模块的
列举潜在的安全威胁。
一个典型的威胁模型(TM)的关键部分:
数据流程图DFD
入口点和退出点列举
潜在威胁列举
威胁模型为测试计划的制定提供基础
入口点是应用程序能够接收输入的地方
对于攻击者,入口点是尝试突破应用程序的最佳位置
识别高风险入口点的步骤:
识别应用程序的入口点,搞清楚它们是干什么的
确定每个入口点需要的访问权限
从测试的角度为这些高风险的入口点划分等级
通过攻击来测试这些入口点
常见入口点:文件、套接字、HTTP请求、命名管道、可插入协议处理程序、恶意服务器响应、程序化接口、注册表、结构化查询语言等。
成为恶意的客户端
开发人员在服务器代码编写过程中错误的信任来自客户端的数据;
攻击者充分的利用这些错误。
客户端应用程序有意的访问任意一个服务器
恶意引导
不经用户干预就指定客户端连接到某一个服务器
用户系统信息:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; SLCC1; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.5.30729; .NET CLR 3.0.30618; CIBA)