2020-06-13【编程】Python中python-nmap
Python-nmap记录
最近想写个小工具,先整理一下python-nmap扫描参数:
第一阶段-先设计,扫描存活,再次获取目标的端口和开启服务。(第一步实现功能)
安装模块:
pip3install python-nmappython3-m pip install python-nmap
常用扫描的方式:
请移步:https://blog.csdn.net/qq_36119192/article/details/83717690(查了一些材料觉得这个不错)
探出存活:
importnmapnm = 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')
上面这个是参考文档的相关调用的参数形式:
返回的信息比较多,自己想要获取的是系统探测的IP存活的信息:
抓取扫描回来的信息的IP值:
#!/usr/bin/python3#_*_ encoding=utf-8_*_importnmapimportclick#相关参数@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')foripindata['scan'].keys():print('ip存活: '+ip)if__name__ =='__main__': Alive()
抓取自己想要的信息
将存活的IP写入txt
foripsindata['scan'].keys():print('ip存活: '+ips)withopen(file_name,'a+', encoding='utf-8')asaliveip:aliveip.write(ips +"\n")
主要是分析获取原始里面的数据包
找了CSND测试一下
测试获取端口,端口服务情况,开放状况。
获取存活的IP存储在ip.txt里面,同时开放的端口存储在port.txt
同时测试一下ip同C段获取情况,感觉不错。
开始的功能实现。后续做其他模块
参考:
https://blog.csdn.net/qq_36119192/article/details/83717690
https://www.cnblogs.com/zhangjianghua/p/6639291.html
免责声明:本站提供安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
订阅查看更多复现文章、学习笔记
thelostworld
安全路上,与你并肩前行!!!!
个人知乎:https://www.zhihu.com/people/fu-wei-43-69/columns
个人简书:https://www.jianshu.com/u/bf0e38a8d400
原文连接:
https://mp.weixin.qq.com/s/5pVUm0JgbNdsN3PjH_E9_g