常用功能:

-探测主机存活
- 扫描端口
- 探测主机操作系统信息
- 检测漏洞

nmap 常用的几个参数

nmap -v ip 显示详细的扫描过程
nmap -p  ip  扫描指定端口
nmap -A ip  全面扫描操作系统
nmap -sP ip  进行ping扫描主机存活
nmap -Pn/-P0 ip 禁ping扫描
nmap -sS ip 进行tcp syn扫描 也叫半开放扫描
nmap -sT ip 进行tcp连接扫描 (准确性高)

端口状态信息

> open :端口开启
> closed :端口关闭
> filtered :端口被过滤,因为报文被防火墙拦截
> Unfiltered :不确定端口是否开放 没有被过滤
> open|filtered(closed|filtered) :不能确定端口是否开放(关闭)或者被过滤

nmap中文说明文档

TARGET SPECIFICATION  目标说明

-iL 从主机地址列表文件中导入扫描地址
-iR 随机选择目标进行扫描,unm hosts 表示数目,设置为0则无休止扫描
--exclude 排除某个主机地址
--excludefile 排除主机列表文件中的地址
*************************************************************
HOST DISCOVERY 主机发现

-sL 列表扫描,仅将指定的目标IP列举出来,不进行主机发现
-sn 和-sP一样,只利用ping扫描进行主机发现,不扫描目标主机的端口
-Pn 将所有指定的主机视为已开启状态,跳过主机发现过程
-PS  TCP SYN ping ,发送一个设置了SYN标志位的TCP报文,默认端口为80,也可指定端口
-PA  TCP ACK ping,发送一个设置了ACK标志位的TCP报文,默认端口为80,也可指定带你看
-PU  UDP ping ,发送一个空的UDP报文到指定端口,可穿透只过滤TCp的防火墙
-P0 使用IP协议ping
-PR 使用ARP ping
-n/-R    -n不用域名解析,加速扫描,-R为目标IP做为反向解析域名,扫描较慢一些
-dns-servers 自定义域名解析服务器地址
-traceroute  目标主机路由追踪
*************************************************************
SCAN TECHNIQUER  端口扫描

nmap 将目标端口分为6种状态:
open(开放的)
closed(关闭的)
filtered (被过滤的)
unfiltered (未被过滤的)可访问但不确定开发情况
open|filtered (开放或者被过滤)无法确定端口是否开放的还是被过滤的
closed|filtered (关闭或者被过滤)无法确定端口是否关闭还是被过滤的
nmap产生的结果基于目标机器的响应报文的,而这些主机肯能是不可信任的。会产生迷惑或者误导nmap的报文

-sS   TCP SYN 扫描,不进行ping 半开放扫描,速度快隐蔽性好(不完成TCP连接),能够明确区分端口状态
-sT   TCP 连接扫描,容易产生记录,效率低
-sA   TCP ACK扫描,只设置ACK标志位,区别被过滤与未被过滤的
-sU   UDP 服务扫描,例如DNS/DHCP等,效率低
-sN;-sF;-sX    TCP Null,Fin,Xmas扫描,从RFC挖掘的微妙方法来区分开放关闭端口
-sl    利用僵尸主机上已知IP分段ID序列生成算法来探测目标上开放端口的信息,极端隐蔽
-sO  IP协议扫描,可以确定目标主机支持哪些IP协议,例如TCP/ICMP等
************************************************************************
PORT SPECIFICATION AND SCAN ORDER 端口说明和扫描顺序-p  指定扫描的端口,可以是单个端口,也可以是端口范围,可以指定UDP或TCP协议扫描特定端口
-p<name> 指定扫描的协议,例如-p http 即可扫描http协议的端口状态
--exclude-ports  排除指定端口不扫描
-F 极速模式,仅扫描100个常用端口
************************************************************************
SERVICE/VERSION DETECTION  服务与版本探测。

Nmap-services  包含大量服务的数据库,Nmap通过查询该数据库可以报告哪些端口可能对应于扫描服务,但不一定正确
-sV 进行服务版本探测
--version-intensity<level> 设置版本扫描强度,范围为0-9,默认是7,强度越高,时间越长,服务越可能被正确识别
************************************************************************
SCRIPT SCAN  脚本扫描

允许用户自己编写的脚本来执行自动化的操作或者扩展nmap的功能,使用Lua脚本语言。
-sC  使用默认类别的脚本进行扫描
--script=<Lua scripts>  使用某个或某类脚本进行扫描,支持统配符描述
************************************************************************
OS DETECTION 操作系统探测

用TCP/IP协议栈fingerprinting进行探测,Nmap发送一系列TCP和UDP报文到远程主机,检查响应的每一个比特。测试后Nmap吧结果和数据库中超过1500个已知的fingerprints比较,如匹配则输出结果

-O  启用操作系统探测
-A 同时启用操作系统探测和服务版本探测
--osscan-limit 针对指定的目标进行操作系统检测
--osscan-guess  当nmap无法确定所检测的操作系统时,会尽可能地提供相近的匹配
************************************************************************
TIMING AND PERFORMANCE  时间和性能
Nmap开发的最高优先级是性能,但实际应用中很多因素会添加扫描时间,比如特定的扫描选项,防火墙配置以及版本扫描等

-T<0-5> 设置模板级数,在0-5中选择。T0、T1用于IDS规避,T2降低了扫描速度以使用更少的带宽和资源。默认为T3,未作任何优化。T4假设具有合适及可靠的网络从而加速扫描。T5假设具有特别快的网络或者愿为速度牺牲准确性
-host-timeout<time> 放弃低速目标主机,时间单位为毫秒

扫描漏洞

nmap --script=vuln ip

3、提供暴力破解的方式,可对数据库、smb、snmp等进行简单密码的暴力猜解
nmap --script=brute 192.168.88.131

4、利用FTP指定脚本对目标特定FTP协议进行密码爆破
nmap --script=ftp-brute.nse 192.168.88.131

5、利用第三方的数据库或资源,例如进行whoise解析
nmap --script=external 192.168.88.131

namp相关命令大全的更多相关文章

  1. linux相关命令大全......持续更新

    启动项目8080端口被占用,然而老久没玩Linux,命令忘光了,杀死进程都不记得了. 决定整理一波吧....... Linux: sudo强制执行,不在root用户下时使用. top 相当于windo ...

  2. Linux命令大全----系统管理相关命令

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka       摘要:本文主要讲了Linux命令大全----系统管理相关命令,并附有实例 一.安装 ...

  3. 黑客攻击常用CMD命令大全

    黑客常用命令大全net user heibai lovechina /add 加一个heibai的用户密码为lovechina net localgroup Administrators heibai ...

  4. centos 命令大全

    文件操作: ls      ####查看目录中的文件#### ls -F       ####查看目录中的文件#### ls -l       ####显示文件和目录的详细资料#### ls -a   ...

  5. db2常用命令大全

    #显示这个DB2错误的解释信息(SQLSTATE 5位数字)db2 ? 42704 #显示这个SQLCODE的解释信息(SQLCODE 四位数字) db2 ? SQL0204N ##查看数据库指定配置 ...

  6. redis shell命令大全

    redis shell命令大全(转自http://blog.mkfree.com/posts/5105432f975ad0eb7d135964) 作者:oyhk   2013-1-28 3:11:35 ...

  7. linux下svn命令大全

    linux下svn命令大全 1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/p ...

  8. Ubuntu常用命令大全(转)

    点评:Ubuntu常用命令大全,学习ubuntn系统的朋友可以收藏下,用ctrl+F查找即可 一.文件/文件夹管理 ls 列出当前目录文件(不包括隐含文件) ls -a 列出当前目录文件(包括隐含文件 ...

  9. Android系统在超级终端下必会的命令大全(adb shell命令大全)

    . 显示系统中全部Android平台: android list targets . 显示系统中全部AVD(模拟器): android list avd . 创建AVD(模拟器): android c ...

随机推荐

  1. 如何查找一个目录中所有c文件的总行数

    如何查找一个目录中所有c文件的行数 面试题问到了一题,如何统计wc文件夹下所有文件的行数,包括了子目录. 最后在 https://blog.csdn.net/a_ran/article/details ...

  2. perl合并文件

    使用Perl合并文件 有时需要将整个目录下的小文件合并到一个文件中,以便查阅检索 特性 整个目录完全遍历,自动存入单个文件顺序遍历文件 待合并的目录 合并后的文件内容 syscfg/test1 sys ...

  3. 什么,你还使用 webpack?别人都在用 vite 搭建项目了

    一.vite 到底是干嘛的? vite 实际上就是一个面向现代浏览器,基于 ES module 实现了一个更轻快的项目构建打包工具. vite 是法语中轻快的意思. vite 的特点: 1.轻快的冷服 ...

  4. 【UE4 C++】 获取Actor、Controller、Pawn、Character

    获取 Actor TActorIterator 遍历 可以用于遍历 Actor,也可以用于遍历 Component for (TActorIterator<AStaticMeshActor> ...

  5. 80. 删除有序数组中的重复项 II

    题目 给你一个有序数组 nums ,请你原地删除重复出现的元素(不需要考虑数组中超出新长度后面的元素),使每个元素最多出现两次 ,返回删除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入 ...

  6. netty中使用protobuf实现多协议的消息

    在我们使用 netty 的过程中,有时候为了高效的传输数据,经常使用 protobuf 进行数据的传输,netty默认情况下为我们实现的 protobuf 的编解码,但是默认的只能实现单个对象的编解码 ...

  7. 使用json-path解析json

    在我们的日常开发中,有时候需要从一个json字符串中获取一个值,或者从一段json字符串中获取到某些值,如果先使用Gson或Jackson转换成java对象在获取值,有些时候是很麻烦的,那么有没有一种 ...

  8. Vagrant 搭建开发环境实践

    介绍 Development Environments Made Easy -官网标题 vagrant是一个命令行的虚拟机管理程序.用于简化搭建开发环境. vagrant使用ruby语言基于Chef ...

  9. evaluate-reverse-polist-notation leetcode C++

    Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operators are+,-,*, ...

  10. JMH 使用指南

    简介 JMH(Java Microbenchmark Harness)是用于代码微基准测试的工具套件,主要是基于方法层面的基准测试,精度可以达到纳秒级.该工具是由 Oracle 内部实现 JIT 的大 ...