第二章:网络攻击原理与常用方法

本章共计五个章节,依旧偏向于概念性考察,但是比上一章要有意思的多。

  • 网络攻击概述

    • 网络攻击概念
      • 指损害网络系统安全属性的危害行为(每次抄这种都觉得是废话)。导致机密性,可用的,完整性,抗抵赖性(上一章的玩意)等受到破坏。
      • 常见危害行为分为四种
        • 信息泄露攻击(顾名思义)
        • 完整性破坏攻击(删你库)
        • 拒绝服务攻击(就是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常态化,有的网络攻击会持续十年以上直到被发现。
        • 网络攻击速度加快:漏洞发现后没及时补上会造成损失(像是废话)。
        • 网络攻击影响扩大:可以延伸到物理层(断水断电断气)。
        • 网络攻击主体组织化:利益群体抱团,“震网”病毒展现国家力量。
  • 网络攻击一般过程

    • 总体归纳为以下几个步骤
      • 隐藏攻击源:根据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)等
      • 实施攻击:不同攻击者有不同目的,一般归纳为以下几种
        • 攻击其他被信任主机(跳板)
        • 修改或删除重要数据
        • 窃听敏感数据(聊天记录监控?)
        • 停止网络服务
        • 下载敏感数据
        • 删除数据账号
        • 修改数据记录
      • 开辟后门:一次成功的入侵要花很久,所以精于算计的攻击者会留后门方便下次入侵,一般有以下方法:
        • 放宽文件许可权
        • 重新开放不安全服务
        • 修改系统配置
        • 替换系统本身的共享库文件
        • 修改源码,留个木马
        • 安装嗅探器
        • 建立隐蔽信道
      • 清除攻击痕迹:直接介绍方法:
        • 篡改日记文件信息
        • 改变系统时间造成日志文件紊乱
        • 删除或停止审计服务
        • 干扰入侵检测系统运行
        • 修改完整性检测标签
  • 网络攻击常见技术方法
    • 先普及点知识
      • 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
    • 网络安全导致停电事件
    • 以上具体自己看书就是
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值