来自 技术 2019-04-17 00:00 的文章

使用Python-nmap网络扫描和嗅探工具包

nmap概念

NMap,也称为网络映射器,最初是Linux下的网络扫描和嗅探工具包。

Nmap是一种网络连接扫描软件,用于扫描网络计算机的开放网络连接端。确定哪些服务在哪

些连接上运行,并推断计算机在哪个操作系统上运行(也称为指纹识别)。它是网络管理员必备

软件之一,用于评估网络系统的安全性。

和大多数用于网络安全的工具一样,nmap也是许多黑客和黑客(也称为脚本男孩)最喜欢的工具。系统管

理员可以使用nmap检测工作环境中未授权的服务器,而黑客可以使用nmap收集目标计算机

的网络设置并计划攻击。

Nmap经常与评估系统漏洞的Nessus软件混淆。Nmap避免了对入侵检测系统的秘密监视,

尽可能不影响目标系统的日常运行。

三一重工利用矩阵中的Nmap,结合SSH1的32位循环冗余检测漏洞,入侵电厂能源管理系统。

学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习python或者有兴趣学习python的伙伴可以私信回复小编“学习” 获取资料,一起学习

nmap功能

有三个基本功能:一是检测一组主机是否联机;二是扫描主机端口,嗅探所提供的网络服务;二是

推断主机所使用的操作系统。Nmap可以用来扫描只有两个节点的局域网,最多可以扫描500

多个节点。Nmap还允许用户自定义扫描技术。通常,使用ICMP协议进行简单的ping操作就

可以满足一般要求;UDP或TCP端口也可以深入探索,直到主机所使用的操作系统;所有检测结

果都可以用不同格式的日志记录下来,以便进一步分析。

进行ping扫描,打印出对扫描做出响应的主机,不做进一步测试(如端口扫描或者操作系统探测):

仅列出指定网络上的每台主机,不发送任何报文到目标主机:

探测目标主机开放的端口,可以指定一个以逗号分隔的端口列表(如-PS22,23,25,80):

使用UDP ping探测主机:

使用频率最高的扫描选项:SYN扫描,又称为半开放扫描,它不打开一个完全的TCP连接,执行得很快:

nmap安装

本文以linux Ubuntu16.04为例,最后主要用python操作

先安装nmap

再安装python-nmap

安装完之后python导入nmap测试验证是否成功

python操作nmap

1.简单的小案例

创建PortScanner实例,然后扫描114.114.114.114这个IP的20-443端口。

返回格式如下:

2.内置方法:

还可以打印出简单的信息