码迷,mamicode.com
首页 > 编程语言 > 详细

Python3 小工具-ICMP扫描

时间:2019-03-13 18:12:11      阅读:550      评论:0      收藏:0      [点我收藏+]

标签:==   https   name   ber   alt   __name__   port   upload   too   

from scapy.all import *
import optparse
import threading
import os

def scan(ipt):
    pkt=IP(dst=ipt)/ICMP()
    res=sr1(pkt,timeout=0.1,verbose=0)
    if res:
        print(ipt,‘ is online‘)
    
def main():
    parser=optparse.OptionParser("%prog "+"-t <target> -f <filename>")
    parser.add_option(‘-t‘,dest=‘target‘,type=‘string‘,help=‘Target‘)
    parser.add_option(‘-f‘,dest=‘fil‘,type=‘string‘,help=‘Filename‘)
    (options,args)=parser.parse_args()
    target=options.target
    fil=options.fil
    if(target==None) and (fil==None):
        print(‘Please input target(-t) or file(-f)‘)
        exit(0)

    if target:
        iplist=target.split(‘.‘)
        ip=iplist[0]+‘.‘+iplist[1]+‘.‘+iplist[2]+‘.‘
        for t in range(1,255):
            ipt=ip+str(t)
            t=threading.Thread(target=scan,args=(ipt,))
            t.start()
    if fil:
        if os.path.exists(fil):
            with open(fil) as f:
                for i in f.readlines():
                    ipt=i.strip(‘\n‘)
                    t=threading.Thread(target=scan,args=(ipt,))
                    t.start()
        else:
            print(‘File is not exists!‘)
            exit(0)

if __name__==‘__main__‘:
    main()

使用说明

技术图片

开始程序

技术图片

github:https://github.com/zmqq/pytools/tree/master/icmpscan

Python3 小工具-ICMP扫描

标签:==   https   name   ber   alt   __name__   port   upload   too   

原文地址:https://www.cnblogs.com/zmqqq/p/10524770.html

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