【编程】Python中python-nmap扫描参数(一) - 图1

    Python-nmap记录


    最近想写个小工具,先整理一下python-nmap扫描参数:
    第一阶段-先设计,扫描存活,再次获取目标的端口和开启服务。(第一步实现功能)
    安装模块:

    1. pip3 install python-nmappython3 -m pip install python-nmap

    常用扫描的方式:
    请移步:https://blog.csdn.net/qq_36119192/article/details/83717690(查了一些材料觉得这个不错)

    探出存活:

    import nmapnm = nmap.PortScanner()nm.scan('192.168.0.0/24', '80,8080','-sP') 也可以这样nm.scan(hosts='192.168.0.0/24', arguments='-n -sP -PE -PA21,23,80,3389')
    

    上面这个是参考文档的相关调用的参数形式:
    【编程】Python中python-nmap扫描参数(一) - 图2
    返回的信息比较多,自己想要获取的是系统探测的IP存活的信息:
    抓取扫描回来的信息的IP值:

    #!/usr/bin/python3#_*_ encoding=utf-8 _*_import nmapimport click#相关参数@click.command()@click.option('-ip', default='127.0.0.1/24', help='Input you ip.', type=str)def Alive(ip):  nm = nmap.PortScanner()  data = nm.scan(hosts=ip, arguments='-sP')  for ip in data['scan'].keys():    print('ip存活: '+ip)if __name__ == '__main__':  Alive()
    

    抓取自己想要的信息
    【编程】Python中python-nmap扫描参数(一) - 图3
    将存活的IP写入txt

    for ips in data['scan'].keys():    print('ip存活: '+ips)    with open(file_name, 'a+', encoding='utf-8') as aliveip:      aliveip.write(ips + "\n")
    

    【编程】Python中python-nmap扫描参数(一) - 图4
    主要是分析获取原始里面的数据包
    【编程】Python中python-nmap扫描参数(一) - 图5
    找了CSND测试一下
    【编程】Python中python-nmap扫描参数(一) - 图6
    测试获取端口,端口服务情况,开放状况。
    获取存活的IP存储在ip.txt里面,同时开放的端口存储在port.txt
    【编程】Python中python-nmap扫描参数(一) - 图7
    同时测试一下ip同C段获取情况,感觉不错。
    【编程】Python中python-nmap扫描参数(一) - 图8
    开始的功能实现。后续做其他模块

    参考:
    https://blog.csdn.net/qq_36119192/article/details/83717690
    https://www.cnblogs.com/zhangjianghua/p/6639291.html

    免责声明:本站提供安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
    订阅查看更多复现文章、学习笔记
    thelostworld
    安全路上,与你并肩前行!!!!
    【编程】Python中python-nmap扫描参数(一) - 图9
    个人知乎:https://www.zhihu.com/people/fu-wei-43-69/columns
    个人简书:https://www.jianshu.com/u/bf0e38a8d400