涉及网络安全体系,网络攻击技术,网络防御技术,密码技术应用,网络安全应用。
一·网络安全体系
二·网络攻击技术
网络攻击是指对网络的保密性、完整性、不可抵赖性、可用性、可控性产生危害的任何行为,可抽象分为:
信息泄露、完整性破坏、拒绝服务攻击和非法访问四种类别。
网络攻击方式一般可分为读取攻击、操作攻击、欺骗攻击泛洪攻击、重定向攻击和Rootkits技术等。
(1)读取攻击:用于侦察和扫描,识别主机的网络服务(干什么的)以及可能的漏洞。
(2)操作攻击:以篡改数据为手段,攻击以特权身份运行的服务程序,取得程序的控制权,如SQL注入、缓冲区溢出攻击。
SQL注入:
指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。
缓冲区溢出攻击:
缓冲区溢出是指当计算机向缓冲区内填充数据位数时超过了缓冲区本身的容量,溢出的数据覆盖在合法数据上。理想的情况是:程序会检查数据长度,而且并不允许输入超过缓冲区长度的字符。但是绝大多数程序都会假设数据长度总是与所分配的储存空间相匹配,这就为缓冲区溢出埋下隐患。操作系统所使用的缓冲区,又被称为“堆栈”,在各个操作进程之间,指令会被临时储存在“堆栈”当中,“堆栈”也会出现缓冲区溢出。
(3)欺骗攻击: 将自身伪装成其他用户实施攻击行为, 冒充特权用户入侵系统。典型的欺骗攻击如APR攻击、DNS欺骗、IP欺骗和网络钓鱼。
(4)泛洪攻击: 目的是让远程主机无法承受巨大的流量而瘫痪,如Smurf攻击、TCP SYN Flood 和 DDos攻击等。
(5)重定向攻击: 将发往目标的信息全部重定向到攻击者指定的目标主机上,有利于下一步攻击。如APR重定向是欺骗受害主机,将攻击者主机伪装成网关,从而截获所有受害主机发往互联网的报文。
(6)Rootkits: Rootkits是用于隐藏自身及指定文件、进程和链接的恶意软件工具集,集多种攻击技术于一体,常与其它恶意代码结合使用,分为进程注入式和驱动级。驱动级Rootkits较为复杂,且加载级别较高,现阶段还没有较好的解决方法。
网络攻击的常用手段:
(1)网络监听
(2)篡改数据
(3)网络欺骗
(4)弱口令攻击
(5)拒绝服务
(6)漏洞破解
(7)木马攻击
一次成功的网络攻击通常包括:
信息收集→网络隐身→端口和漏洞扫描→实施攻击→设置后门→痕迹清除等步骤。
一·信息收集(准备阶段)
收集什么?
(1)网络接入:
拨号接入、无线局域网接入、以太网接入、VPN远程接入等。
(2)目标网络信息:
域名范围、IP地址范围、具体地理位置等。
(3)网络拓扑结构:
交换设备类型、设备生产厂家、传输网络类型等。
(4)网络用户信息:
邮件地址范围、用户账号密码等。
怎么收集?
(1)使用搜索引擎:百度、搜狗等/
(2)使用dmirty、recon-ng等工具通过whois服务器查询主机的具体域名和地理信息。
whois?
whois就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商、域名注册日期和过期日期等)。通过whois来实现对域名信息的查询。
(3)使用netdiscover等工具查询主机的IP地址范围,使用dnsmap、dnswalk、dig等查询域名空间。
域名空间?
经常会听到客户说你的域名空间多少钱? 其实域名空间就是我们经常说到 的 域名+网站空间,是二者的一个统称。因为我们做一个网站通常要用到两个东西,一个是域名,另一个就是空间。久而久之便有了这个称呼,而非表面字义域名的空间。
(4)使用社会工程学手段。
二·网络隐身
隐藏自己的真实IP地址。
方法:
(1)IP假冒或盗用。
TCP/IP协议不检查源IP地址,所以攻击者定制一个虚假源IP;有的访问控制系统会设置IP访问黑名单,攻击者可以修改IP地址而绕过该机制。
(2)MAC地址盗用。
(3)代理地址。
(4)冒充真实用户。
(5)僵尸机器。
三·端口和漏洞扫描
确定主机的系统类型和版本、提供哪些服务、服务软件的类型和版本等信息。
渗透攻击
四·攻击实施
利用漏洞破击程序并对程序发起入侵或破坏性攻击。
攻击结果一般分为拒绝服务攻击、获取访问权限和提升访问权限等。
五·设置后门
主要方法:开放不安全的服务端口、修改系统配置、安装网络嗅探器、建立隐藏通道、创建具有root权限的虚假用户账号、安装批处理文件、安装远程控制木马、使用木马程序替换系统程序等。
经典的后门工具有专门生成木马的以替换系统程序的工具backdoor-factory等。
六·清除痕迹
清除登录日志和其他有关记录文件。
常用方法:隐藏上传的文件、修改日志文件中的审计信息、修改系统时间造成日志文件数据紊乱、删除或停止审计服务进程、干扰入侵检测系统正常运行、修改完整性检测数据、使用Rootkits工具等。
Windows的系统日志保存在“%systemroot%\system32\config”目录下。
攻击者可使用日志清除工具clearlog来清除痕迹。
1.信息加密
2.访问控制
(1)自主访问控制
(2)强制访问控制
(3)基于角色的访问控制
3.防火墙
被动的技术,静态安全组件
4.入侵防御
5.恶意代码防范
恶意代码分类:
(1)不具有自我复制能力的依附性恶意代码,包括木马、逻辑炸弹、后门。
(2)不具有自我复制能力的独立性恶意代码,包括木马生成器、恶作剧、木马、后门、Rootkits。
(3)具有自我复制能力的依附性恶意代码,包括病毒。
(4)具有自我复制能力的独立性恶意代码,包括蠕虫、恶意脚本、僵尸、计算机细菌。
传播途径:
移动媒介、Web站点、电子邮件和自动传播等。
恶意代码入侵步骤:
入侵系统→维持或提升权限→隐身→潜伏→破坏→重复。
防范技术:
(1)基于特征的扫描技术。
(2)校验和法。
(3)沙箱技术。
(4)基于蜜罐的检测技术。
6.安全审计与查证
收集和监控网络各组件的安全。
一·密码学与密码体制
待加密→明文
已加密→密文
密文到明文 解密
从密文分析出明文 破译
(1)M:明文消息空间,是所有明文的有限集合。
(2)C:密文消息空间,是所有密文的有限集合。
(3)K1,K2:所有加密和解密密钥构成的有限集合。
(4)Ek1:加密变换,对于任意m∈M,存在c∈C,使得Ek1(m)=c成立,其中k1∈K1。
(5)Dk2:解密变换,其中k2∈K2,对任意c∈C且c=Ek1(m),使得Dk2©=m成立。
对于指定给的明文消息m和密钥k1,加密变换Ek1把m变成c,再由解密变换Dk2把c恢复成m。
密码体制:
对称加密体制和非对称加密体制,也成为单钥 和双钥 体制。
对称加密
加密和解密 使用 相同的密钥,如DES,AES等
非对称加密
不同的密钥,即公钥和私钥。
公钥可以公开,收件人解密只需要自己的私钥即可,因此避免了传输安全的问题,目前主要的公钥密钥算法有D-H算法、RSA算法和椭圆曲线算法等。
二·数据加/解密技术
1.加密算法
可分为:对称密钥算法、公钥算法、散列算法(消息摘要)等。
对称加密算法的发展趋势是分组加密,由密钥扩展算法和加/解密算法两部分组成,它的基本原则是混乱和密钥扩散,能够抵御已知明文的差分和线性攻击。
散列算法是一种使用摘要函数的防篡改方法。
2.网络加密方式
三个不同层次:
链路加密、节点加密和端到端加密。
3.密码分析
目标是寻找密码算法的弱点,并根据这些弱点对密码进行破译,其手段有以下几种:
(1)唯密文攻击:破译者已知加密算法和待破解的密文,密码分析的任务是恢复尽可能多的明文,或者推导出加密密钥。
(2)已知明文攻击:已知加密算法、一定数量的密文以及对应的明文,密码分析的任务是推导出密钥,或者推导出一个算法,此算法可解密用该密钥加密的任何信息。
(3)选择明文攻击:已知加密算法、在选定明文时可以知道对应的密文,密码分析的任务是推导出密钥、或者推导出一个算法,此算法可解密用该密钥加密的任何信息。
(4)选择密文攻击:已知加密算法、在选定密文时可以指东对应的明文,密码分析的任务是推导出密钥、或者推导出一个算法,此算法可解密用该密钥加密的任何信息。
综上可得出,要进行破译,我们一定需要知道加密算法,得到算法、密钥代表着破译成功。
三·认证技术
用于验证所传输的数据的完整性,一般可分为 消息认证 和 身份认证 两种技术。
消息认证用于保证信息的完整性和不可否认性,覆盖加/解密和数字签名等内容,它可以检测信息是否被第三方所修改。
身份认证包括身份识别和身份验证。
在网络通信中,可能有下述攻击:
1.泄密
2.流量分析
3.伪装
4.篡改
5.顺序修改
6.时延修改
7.否认:发送方否认发送消息或接收方否认接受消息。
消息认证方法包括:
消息认证码(MAC)、安全散列函数和数字签名三大类。
1.MAC
利用密钥来生成一个固定长度的短数据块,并将该数据块附加在消息后,与消息一起发送给接收方。
接收方对收到的消息用相同的密钥进行相同计算得到新的MAC,并与收到的MAC进行比较,如果不同则消息被篡改。
2.安全散列函数
是MAC的变形,它不生成密钥,仅生成输入消息的摘要值。
3.数字签名
建立在公钥加密体制基础上,只有信息发送方才能产生、别人无法伪造的一串字符。
数字签名具体要求:
(1)发送方事后不能否认发送的报文签名。
(2)接收方能够核实发送者发送的报文签名。
(3)接收方不能伪造发送方的报文签名。
(4)接收方也不能对发送方的报文进行部分篡改。
按照数字签名的执行方式,可分为
(1)直接数字签名
指 数字签名的执行过程只有通信双方参与,并假定双方有共享密钥或接收方知道发送方的公钥。
安全性取决于发送方的密钥安全性。
(2)仲裁数字签名
四·公钥基础奢侈(PKI)
PKI采用证书管理公钥,通过认证机构把用户的公钥和其它标识信息绑定,实现用户身份验证。
一个典型的PKI系统:
1.PKI策略
2.认证机构
3.注册机构
4.证书/CRL发布系统
5.PKI应用接口