本章共计五个章节,依旧偏向于概念性考察,但是比上一章要有意思的多。
-
网络攻击概述
- 网络攻击概念
- 指损害网络系统安全属性的危害行为(每次抄这种都觉得是废话)。导致机密性,可用的,完整性,抗抵赖性(上一章的玩意)等受到破坏。
- 常见危害行为分为四种
- 信息泄露攻击(顾名思义)
- 完整性破坏攻击(删你库)
- 拒绝服务攻击(就是dos,注意ddos是分布式拒绝服务攻击)
- 非法使用攻击(入侵FBI丢导弹算不算?)
- 根据原理再分5块
- 攻击者:分内部和外部,内部的最难防,通常分为间谍,黑客,恐怖主义者,职业犯罪分子,公司职员和破坏者。
- 攻击工具:
- 用户命令:在命令行或图形界面直接输命令。
- 脚本或者程序:用脚本或者程序来挖弱点。
- 自治主体:攻击者初始化一个程序或者片段,独立执行漏洞挖掘(没看懂啥意思,蠕虫病毒?)。
- 电磁泄露:通过电子信号分析方法,实施电磁泄露攻击(这个听着就很狗)
- 攻击访问:攻击者为了达到攻击目的,一定要访问目标网络系统,包括合法和非法的访问,但一般都是非法(也是废话)。
- 攻击效果:
- 破坏信息:余额+10086
- 信息泄密:窃取或者公布敏感信息(希拉里邮件)
- 窃取服务:未授权使用计算机或网络服务(挖矿木马啥的)
- 拒绝服务:干扰系统和网络正常服务(机场被ddos)
- 攻击意图:
- 黑客:表现自己和技术调整(就是装逼)
- 间谍:获取情报
- 恐怖主义者:恐怖集团利益(安拉胡阿克巴!)
- 公司职员:好奇,展现能力(这条没看懂)
- 职业犯罪分子:获取经济利益
- 破坏者:报复和发泄情绪
- 网络攻击模型
- 攻击树模型:
- 建立一个树状模型来表达攻击的顺序和方法,使用AND-OR形式的树结构进行威胁分析。用于红方渗透测试,也可以用于蓝方研究防御机制。
- 百度百科:攻击树
- MITRE ATT&CK模型
- MITRE是公司名,ATT&CK是Adversarial Tactics(敌对策略), Techniques(技术), and Common Knowledge (常识)。它是一个站在攻击者的视角来描述攻击中各阶段用到的技术的模型。
- 将攻击抽象化,具现化(咋听着像动漫),常用于网络红蓝对抗模拟、安全渗透测试、网络防御差距评估、网络威胁情报收集等。
- 网络杀伤链模型
- 主要特点是把网络攻击活动分为7个阶段(术语听着可nb,感觉就跟发射火箭一样)
- 七个阶段分别为:
- 目标侦察:研究,辨认,选择目标,比如用爬虫爬网站信息。
- 武器构造:将远程访问的木马和可利用的有效荷载结合(比如 美女.gif)。
- 荷载投送:把武器化有效荷载投送到目标环境,一般就是网站,U盘,email。
- 漏洞利用:攻击荷载投送主机后,针对应用程序或者操作系统漏洞,会触发恶意代码功能。
- 安装植入:在受害目标系统上安装远程访问的特洛伊木马或者后面来持久控制。
- 指挥与控制:远程控制操作,建立C2通道。
- 目标行动:采取行动执行任务,如收集提取信息,或者破坏数据完整性,或者以此为跳板进行横向扩展渗透。
- 攻击树模型:
- 网络攻击发展
- With the development of social science,攻击者由单机转以网络和信息运行环境为主的攻击。攻击者通过制定策略,组合各种工具,甚至自动完成攻击。攻击方式多种多样。归纳起来主要有以下变化趋势。
- 攻击工具智能化,自动化:编制具有自动攻击能力的软件。
- 网络攻击者群体普适化:由于软件高度自动化,攻击者由技术人员转向非技术人员。
- 网络攻击目标多样化和隐蔽性:由操作系统为主转向各个层面,通信协议,安全协议,域名服务器,啥都整,攻击对象也扩展到物理空间和社会空间(社会工程学)。
- 网络攻击计算资源获取方便:僵尸网络来进行DDOS。
- 网络攻击活动持续性强化:APT常态化,有的网络攻击会持续十年以上直到被发现。
- 网络攻击速度加快:漏洞发现后没及时补上会造成损失(像是废话)。
- 网络攻击影响扩大:可以延伸到物理层(断水断电断气)。
- 网络攻击主体组织化:利益群体抱团,“震网”病毒展现国家力量。
- With the development of social science,攻击者由单机转以网络和信息运行环境为主的攻击。攻击者通过制定策略,组合各种工具,甚至自动完成攻击。攻击方式多种多样。归纳起来主要有以下变化趋势。
- 网络攻击概念
-
网络攻击一般过程
- 总体归纳为以下几个步骤
- 隐藏攻击源:根据TCP/IP协议规定,若没有采取保护措施,攻击主机很容易被反查位置。所以攻击者通常用如下技术隐藏真实IP:
- 利用被侵入主机做跳板
- 免费代理网关
- 伪造IP
- 假冒用户账号
- (都不太懂,先放着)
- 收集攻击目标信息:可能先确定目标在收集该目标信息,也可能大量收集主机信息根据安全性强弱确定最后目标,通常搜罗以下信息:
- 目标一般信息:IP,DNS,操作系统类型以及版本号,数据库软件类型+版本号,应用软件类型以及版本号等。
- 目标配置信息:如系统是否禁止root远程登陆,缺省用户名/默认口令等。
- 目标系统的安全漏洞信息:就查一下目标系统有漏洞的软件或服务。
- 目标系统的安全措施信息:目标系统的安全厂商,产品。
- 目标系统的用户信息:主要是目标用户的邮件账号,社交账号,手机号等等各种个人信息。
- 挖掘漏洞信息:漏洞存在时系统受安全威胁根本原因,这里列出常用漏洞挖掘技术:
- 系统或者应用服务软件漏洞:一般是各种远程服务的漏洞,www,ftp啥的
- 主机信任关系漏洞:寻找被信任的主机,可能是管理员的机器,或者被认为安全的服务器,然后再找那个服务器的漏洞(间接进行攻击)
- 目标网络的使用者漏洞:去发现有漏洞的网络使用者(跟上面那个感觉差不多,但是是从人的角度去看),常见有网络邮件钓鱼,弱口令破解,U盘摆渡,网页恶意代码等。
- 通信协议漏洞:从协议上找漏洞,如IP协议中的地址伪造漏洞、Telnet/Http/ftp/pop3/SMTP等协议的明文传输漏洞(看不懂,有点印象先)
- 网络业务系统漏洞:通过目标网络的业务本身来找漏洞,比如申请登记非实名漏洞(这样就可以无限登记)
- 获取目标访问权限:主要有以下途径
- 获得管理员口令
- 利用系统管理漏洞,如错误文件的许可权,SUID程序中的缓冲区溢出问题等
- 让系统管理员运行木马,如篡改后的login程序等(可能是在中间加了点东西偷密码)
- 窃听管理员口令(键盘监控啥的)
- 隐蔽攻击行为:就是攻击时隐藏自己的行踪
- 连接隐藏:如冒充其他用户,修改loginname环境变量,日志文件等
- 进程隐蔽:使用重定向技术减少ps给出的信息量(ps是linux里查看进程的命令),或者用木马代替ps,反正就是不让人看出来
- 文件隐蔽:用字符串相似麻痹系统管理员(比如比如apple和appIe这里其实分别是小写L和大写i),修改文件属性使得普通方式无法看到(ls看不到得ll)等
- 实施攻击:不同攻击者有不同目的,一般归纳为以下几种
- 攻击其他被信任主机(跳板)
- 修改或删除重要数据
- 窃听敏感数据(聊天记录监控?)
- 停止网络服务
- 下载敏感数据
- 删除数据账号
- 修改数据记录
- 开辟后门:一次成功的入侵要花很久,所以精于算计的攻击者会留后门方便下次入侵,一般有以下方法:
- 放宽文件许可权
- 重新开放不安全服务
- 修改系统配置
- 替换系统本身的共享库文件
- 修改源码,留个木马
- 安装嗅探器
- 建立隐蔽信道
- 清除攻击痕迹:直接介绍方法:
- 篡改日记文件信息
- 改变系统时间造成日志文件紊乱
- 删除或停止审计服务
- 干扰入侵检测系统运行
- 修改完整性检测标签
- 隐藏攻击源:根据TCP/IP协议规定,若没有采取保护措施,攻击主机很容易被反查位置。所以攻击者通常用如下技术隐藏真实IP:
- 总体归纳为以下几个步骤
- 网络攻击常见技术方法
- 先普及点知识
-
SYN表示建立连接,FIN表示关闭连接,ACK表示响应
-
第一次握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,主机B由SYN=1知道,A要求建立联机;
-
第二次握手:主机B收到请求后要确认联机信息,向A发送ack number=(主机A的seq+1),syn=1,ack=1,随机产生seq=7654321的包;
-
第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ack=1,主机B收到后确认seq值与ack=1则连接建立成功。 完成三次握手,主机A与主机B开始传送数据。
-
- 端口扫描:目标是找出目标系统上提供的服务列表,即进一步才能针对服务进行攻击,端口扫描程序挨个尝试和TCP/UDP端口连接,通过对应关系判断有哪些服务,根据利用技术可分为以下类型
- 完全连接扫描:利用TCP/IP三次握手机制建立完整连接,成果则表明端口开放
- 半连接:就是三次握手只握两次,不建立连接
- SYN扫描:发送连接请求得到响应后断开,查看响应信息,ack则开放,reset则没开放
- ID头信息扫描:需要第三方机器配合,就是A主机去持续ping B主机,然后获得返回的数据包,这时候返回的数据包ID头是连续的,然后再用A主机假装B主机去向目的主机C发送SYN数据包,这时可能返回也可能拒绝,但只要看ping B主机返回的数据包的ID头是否依然递增1,如果递增1,则代表没有返回数据,即端口不开放,如果不是递增1,则代表端口开放。这样相当于用个跳板来扫描,而不是A主机本身。
- 隐蔽扫描:能够绕过IDS,防火墙和监视系统等安全机制,取得端口信息的方式。
- SYN/ACK扫描:直接发送SYN/ACK数据包而非SYN数据包,由于这种方法不发送SYN数据包,所以目标主机会认为这是一次错误的连接。所以若不开放则返回RST拒绝信息,开放则不返回信息直接丢掉数据包。
- FIN扫描:发送FIN数据包,reset则关闭,无反应则开放
- ACK扫描:还是发送FIN数据包,但是看的是反馈数据包的TTL(生存时间)和WIN值,开放的TTL一般小于64,WIN大于0。关闭的大于64,WIN等于0
- NULL扫描:将数据包中的ACK,FIN,RST,SYN,URG,PSH等标志位全部置空,若目标主机没有返回任何信息,则表明端口开放,返回reset则关闭
- XMAS扫描:和NULL差不多,只是全部置1了
- 口令破解:就是暴力破密码没啥好说的
- 缓冲区溢出:远程攻击主要方式(没太看懂)
- 恶意代码:常见的就是蠕虫病毒,木马,僵尸网络等
- 拒绝服务:利用系统缺陷执行恶意操作,使得合法系统用户不能得到应得的服务或者系统资源,对关键性和实时性服务影响最大。
- 具有以下特点:难确定性,隐蔽性,资源有限性,软件复杂性
- 同步包风暴(SYN Flood):伪造源地址发送多个SYN给服务器,服务器无法接受ACK从而无法完成握手,影响正常工作。
- UDP洪水(UDP Flood):利用简单的TCP/IP服务,传送毫无用处的满带宽数据。
- Smurf攻击:将回复地址设置成目标网络广播地址的ICMP应答数据包,使得整个网络里的主机对此作出应答,导致网络堵塞。
- 垃圾邮件:就疯狂发,耗尽用户信箱的磁盘
- 消耗CPU和内存资源的拒绝服务攻击:利用算法漏洞构建恶意输入数据集导致CPU或内存资源耗尽
- 死亡之ping:发送大尺寸数据包使TCP/IP堆栈崩溃
- 泪滴攻击:IP数据包传输时会被拆分成片段,并借由偏移量字段作为重组的依据。泪滴攻击通过加入过多或不必要的偏移量字段使系统错乱。
- 分布式拒绝攻击:就是DDOS,养一堆肉鸡访问你。
- 网络钓鱼:假冒官方,恭喜中奖
- 网络窃听:中间人攻击,网络嗅探
- SQL注入:懒得介绍了
- 社交工程:骗
- 电子监听:用无线电装置来监视电磁波
- 会话劫持:接管他人断开的权限
- 漏洞扫描:自动检测远程或本地主机安全漏洞的软件,常见有CGI漏洞扫描,弱口令漏洞扫描,操作系统漏洞扫描
- 代理技术:通过免费代理服务器进行攻击。
- 数据加密:没啥好说的
- 先普及点知识
- 黑客常用工具
- 扫描器:
- NMAP:网络地图,通过NMap可以检测网络上主机的开放端口号、主机的操作系统类型和提供的网络服务
- Nessus:linux上的商业化工具,远程安全扫描器
- SuperScan:可以进行TCP connect端口扫描,PIng和域名解析等功能的工具,能比较容易的对指定范围的IP地址进行ping和扫描
- 远程监控
- 其实是受害机器(肉鸡)上的代理软件,用于发起Ddos或者作为攻击跳板。
- 密码破解
- 常见主要有口令猜测,穷举搜索,撞库等。口令猜测针对弱口令,穷举是使用计算机跑数据,撞库是根据已经收集到的用户密码相关数据集,通过关键词搜索匹配来获取密码。
- 常见工具由John the Ripper:用于破解linux/unix弱口令,LOphtCrack:用于破解windows系统口令。
- 网络嗅探器(network sniffer)
- 通过嗅探来截获网络的信息包,对加密信息包进行破解从而分析数据。
- 常见工具有:Tcpdump/WireShark:前者是命令行的,后者图形化
- DSniff:一个软件套件包含各种功能,可以获取口令,邮件,文件等信息
- 安全渗透工具箱
- Metasploit
- BackTrack5
- 记个名字就行
- 扫描器:
- 网络攻击案例分析
- DDos攻击
- W32.Blaster.Worm
- 网络安全导致停电事件
- 以上具体自己看书就是