网络安全与管理 整理

让我们看看这个学期的网安课给了我们啥。

介绍

安全的定义:一个系统,应用或协议的安全通常与一个包含期望属性的集合,一个有特定能力的对手相关。

C.I.A模型:

Confidentiality 保密性:

信息安全的首要重点是保密性,保密性是指避免未授权的信息披露。强调数据保护,为有权限的提供访问,同时禁止未授权的进行信息获取。

保密方法:

加密:使用密钥进行信息的转换,获取信息必须持有密钥。

访问控制:针对保密信息的限制规则。

身份验证:校验角色权限,基于持有信息,所知信息,身份信息。

授权:基于访问控制。

物理安全:对保护机密资源的物理隔离,保密柜,保密室。

Integrity 完整性,不可修改性:

信息具有不被未授权方式修改的属性。

完整性方法:备份,校验,纠错码

Availability 有效性:

信息可以被授权的人及时进行访问和修改的属性。

有效性方法:

物理保护:使用保持信息在物理变更后仍有效的基础设施

计算冗余:可以进行回滚操作恢复信息的计算机或存储设备

A.A.A 模型:

Authenticity 真实性:

判断人或系统所发出的声明,政策,权限是真实的能力

方法:数字签名

Assurance 保证性:

指计算机系统中信任管理提供的方法

信任管理依赖于:规则,授权,保护

Anonymity 匿名性:

某些记录或事务不能归属于个人的属性。

方法:

聚合:来自许多个人的数据的组合,使得公开的总数或平均数不能与任何个人联系在一起。
混合:以一种无法追溯到任何个人的方式将事务、信息或通信交织在一起。
代理:信任的代理,愿意以一种无法追溯到那个人的方式为一个人采取行动。

假名:可以在通信和事务中填入真实身份的虚构身份,但其他情况下只对受信任的实体知道。

攻击和威胁:

窃听 Eavesdropping:在通讯发生的传输信道上进行信息拦截

修改 Alteration:未授权对信息修改,如中间人攻击,拦截信息修改后再传输。

拒绝服务 Denial-of-service:数据服务和信息访问的中断和退化,如垃圾邮件,邮件炸弹攻击

伪造 Masquerading:伪造信息来源

否认 Repudiation:拒绝承认或数据接收,通常用于尝试退出需要数据接收方返回确认信息的协议。

关联和追踪 Correaltion adn traceback:集成多个数据源和数据流以确认某一特定数据流或者信息片段的源。

十大安全法则:

1.机制经济性

2.故障安全默认

3.完全仲裁

4.设计开放

5.特权分离

6.最小特权

7.最少公共机制

8.心理可接受

9.工作因素

10.危害记录

访问控制

访问控制矩阵:定义权限的一张表,每行是一个角色,每列是一个可访问对象

访问控制列表:定义每个可访问对象的可执行权限

密码系统组成:

可能的明文的集合

可能的密文的集合

加密密钥的集合

解密密钥的集合

加密密钥和解密密钥之间的对应关系

使用的加密算法

使用的解密算法

凯撒密码 给偏移量,进行基于字母顺序的移位

对称密钥:加解密使用的密钥一致,n个角色进行两两保密通讯需要n(n-1)/2个对称密钥。

公钥密码学:公钥加密,私钥解密

数字信封:使用会话密钥加密一次明文,再用对端的公钥加密一次会话密钥,对端获取两个信息后,用自身私钥解密会话密钥,再用解密出来的会话密钥解密密文。(若公钥是通过公钥证书获取的,则认为是有效的公钥。)

数字签名:为了保证一个信息的权威性,发布方先对该消息进行消息摘要,发布方使用自身持有的私钥对消息摘要进行加密,然后发送该密文。倘若能用发布方发布的公钥进行解密,得到实际获取信息一致的消息摘要,那么可以说明信息是完整有效的且权威的。

加密哈希函数(SHA-1,SHA-256):对一消息的校验,有如下特点:

单向,容易自消息计算出哈希值,但难以逆运算计算出原文。

碰撞抵抗,难以找到一个碰撞消息使其哈希值与原消息哈希值相同。

社会工程学内容:

Petexing 假托:引诱受害者暴露其信息

Baiting 诱饵:欺诈性使用户或代理进行不安全行为

Quid pro quo 相等补偿:提供一个行为或服务期待回馈


物理安全:被广泛定义为使用物理措施保护贵重的物品或信息,访问受限制的资源。

位置保护:保护计算机硬件的物理位置.

物理入侵检测:非法访问计算机硬件所在的物理位置的检测。

硬件攻击:对保存信息或计算的硬件进行攻击的方法,如硬件驱动器、网络适配器、内存芯片和微处理器

窃听:监视光、声音、无线电或其他信号以探测通信或计算的攻击。

物理接口攻击:利用系统物理接口的弱点来渗透系统安全性的攻击

边信道攻击:曲线救国,通过寻找系统保护漏洞简单实现攻击。

ATM安全:目前ATM的行业标准是三重DES(3DES)加密系统,这是一种具有112比特位对称密钥加密的系统。

对ATM的攻击:

黎巴嫩结:在ATM入口伪造吞卡工具,让顾客以为ATM损坏了,然后在顾客离开进行求助的时候使用该卡进行存取。

略读器:刷卡时读取和存储磁条信息的设备,攻击者使用该设备在ATM卡插槽上读取客户的磁卡信息,然后使用该信息复制出另一张卡。

假ATM:同时获取信用卡和个人识别码。

计算机取证:在计算机上保存,识别,提取,记录和解释数据的科学过程,用于获取潜在的法律证据。

在电子媒介上获取信息的实践,例如计算机系统、硬盘驱动器和光盘,通常用于收集用于法律诉讼的证据。而因此攻击者也可以使用这些取证技术来揭露敏感信息。


操作系统安全

缓存区:用于存储用户输入的固定大小的存储区域。

缓存区溢出:当用户输入超过了最大的缓冲区大小时发生。额外输入会进入不可预计的存储位置。

利用:一种输入(程序段,声明串,指令序列),对缺陷,漏洞或故障进行利用以进行攻击。

攻击:是一种对计算机软硬件或电子设备进行的预期外,未预料的能给攻击者带来好处的行为。

缓冲区溢出攻击:最常见的操作系统缺陷。

开发者对缓冲区控制有缺陷,使得输入覆盖一部分进程缓存运行,攻击者可以使用该方法执行恶意代码,或者恶意数据,若进程是在ROOT权限下运行的,则该恶意代码也是在ROOT指令下进行的。

基于UNIX的地址空间组织

低位地址 0x0000 0000开始

文本域:程序机器码,源码编译结果

数据域:在源码执行前被初始化的静态变量。

BBS 符号起始的块 :未初始化的静态变量

堆:程序执行时动态构造的数据

:向下增长的结构,跟踪被调用方法和其参数,局部变量

高位地址 0xFFFF FFFF 结束

堆溢出攻击、栈溢出攻击

返回地址溢出攻击(实验内容):在缓冲区内写入恶意代码,并覆盖掉返回地址,使之指向恶意代码,当抵达返回地址时,将开始完整权限执行恶意代码。

实验里是通过将x=1语句覆盖掉,完成返回地址溢出,具体内容涉及具体的操作系统和语言里的堆栈存储设计 实验代码如下,函数最后一行的地址偏移量基于不同的实验环境会不同,需要具体观察

intmain(){

  int x = 0;

  function(1,2,3);

  x = 1;

  printf(“%d\n”,x);

}

voidfunction(int a, int b, int c){

  char buffer1[5];

  char buffer2[10];

  int *r;

  r = buffer1 + 12;

  (*r) += 8;

}


恶意软件:为了破坏或拒绝操作而设计的程序(代码,脚本,活动内容和其他软件),收集敏感信息,获取对系统资源的未经授权的访问,以及其他滥用行为。它将

窃取个人信息

删除文件

点击欺诈操作

窃取软件序列号

将受害主机作为中继

恶意软件分类:

Viruses 病毒:人为或非人为的情况下产生,在用户不知情或未批准下,能自我复制运行的恶意计算机程序,需要人为帮助传播。

Trojans 木马: 经加壳制作伪装传播的后台程序,通过欺骗用户进行运行而运行。有可控制和不可控制两种。

Worms 蠕虫:与病毒相似,可自我复制,但其不需要附在其他程序内运行,可能不需要使用者介入操作也能自我复制或执行。

Rootkits:一种使用操作系统工具集,通过向操作系统内核注入程序执行的恶意程序(原本不一定是恶意的,rootkit最开始是给用户用的工具而已。)

后门:计算机系统中用于越过正常验证,安全远端登陆计算机,访问其资源的方法。

逻辑炸弹:一种基于特定逻辑条件执行结果而产生恶意行为的程序。好比Fork炸弹,千年虫问题

僵尸网络:由被入侵控制的计算机组成的庞大网络,集中控制该网络的头节点即为该网络的所有者,可用其发送垃圾邮件,作为跳板窃取信息。

隐私侵入软件:运行目的是用户的有价值或隐私的信息,广告软件,监视软件

John Von Neumann 冯 诺伊曼 的 《复杂自动机理论及组织进化》1949 提出了计算机病毒,蠕虫等自复制程序的理论基础。

网络安全

电路交换 (传统电话网):通过通信双方开始通讯时建立的电路进行的数据交换

包交换(互联网):数据分包,数据包独立基于网络传播,被当前最优处理节点逐级处理,路径不定

协议: 定义计算机通讯规则,基于面向连接和面向无连接等特征划分。

包封装:数据包一般包括:用于控制和标识数据包来源和目的地的信息+载荷数据

DDoS攻击 拒绝服务攻击:垃圾邮件攻击,邮件炸弹,Ping风暴攻击,TCP同步攻击,DNS劫持,接收缓冲区溢出攻击

Ping风暴攻击:通过大量ICMP响应请求占用对端资源 只能通过封锁广播网络的响应请求,进行过滤,封锁来源IP地址进行防范

这种方法需要大量的网络资源发起

TCP SYN Flood 同步风暴攻击:通过发送SYN请求且不进行请求确认,迫使对端打开大量半开连接,持续消耗对端资源

DNS Hijacaking DNS劫持:变更DNS信息,使对端在访问域名时获得错误的IP地址

中间人攻击:通过拦截通讯数据并且修改后正常转发,使该通讯过程双方得到虚假信息或使攻击者获取自身所需信息。

社会工程学:利用影响力和说服力迫使人们泄露敏感信息,这并不涉及技术手段


防火墙和IDS入侵检测系统:

防火墙:一组用于防止未授权的对网络计算机系统的访问的完整的安全措施,作为两个网络间的安全网关,通常处于可信网络和不可信网络间。

防火墙规则:用于从更大的互联网中保护隐私网络和独立主机的过滤规则集合。

主要有接收,丢弃,拒绝主要三种形式,有黑名单,白名单两种

防火墙有无状态过滤,有状态过滤,应用层过滤三种

UTM Unified Threat Management Products 一体化威胁管理产品

IDS Intrusion-detection system 入侵检测系统

一种对网络传输进行即时监控,在发现可以传输时发出警报或主动采取反应措施的网络安全设备。是一种积极主动的安全技术。

IDS 原理:

基于知识的检测也称为误用检测,误用检测对检测的系统活动进行分析,试图发现那些与预定义好的入侵特征相匹配的事件和事件集,与入侵相对应的模式被称为特征,所以误用检测也被称为基于特征的检测。目前最常见的是将每一个入侵事件行为定义为一个特征描述,所有入侵行为特征描述组成特征库。误用检测系统通过对事件进行分析提取特征模式与特征库进行匹配,以判断是否有发生入侵行为。

基于行为的检测也称为异常检测,异常检测技术基于用户行为和进程行为都有较大稳定性的特点,建立用户行为和进程行为的正常模式,当出现较大的偏差异常时判定有入侵行为发生。通常实现为搜集一段时间的正常操作活动历史数据,建立起代表用户-主机-网络连接的正常行为轮廓,然后收集事件数据判断是否符合该行为模型。

IDS类型: 基于主机,基于网络,混合

组件:传感器(收集数据),分析器(判定入侵是否发生),用户界面


web安全

密码学

明文(Plaintext):伪装前的原始数据

密文(Ciphertext) :伪装后的数据

加密(Encrypt):伪装的过程

密钥(Key):参与密码变换的参数

加密算法:用于对数据加密的一组数学变换

解密(Decrypt):将密文恢复为明文

解密算法用于解密的一组数学变换 

滚筒密码=栅栏密码

凯撒密码:字母序偏移


对称加密过程


流密码加密过程

克劳德香农的基于现代块密码的 替换-置换网络 提供了混淆-扩散消息和密钥 替换如凯撒密码,置换如DES

混淆Confusion扩散Diffusion

密码需要完全抹除原生消息的特征,通过一次性填充进行

香农建议

扩散——耗散明文在密文上的统计结构

混淆——使密文和密钥间的关系尽可能复杂

费斯托密码结构



加密步骤:基于明文分组交叉进行加密函数运算和异或运算

1.明文划分成同等大小两组,L for Left group,E0 for encrypt level zero,R for Right group.

2.右组进行加密函数计算后,与左组进行一次异或,得到下一层右组

3.右组直接成为下一层左组

4.下一层右组进行加密函数计算后,与左组进行一次异或,得到下一层右组

5.右组直接成为下一层左组

6.经过8次该循环后,交换两组位置,输出密文

解密步骤:

1.密文划分成同等大小两组,左组解密顶层等于右组加密底层,右组解密顶层等于左组加密底层。

2.右组进行加密函数计算后,与左组进行一次异或,等到下一右组。

3.右组直接成为下一层左组。

4.下一层右组进行加密函数计算后,与左组进行一次异或,得到下一右组

6.右组直接成为下一层左组

6.经过8次该循环后,交换两组位置,输出明文。

Feistel网络的设计特点

分组大小较大的分组意味着较强的安全性,但会降低加密解密速度。64位的分组大小是合理的折中,几乎所有的分组设计中都使用它

密钥大小较大的密钥意味着较强的安全性,但会降低加密解密速度。现代算法中最常用的是128位密钥

循环次数:本质是单一循环的不足,多重循环能够加强安全性。典型的循环次数为16

子密钥生成算法:较大的复杂性会增大密钥分析的难度

循环函数:较大的复杂性意味着给密码分析带来更大的难度


DES加密算法


DES解析:

初始置换

    DES算法的入口参数

    Key:8个字节64位,作为工作密钥

    Data:8个字节64位,操作数据

    Mode:DES工作方式

迭代过程

逆置换

子密钥生成

在费斯托密码结构上引入了子密钥生成过程,以及加密函数内容


64位密钥在忽略每8位一个的校验位后只剩下56位

密钥对等划分,进行一次左右对换后作为一个加密循环的输入密钥。

加密函数F:

通过使用一张表使32位输入拓展到48位,与密钥做一次异或

结果输入S盒,S盒内是以6位地址指向的4位值,以地址取值,最终8*6=8*4=32bit

最后再执行一次P盒变换。

DES涉及大量的基于已有表的变换操作。

雪崩效应:明文和密文中的一个小变化应当在密文中产生显著变化,一个比特更改能引起密文多个比特更改,若更改很小,则可能会提供了减少搜索的明文和键空间的大小的方法,DES具有强烈的雪崩效应。

RC4:


步骤:

1.初始化256位S盒,使用密钥K循环填充256位T盒

2.使用T盒,循环对S盒进行置换以确保混淆 规则为 S[i]<->S[j] j=j+S[i]+S[j]

3.生成流密钥:循环S盒,S[i]<->S[j]规则为 j=j+S[i] 流密钥T[i]=S[i]+S[j]

4.流密钥与明文做异或,得出密文


公钥密码学 Whitfield Diffie &Martin Helleman《New Directions in Cryptography》 1976

Differ-Helleman 密钥交换过程

1.协商一致全局变量 素数q,g为q的原根,(即g的n次方mod q是不同的整数)

2.每个用户选择一个随机密钥Xa<q,计算各自公钥 Ya=g^Xa mod q

3.交换Ya后,计算共享密钥 

对A来说 K=Yb^Xa mod q

对B来说 K=Ya^Xb mod q

这都等于 g^Xa*Xb mod q

4.使用共享密钥对需加密信息进行加密,攻击者只能获取到Ya,Yb,q,g 这时他必须自己选择X 进行碰撞才能计算出内容,但倘若使用中间人攻击从一开始便伪造信息进行密钥协商,还是可以攻击成功的。

RSA公钥算法 由Rivest ,Shamir ,Adleman于1978提出《A Method for Obtaining Digital Signature and Public-Key Cryptosystems》,建立于欧拉定理对大整数分解的难度上。

步骤:

1.选定两个大素数 p,q

2.使N=pq作为系数

3.根据欧拉算法,不大于N且与N互质的整数个数为(p-1)(q-1),选择一个这样的整数e

4.取一个d,使ed=1 mod(p-1)(q-1)

5.公钥即为(N,e) 私钥即为(d)

加解密

加密 密文=明文^e mod N

解密 明文=密文^d mod N


供应链安全

供应链:供应链是以完成从采购原材料到制成中间产品及最终产品,然后将最终产品交付用户为功能的,由一系列设施盒分布选择形成的网络。

ICT供应链/IT供应链/网络供应链:网络基础设施的全部集合包括终端用户、政策制定者、采购方、系统集成商、网络提供者以及软件/硬件供应商。用户/供应商之间通过组织盒过程互动来计划、构建、管理、维护和保护网络基础设施。

猜你喜欢

转载自blog.csdn.net/LHF_debug/article/details/80848338