Aotle

你所看到的惊鸿,都曾被平庸磨练

复习笔记——欺骗攻击与防御

Arp欺骗

arp协议,地址解析协议,目的是实现IP地址到mac地址到转换。

img

PC1依据OSI模型①依次从上至下对数据进行封装,包括对ICMP Date加IP包头的封装,但是到了封装MAC地址的时候,②PC1首先查询自己的ARP缓存表,发现没有IP2和他的MAC地址的映射,这个时候MAC数据帧封装失败。我们使用ping命令的时候,是指定PC2的IP2的,计算机是知道目的主机的IP地址,能够完成网络层的数据封装,因为设备通信还需要对方的MAC地址,但是PC1的缓存表里没有,所以在MAC封装的时候填入不了目的MAC地址。

那么PC1为了获取PC2的MAC地址,③PC1要发送询问信息,询问PC2的MAC地址,询问信息包括PC1的IP和MAC地址、PC2的IP地址,这里我们想到一个问题,即使是询问信息,也是需要进行MAC数据帧的封装,那这个询问信息的目的MAC地址填什么呢,规定当目的MAC地址为ff-ff-ff-ff-ff-ff时,就代表这是一个询问信息,也即使后面我要说的广播。

PC2收到这个询问信息后,将这里面的IP1和MAC1(PC1的IP和MAC)添加到本地的ARP缓存表中,然后④PC2发送应答信息,对数据进行IP和MAC的封装,发送给PC1,因为缓存表里已经有PC1的IP和MAC的映射了呢。这个应答信息包含PC2的IP2和MAC2。PC1收到这个应答信息,理所应当的就获取了PC2的MAC地址,并添加到自己的缓存表中。

经过这样交互式的一问一答,PC1和PC2都获得了对方的MAC地址,值得注意的是,目的主机先完成ARP缓存,然后才是源主机完成ARP缓存。之后PC1和PC2就可以真正交流了。

ARP之广播请求单播回应

上图面的图解是不完全的ARP协议,因为在局域网里边不会只有两台主机,这里就要考虑如何在局域网众多主机里获得目的主机的MAC。

img

和上面的一样,刚开始PC1并不知道PC2的MAC地址,同样需要发送ARP请求,但是这个局域网里主机很多,怎么唯独获取PC2的MAC呢,①我们想到和一群陌生人交流一样,可以挨着询问一遍,这就是我们要说的广播,首先PC1广播发送询问信息(信息和上一张图介绍的一样),在这个普通交换机上连接的设备都会受到这个PC1发送的询问信息。

接下来②需要做的是,所有在这个交换机上的设备需要判断此询问信息,如果各自的IP和要询问的IP不一致,则丢弃,如图PC3、Route均丢弃该询问信息,而对于PC2判断该询问信息发现满足一致的要求,则接受,同样的写入PC1的IP和MAC到自己的ARP映射表中。

最后,③PC2单播发送应答信息给PC1,告诉PC1自己的IP和MAC地址。


二、ARP数据包信息

ARP数据的详细信息列表如下

arp

ARP请求包

img

ARP应答包

内容格式和上图相似,不过会有目的地址对应的MAC地址,ARP数据包类型字段为2。


三、ARP攻击

img

我们知道,当PC1对PC2正常通信的时候(先别管攻击者PC3),PC2、PC1会先后建立对方的IP和MAC地址的映射(即建立ARP缓存表),同时对于交换机而言,它也具有记忆功能,会基于源MAC地址建立一个CAM缓存表(记录MAC对应接口的信息),理解为当PC1发送消息至交换机的Port1时,交换机会把源MAC(也就是MAC1)记录下来,添加一条MAC1和Port1的映射,之后交换机可以根据MAC帧的目的MAC进行端口转发,这个时候PC3只是处于监听状态,会把PC1的广播丢弃。

正常的PC3会把广播包丢弃,同样的PC3可以抓住这一环节的漏洞,把不属于自己的广播包接收,同时回应一个虚假的回应包,告诉PC1我就是PC2

(IP2-MAC3),这样PC1会收到两个回应包(一个正确的IP2-MAC2,一个虚假的IP2-MAC3),但是PC1并不知道到底哪个是真的,所以PC1会做出判断,并且判断后到达的为真,那么怎么让虚假的回应包后到达呢,PC3可以连续不断的发送这样的回应包,总会把哪个正确的回应包覆盖掉。

而后PC1会建立IP2-MAC3这样一条ARP缓存条目,以后当PC1给PC2发送信息的时候,PC1依据OSI模型从上至下在网络层给数据封装目的IP为IP2的包头,在链路层通过查询ARP缓存表封装目的MAC为MAC3的数据帧,送至交换机,根据查询CAM表,发现MAC3对应的接口为Port3,就这样把信息交付到了PC3,完成了一次ARP攻击。

img

如果ARP攻击严重话,会导致同一个局域网(也是同一个广播域)的所有主机的ARP缓存表中都存放着错误的IP和MAC的映射,如上图,每台主机的ARP缓存表中,不论哪个IP,都会映射到攻击者的MAC地址MAC1上,这样该局域网内的所有主机的消息都发送到Hacker的主机上。

常用攻击工具:ettercap

防御:arp防火墙,静态arp

Ip欺骗

IP欺骗是在服务器不存在任何漏洞的情况下,通过利用TCP/IP协议本身存在的一些缺陷进行攻击的方法,这种方法具有一定的难度,需要掌握有关协议的工作原理和具体的实现方法。

IP地址欺骗是指行动产生的IP数据包为伪造的源IP地址,以便冒充其他系统或发件人的身分。

一、TCP、IP协议的简单说明:

TCP/IP(传输控制协议/网际协议)是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据传输格式以及传送方式,TCP/IP是因特网的基础协议。要想当黑客就有必要了解TCP/IP协议。

在数据传送中,可以形象的理解为有两个信封:TCP和IP信封。要送递的信息被分成若干段,每一段塞入一个TCP信封,并在该信封上记录有分段号的信息,再将TCP信封塞入IP大信封里,发送到网上。在扫收端,一个TCP软件包收集信封,抽出数据,按发送方的顺序还原,并加以校验,若发现差错,TCP将会要求重发。因此TCP/IP在因特网中几乎可以无差错地传送数据。对因特网用户来说,并不需要了解网络协议的整个结构,仅需了解IP的地址格式,即可与世界各地进行网络通信。

1、TCP/IP的层次结构:

TCP/IP协议组中的协议因特网上数据的传输,提供了几乎目前上网所用到的所有服务,在TCP/IP协议组中有两种协议:

(1)网络层协议:

网络层协议管理离散计算机间的数据传输。这些协议用户注意不到,它们是个系统表层以下工作的。比如,IP协议为用户和远程计算机提供了信息包的传输方法,它是在许多信息的基础上工作的。比如机器的IP地址。在机器的IP地址和其他信息的基础上,IP确保信息包正确达到目的机器。通过这一过程,IP和其他网络层的协议一共同用于数据传输。如果没有网络工具,用户就看不到在系统里工作的机器的IP。

(2)应用层协议:

相反地,应用层协议是可以看到的。比如,文件传输协议(FTP)是可以看到的。用户为了传一个文件而请求一个和其他计算机连接,连接建立后,就开始传输文件,在传输时,用户和远程计算机的交换的一部分是能看到的。

2、TCP/IP的重要协议:

(1)地址解析协议(ARP):

在网络上进行通信的主机必须知道对方主机的硬件地址(网卡的物理地址)。地址解析协议的目的就是将IP地址映射成物理地址。这在使信息通过网络时特别重要。一个消息(或者其他数据)在发送之前,被打包到IP包里面,或适合于因特网传输信息块中,其中包括两台计算机的IP地址。 在这个包离开发送计算机前,必须找到目标的硬件地址,这就是ARP最初到达的地方。

一个ARP请求消息会在网上广播。请求由一个进程接收,它回复物理地址。这个回复消息由原先的那台发送广播消息的计算机接收,从而传输过程就开始了。

ARP的设计包括一个缓存。为了减少广播量,ARP在缓存中保存地址映射以备后用。ARP级存保存有动态项和静态项。动态项是自动加和删除的,静态项则是保留在缓存(Cache)中,直到计算机重启为止。ARP缓存总是为本地子网保留硬件广播地址(0xffffffffffffh)用为一个永久项,此项使主机能够接收ARP广播。当果看存时,该项不会显示。每条ARP缓存记录的生命周期为10分种,如果2分种未用则删除。缓存容量满时,删除最早的记录,但是,缓存也引起了安全性的问题。那就是缓存溢出——这不是本文的讨论内容,所以就不说了。

(2)因特网控制消息协议(ICMP):

因特网控制消息协议(ICMP)用于报告错误并IP对消息进行控制。IP运用互联组管理协议(IGMP)来告诉路由器某一网络上指导组中有哪些可用主机。

以ICMP实现的最著名的网络工具是Ping。Ping通常用来判断一台远程机器是否正开着,数据包从用户的计算机发到远程计算机,这些包通常返回到用户的计算机,如果数据据包没有返回到用户计算机,Ping程序就产生一个表示远程计算机关机的错误消息。

、IP欺骗的理论根据:

由于TCP是面向连接的协议,所以在双方正式传输数据之前,需要用“三次握手”来建立一个稳重的连接。

这里的ip欺骗是tcp会话劫持

假设hosta和hostb两台主机进行通信,hostb首先发送带有SYN标志的数据段通知hosta建立TCP连接,TCP的可靠性就是由数据包中的多位控制字来提供的,其中最重要的是数据序列SYN和数据确认标志ACK。B将TCP报头中的SYN设为自己本次连接中的初始值(ISN)。

当hosta收到hostb的SYN包之后,会发送给hostb一个带有SYN+ACK标志的数据段,告之自己的ISN,并确认hostb发送来的第一个数据段,将ACK设置成hostb的SYN+1。

当hostb确认收到hosta的SYN+ACK数据包后,将ACK设置成hosta的SYN+1。Hosta收到hostb的ACK后,连接成功建立,双方可以正式传输数据了。

看了这个过程,我们就很容易想到,假如想冒充hostb对hosta进行攻击,就要先使用hostb的IP地址发送SYN标志给hosta,但是当hosta收到后,并不会把SYN+ACK发送到我们的主机上,而是发送到真正的hostb上去,这时IP欺骗就失败了,因为hostb根本没发送发SYN等。所以如果要冒充hostb,首先要让hostb失去工作能力,也就是所谓的拒绝服务攻击,设法让让hostb瘫痪。

可是这样还是远远不够的,最难的就是要对hosta进行攻击,必须知道hosta使用的ISN。TCP使用的ISN是一个32位的计数器,从0到4,294,967,295。TCP为每一个连接选择一个初始序列号ISN,为了防止因为延迟、重传等扰乱三次握手,ISN不能随便选取,不同的系统有着不同的算法。理解TCP如何分配ISN以及ISN随时间的变化规律,对于成功的进行IP欺骗攻击是很重要的!ISN约每秒增加128 000,如果有连接出现,每次连接将把计数器的数值增加64,000。很显然,这使得用于表示ISN的32位计数器在没有连接的情况下每9.32小时复位一次。这所以这样,是因为它有利于最大于度地减少“旧有”连接的信息干扰当前连接的机会。如果初始序例号是随意选择的,那么不能保证现有序例号是不同于先前的。假设有这样一种情况,在一个路由回路中的数据包最终跳出循环,回到了“旧有”的连接,显然这会对现有连接产生干扰。预测出攻击目标的序例号非常困难,而且各个系统也不想同,在Berkeley系统,最初的序列号变量由一个常数每秒加1产生,等加到这个常数的一半时,就开始一次连接。这样,如果开始一个合法连接,并观察到一个ISN正在使用,便可以进行预测,而且这样做有很高的可信度。现在我们假设黑客已经使用某种方法,能预测出ISN。在这种情况下,他就可以将ACK序便号送给hosta,这时连接就建立了。

三、IP欺骗攻击过程解析:

IP欺骗由若干步骤组成,下面是它的详细步骤:

1、使被信任主机失去工作能力:

为了伪装成被信任主机而不露陷,需要使其完全失去工作能力。由于攻击者将要代替真正的被信任主机,他必须确保真正的被信任主机不能收到任何有效的网络数据,否则将会被揭穿。有许多方法可以达到这个目的(如SYN洪水攻击、TTN、Land等攻击)。现假设你已经使用某种方法使得被信任的主机完全失去了工作能力。

2、序例号取样和猜测:

前面讲到了,对目标主机进行攻击,必须知道目标主机的数据包序例号。通常如何进行预测呢?往往先与被攻击主机的一个端口(如:25)建立起正常连接。通常,这个过程被重复N次,并将目标主机最后所发送的ISN存储起来。然后还需要进行估计他的主机与被信任主机之间的往返时间,这个时间是通过多次统计平均计算出来的。往返连接增加64,000.现在就可以估计出ISN的大小是128,000乘以往返时间的一半,如果此时目标主机刚刚建立过一个连接,那么再加上64 ,00。

一旦估计出ISN的大小,就开始着手进行攻击,当然你的虚假TCP数据包进入目标主机时,如果刚才估计的序例号是准确的,进入的数据将被放置在目标机的缓冲区中。但是在实际攻击过程中往往没这么幸运,如果估计序例号的小于正确值,那么将被放弃。而如果估计的序例号大于正确值,并且在缓冲区的大小之内,那么该数据被认为是一个未来的数据,TCP模块将等待其他缺少的数据。如果估计序例号大于期待的数字且不在缓冲区之内,TCP将会放弃它并返回一个期望获得的数据序例号。

你伪装成被信任的主机IP,此时该主机仍然处在瘫痪状态,然后向目标主机的513端口(rlogin)发送连接请求。目标主机立刻对连接请求作出反应,发更新SYN+ACK确认包给被信任主机,因为此时被信任主机仍然处于瘫痪状态,它当然无法收到这个包,紧接关攻击者向目标主机发送ACK数据包,该包使用前面估计的序例号加1。如果攻击者估计正确的话,目标主机将会接收该ACK。连接就正式建立起了,可以开始数据传输了。这时就可以将cat ‘++’>>~/.rhosts命令发送过去,这样完成本次攻击后就可以不用口令直接登录到目标主机上了。如果达到这一步,一次完整的IP欺骗就算完成了,黑客已经在目标机上得到了一个Shell权限,接下来就是利用系统的溢出或错误配置扩大权限,当然黑客的最终目的还是获得服务器的root权限。

3、总结一下IP攻击的整个步骤:

(1)首先使被信任主机的网络暂时瘫痪,以免对攻击造成***扰;

(2)然后连接到目标机的某个端口来猜测ISN基值和增加规律;

(3)接下来把源址址伪装成被信任主机,发送带有SYN标志的数据段请求连接;

(4)然后等待目标机发送SYN+ACK包给已经瘫痪的主机;

(5)最后再次伪装成被信任主机向目标机发送的ACK,此时发送的数据段带有预测的目标机的ISN+1;

(6)连接建立,发送命令请求。 (连接是建立了,但是只能发送命令,收不到回显,因为服务器根据IP回显给了真的信任主机)

IP欺骗的防御

  1. 抛弃基于地址的信任策略,不允许r*类远程调用命令执行
  2. 进行包过滤,入口过滤和出口过滤
  3. 使用加密技术,网络层采用IPSec,传输层采用tls协议。
  4. 使用随机化的初始序列号。

基于sslstrip的https会话劫持

0 引言

HTTPS作为一种安全的HTTP数据传输协议,被广泛应用于万维网上敏感信息的通信,例如交易支付等方面。然而,HTTPS也存在自身的缺陷,不能绝对保证服务端自身的安全。在网络攻防中,威胁服务器安全的行为时有发生,最常见的例子就是使用模仿银行域名的钓鱼攻击(Phishing)。随着HTTPS的广泛使用,一些新的针对HTTPS会话的劫持也开始出现,如基于中间人攻击的Surf Jacking、SSLSniff等。

文中结合HTTPS实现过程中出现的一些问题,分析了一种新的HTTPS会话劫持方法SSLStrip,同时提出了针对HTTPS会话劫持的防范措施。

1 HTTPS协议分析

HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道。它是由Netscape公司开发,其目的是通过应用Netscape的安全套接字层(SSL)作为HTTP应用层的子层,实现对数据的加密以及身份的验证。当客户端向服务器提出连接要求时,首先要协商建立SSL连接,然后在SSL应用数据通道上传输HTTP数据。HTTPS使用端口443进行通信,而不同于HTTP使用端口80与TCP/IP进行通信[1]。

当HTTPS服务器与客户端进行交互时,其连接过程可以分为3个阶段:客户端与服务器之间建立TCP连接;客户端与服务器进行SSL握手;在客户端与服务器成功SSL握手后,传送已加密的HTTPS数据。

其中,完整的SSL握手过程又可分成以下4个步骤[2]:

① 建立安全能力:确定客户端浏览器与HTTPS服务器之间通信所使用的SSL版本和密码编码方式。

② 服务器鉴别和密钥交换:HTTPS服务器向客户端发送数字证书,以证明自己的身份,此证书中包含服务器公钥及其他信息,并使用CA密钥加密。

③ 客户端验证和密钥交换:客户端验证HTTPS服务器身份,并生成会话密钥,使用服务器公钥加密。如服务器需验证客户端,则向服务器发送客户端证书,并使用客户端自己的私钥加密。

④ 握手完成:服务器与客户端确认会话密钥,并发送单独加密报文,表示握手完成。

在HTTPS的使用中,一些服务器也会采用SSL简单握手协议,在SSL握手过程中,服务器不需要客户端提供证书,其结果可导致欺骗的发生。

2 HTTPS会话劫持

2.1 HTTPS中间人攻击

HTTPS中间人攻击(Man-in-the-Middle Attack)[3]是一种“间接”的入侵攻击,这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机MITM虚拟放置在网络连接中的客户端Client与服务器Server之间,在客户端与服务器进行HTTPS通信时,由MITM对HTTPS数据进行转发,Client和Server都不会意识到会话已被劫持。MITM不仅可窃听HTTPS通信还可以对信息进行篡改,达到HTTPS攻击的目的。

基于Web的HTTPS会话使用SSL协议,而SSL协议在握手协商阶段发送公钥证书。比较普遍的HTTPS中间人攻击,例如SSLSniff等,在网关截获SSL会话,替换服务器公钥证书,将公钥PKey换成自己的公钥PKey’,欺骗客户端。客户端使用PKey’加密信息并发送会话,中间人用私钥Skey’解密客户端返回会话,从而劫持会话。同时,中间人用PKey加密明文会话并返回服务器[4]。

使用SSLSniff进行HTTPS会话劫持时,在客户端收到未认证的证书时,浏览器会弹框示警,从而有可能造成客户端对MITM存在的警觉。

2.2 HTTPS会话劫持的新方法 SSLStrip

(1) SSLStrip简介

在分析完HTTPS协议流程以及一种HTTPS中间人方法SSLSniff后,文中介绍一种新的HTTPS中间人会话劫持方法SSLStrip[5]。SSLStrip所能达成的目标是在客户端与服务器建立连接时,在MITM与Server之间形成HTTPS连接,而在Client与MITM之间形成HTTP连接,即将SSL层从原HTTPS连接中“剥离”。这样,既避免了在客户端验证证书时难以避免的弹框问题,又能够劫持HTTP明文数据,并同时保证客户端HTTP数据的传输,达到欺骗服务器与客户端的效果。

(2) SSLStrip的原理和实现

现实生活中,在浏览器地址栏中输入网址时,多数用户会采用直接输入网址的方式,而忽略了传输所采用的协议。例如,在登录gmail过程中,大多数用户会直接在地址栏中输入www.gmail.com,向Google服务器发送一个HTTP连接请求,而不是输入https://www.gmail.com,向服务器发送一个HTTPS连接请求。因此,用户通常接触到HTTPS的方式有两种:一种是 Web上的连接,比如当用户在gmail上输入用户名和密码后,点击的登录键,将用户的用户名和密码以HTTPS的形式POST到服务器。另一种是通过HTTP的302状态。当客户端向gmail提出HTTP连接请求时,gmail服务器会返回一个REDIRECT网址,https://www.google.com/accounts/ServiceLogin?service=mail...,用户端在接收到这个URL后,将页面重定位到该网页,并请求HTTPS连接。

从另外一个角度讲,用户通常是通过HTTP向服务器发起HTTPS连接的。而HTTP本身是以明文的形式对外传送,并不能保证数据的安全。因此,可以考虑通过对HTTP进行劫持,来实现对HTTPS劫持的目的。整个SSLStrip过程包括如下几个步骤(见图1):

① 客户端Client向服务器Server发起HTTP连接请求;

② 中间人MITM监听客户端与服务器的HTTP数据;

③ 服务器返回给客户端的HTTP数据包被在客户端与服务器之间的中间人截获。中间人解析原HTTP数据包,将其中<a href="https://...">替换成<a href="http://...">,将Location:https://... 替换成Location:http://..,同时记录下所修改的URL,并保存;

④ 中间人将修改后的HTTP数据发送给客户端;

⑤ 客户端Client向服务器Server发起HTTP连接请求;

⑥ 中间人计算机解析客户端的HTTP连接请求,并与保存文件相比较。当发现存在有已修改过的HTTP URL时,将其替换成原HTTPS URL,并发送给服务器;

⑦ 与服务器保持HTTPS连接,回到步骤③;

⑧ 与客户端保持HTTP连接,回到步骤④。

SSLStrip原理流程如图2所示。

(3) SSLStrip劫持HTTPS的效果

对于服务器端而言,服务器Server从HTTPS连接开始,就与中间人MITM建立SSL连接。服务器并不能区分客户端Client和中间人MITM的区别,因而,服务器认为HTTPS是安全的。

对于客户端而言,由于中间人MITM与客户端Client之间是HTTP连接,因此并不会产生证书认证时弹框等任何示警。如图3所示,在Firefox浏览器下,SSLStrip前后的明显区别是:URL前的图标不同;URL中的https://被替换成http://。作为一般用户,不会注意到这些区别,而浏览器也会误认为其与服务器之间的http连接是安全的。

对于中间人而言,他们可以劫持并监听服务器与客户端之间的任何HTTP与HTTPS通信。

3 针对SSLStrip的防御

SSLStrip在SSL连接开始之前,就对客户端进行欺骗,同时与服务器进行HTTPS交互。针对SSLStrip的防御可以从两个方面开始进行:

(1)针对服务器

在整个域名下,建议都使用基于SSL的HTTPS连接,不要在已经不属于SSL的对话页面上提供注册服务,以防止中间人以HTTP中间人的方式劫持HTTPS。

(2)针对客户端[6]

针对客户端的防御有以下步骤:

① 在输入涉密网站的网址时,尽量加上“https://”,以防止中间人篡改HTTP重定向后的URL;

② 对于使用IE作为浏览器的用户,在登录涉密网站时,若地址栏没有变成黄色时加以注意;对于使用其他浏览器的用户,在登录涉密网站时,注意是否显示为https://…,均可在一定程度上防范当前的中间人和网络钓鱼攻击;

③ 下载最新版高安全度的网络浏览器;

④ 对敏感账号采用认证证书,如令牌和其他形式的双因素认证;

⑤ 对来自未知发件人发出的电子邮件要高度警惕,不要以点击链接的方式接入涉密网站(而应在浏览器中输入网址)。

另外,由于SSLStrip是基于中间人攻击的,因此一些针对ARP欺骗的防御方式[7]同样可有效地用于SSLStrip的防御,比如,使用非对称加密等方式,或者使用一些带有IP过滤的以太网交换机等等。

dns欺骗

1、DNS

DNS即Domain Name System 的缩写,域名系统以分布式数据库的形式将域名和IP地址相互映射。DNS协议即域名解析协议,简单的说:DNS是用来将域名解析成对应ip地址的协议。

2、工作原理

  1. 访问www.baidu.com ,首先要向本地DNS服务器发出DNS请求,查询 www.baidu.com 的IP地址,如果本地DNS服务器没有在自己的DNS缓存表中发现该网址的记录,就会向根服务器发起查询,根服务器收到请求后,将com域服务器的地址返回给本地DNS服务器,本地DNS服务器则继续向com域发出查询请求,域服务器将 baidu.com 授权域名服务器的地址返回给本地DNS服务器,本地DNS服务器继续向 baidu.com 发起查询,得到www.baidu.com的IP地址。
  2. 本地DNS服务器得到www.baidu.com对应的IP地址后以dns应答包的方式传递给用户,并且在本地建立DNS缓存表。
  3. Windows下查看和刷清空DNS缓存表的命令
1
2
ipconfig /displaydns    
ipconfig /flushdns1

3、DNS欺骗

首先欺骗者向目标机器发送构造好的ARP应答数据包,ARP欺骗成功后,嗅探到对方发出的DNS请求数据包,分析数据包取得ID和端口号后,向目标发送自己构造好的一个DNS返回包,对方收到DNS应答包后,发现ID和端口号全部正确,即把返回数据包中的域名和对应的IP地址保存进DNS缓存表中,而后来的当真实的DNS应答包返回时则被丢弃。

电子邮件欺骗

主要是伪造发送地址,回复地址,和钓鱼链接,附件等。

防御手段:

  1. 用户需要有良好的防范意识
  2. smtp服务器需要开启身份验证机制。
  3. 对邮件进行加密和签名。

web欺骗

伪造一模一样网站进行钓鱼,仔细分别可以区分开。

评论