ARP扫描渗透测试(Python)


任务描述:

现欲对该系统中主机进行ARP扫描渗透测试,确认该系统中都有哪些IP主机在线.

1.进入虚拟机操作系统:Ubuntu Linux 32bit中的/root目录,完善该目录下的arp_sweep.py文件,填写该文件当中空缺的Flag1字符串,将该字符串作为Flag值(形式:Flag1字符串)提交;(arp_sweep.py脚本功能见该任务第6题)

2.进入虚拟机操作系统:Ubuntu Linux 32bit中的/root目录,完善该目录下的arp_sweep.py文件,填写该文件当中空缺的Flag2字符串,将该字符串作为Flag值(形式:Flag2字符串)提交;(arp_sweep.py脚本功能见该任务第6题)

3.进入虚拟机操作系统:Ubuntu Linux 32bit中的/root目录,完善该目录下的arp_sweep.py文件,填写该文件当中空缺的Flag3字符串,将该字符串作为Flag值(形式:Flag3字符串)提交;(arp_sweep.py脚本功能见该任务第6题)

4.进入虚拟机操作系统:Ubuntu Linux 32bit中的/root目录,完善该目录下的arp_sweep.py文件,填写该文件当中空缺的Flag4字符串,将该字符串作为Flag值(形式:Flag4字符串)提交;(arp_sweep.py脚本功能见该任务第6题)

5.进入虚拟机操作系统:Ubuntu Linux 32bit中的/root目录,完善该目录下的arp_sweep.py文件,填写该文件当中空缺的Flag5字符串,将该字符串作为Flag值(形式:Flag5字符串)提交;(arp_sweep.py脚本功能见该任务第6题)

6.在虚拟机操作系统:Ubuntu Linux 32bit下执行arp_sweep.py文件,对服务器场景进行ARP扫描渗透测试;将该文件执行后的显示结果中,第1行的第1个字符以及第2行的第1个字符作为Flag值(形式:第1行的第1个字符;第2行的第1个字符)提交;


按照描述主要使用scapy模块,就可以完成任务。

#encoding=utf-8
from scapy.all import *
import sys
#qq:726361158
def worker():
    ip_list=[]
    for ipFix in range(1,255):
        ip="172.16.1."+str(ipFix)
        arpPkt = Ether(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst=ip, hwdst="ff:ff:ff:ff:ff:ff")
        res = srp1(arpPkt, timeout=1, verbose=False)
        if res:
            print "IP: " + res.psrc + "     MAC: " + res.hwsrc
            ip_list.append(res.psrc)
    return ip_list
if __name__=="__main__":
    fp = open('/root/ip.txt','w')
    ip_list = worker()
    i = 0
    for ip in ip_list:
        fp.write(ip+'\n')
        i+=1
    print('over......')
    print("ip num:%d"%i)
    fp.close()


  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值