最近在家里学习渗透,看到了nmap对服务器进行端口扫描,记录学习如下:

Nmap支持非常多的扫描方式,包括TCP Syn ,TCP Connect,TCP ACK,TCP FIN/Xmas/NULL,UDP等扫描方式。Nmap 扫描用法较为简单,并且提供丰富的参数来指定扫描方式。

案例一:扫描指定IP所开放端口

输入命令:nmap -sS -p 1-65535 -v 192.168.1.106,表示使用半开扫描,指定为端口为1到65535,并且显示扫描过程,常用扫描参数如表所示,如需等多扫描参数请参照Nmap -help命令

-sT

TCP connect()扫描,这种方式会在目标主机的日志中会记录大批的连接请求以及错误信息

-sS

半开扫描,很少有系统能够把这记入系统日志。不过,需要root权限

-sF  -sN

秘密FIN数据包扫描、圣诞树(Xmas Tree)、空(Null)扫描模式

-sP

ping扫描,Nmap在扫描端口时,默认都会使用ping扫描,只有主机存活,Nmap才会继续扫描

-sU

UDP扫描,但UDP扫描是不可靠的

-sA

这项高级的扫描方法通常用来穿过防火墙的规则集

-sV

探测端口服务版本

-P0

扫描之前不需要ping,有些防火墙禁止ping。可以使用此选项进行扫描

-v

显示扫描过程,推荐使用

-h

帮助选项,必看,最清楚的帮助文档

-p

指定端口,如[1-65535],[1433,135,3389,22]等格式

-O

启用远程操作系统检测,存在误报

-A

全面系统检测,启用脚本检测,扫描等。

-oN/-oX/-oG

讲将报告写入文件,分别是三种格式[正常,XML,grepable]

-T4

针对TCP端口禁止动态扫描延迟超过10ms

-iL

读取主机列表,例如[-iL C:\ip.txt]

案例二:扫描www.ssser.com C段存活主机

命令:nmap -sP www.ssser.com/24

案例三:指定端口扫描

命令:nmap -p 80,1433,22,1521 www.ssser.com

 

案例四:探测主机操作系统

命令:nmap -o www.ssser.com

 

案例五:全面系统探测

命令:nmap -v -A www.ssser.com  注意:Nmap默认扫描主机1000个高危端口,若需要全面检测端口,则需要加入 “-p 1-65535” 或者 “-p-”

案例六:穿透防火墙进行扫描

www.2cto.com是禁止ping的,Nmap的一些常用选项,无法再起作用,这是可以利用-PN参数,命令:nmap -Pn -A  www.2cto.com

案例七:扫描web敏感目录

以xxser.com为例,仅需要输入命令 nmap -p 80 --script=http-enum.nse www.xxser.com 即可,如图4-8所示。

案例八:扫描SqlInjection

扫描SQL注射漏洞是比较简单的,主要用到了sql-injection.nse脚本文件,此脚本文件可以在Nmap官网下载。注:速度较慢。

命令:nmap -p 80 --script=sql-injection.nse www.xxser.com

案例九:使用所有脚本进行扫描

命令:nmap --script all 127.0.0.1  注意:使用此命令非常耗时,最好把记录保存到文档里面。

案例十:使用通配符扫描

命令:nmap --script "http-*" 127.0.0.1 ,使用所有以“http-”开头的脚本扫描,值得注意的是,脚本的参数必须用引号引起来,以保护从shell的通配符。

在渗透测试中,用好Nmap脚本引擎是一大助力。你可以自由的利用每个参数进行扫描,探测,非常灵活。

Nmap 扫描的更多相关文章

  1. 转-Nmap扫描原理与用法

    1     Nmap介绍 操作系统与设备类型等信息. Nmap的优点: 1.      灵活.支持数十种不同的扫描方式,支持多种目标对象的扫描. 2.      强大.Nmap可以用于扫描互联网上大规 ...

  2. Nmap扫描原理与用法

    Nmap扫描原理与用法 1     Nmap介绍 Nmap扫描原理与用法PDF:下载地址 Nmap是一款开源免费的网络发现(Network Discovery)和安全审计(Security Audit ...

  3. Nmap扫描教程之DNS服务类

    Nmap扫描教程之DNS服务类 Nmap DNS服务类 DNS(Domain Name System,域名系统)的作用就是将主机名解析为相应IP地址的过程. 通常主机域名的一般结构为:主机名.三级域名 ...

  4. Nmap扫描基础常用命令(包含进阶使用)

    Nmap扫描常用命令  - Nmap scans common commands 1.扫描单个目标 nmap ip 如:nmap 192.168.0.101 2.扫描多个目标 nmap ip1 ip2 ...

  5. nmap 扫描信息收集

    1.端口镜像 port Mirroring 功能通过在交换机上或者路由器上,将一个或者多个源端口的数据流量妆发大奥某一个指定的端口来实现对网络的监听,指定端口成为镜像端口或目的端口. 2.ARP攻击捕 ...

  6. 基于nmap扫描结果的端口爆破工具:BrutesPray

      大家搞内网或者C段渗透测试的时候可能遇到很多时候需要对大批的主机进行精确爆破,这时候BruteSpray就派上用场了. BruteSpray是一款基于nmap扫描输出的gnmap/XML文件.自动 ...

  7. Nmap扫描命令使用详解

    Nmap扫描基础扫描 当用户对Nmap工具了解后,即可使用该工具实施扫描.通过上一章的介绍,用户可知Nmap工具可以分别对主机.端口.版本.操作系统等实施扫描.但是,在实施这些扫描工作之前,需要先简单 ...

  8. nmap扫描验证多种漏洞

    nmap在Kali Linux中是默认安装的.它不仅可以用来确定目标网络上计算机的存活状态,而且可以扫描各个计算机的操作系统.开放端口.服务,还有可能获得用户的证书. 命令结构: nmap -sS - ...

  9. nmap扫描内网存活机器脚本

    nmap扫描内网存活机器并保存在指定文件中. host.sh #/usr/bin/bash read -p "Please input scan host or network:" ...

  10. Nmap扫描教程之基础扫描详解

    Nmap扫描教程之基础扫描详解 Nmap扫描基础扫描 当用户对Nmap工具了解后,即可使用该工具实施扫描.通过上一章的介绍,用户可知Nmap工具可以分别对主机.端口.版本.操作系统等实施扫描.但是,在 ...

随机推荐

  1. kubernetes 示例 hello world

    本文所说的Hello world是一个web留言板应用,并且是基于PHP+Redis的两层分布式架构的web应用,前端PHP web网站通过访问后端Redis数据库完成用户留言的查询和添加功能,具备读 ...

  2. 克拉 & 24K

    [克拉] 克拉(Ct)是宝石的质量(重量)单位,现定1克拉等于0.2克或200毫克.一克拉又分为100分,如50分即0.5克拉,以用作计算较为细小的宝石.因为宝石的密度基本上相同,因此越重的宝石体积越 ...

  3. S 导入值列表浏览器、值列表

    先导入值列表浏览器,再导入值列表 一.导出模板 上面为导出模板 二.导入值列表浏览器 下面开始导入EXCEL数据 List Of Values Parent(1).xls List Of Values ...

  4. PHP 将HTML转成PDF文件,HTML 转word,Word 转Html

    html转 PDF 用MPDF ,Word转Html  纯PHP的方法暂未找到Word直接转PDF的方法 可以使用 LibreOffice 6.1  (Liunx,win) 皆可使用 Html转成PD ...

  5. 5-青蛙的约会(ex_gcd)

    青蛙的约会 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions:122411   Accepted: 25980 Descripti ...

  6. CSGL

    glShadeModel void glShadeModel(GLenum mode) GL_FLAT/[GL_SMOOTH] 着色技术选择 glClearDepth GL.glClearDepth( ...

  7. 【记录】CentOS7安装NODEBB

    NodeBB介绍: NodeBB 是一个更好的论坛平台,专门为现代网络打造.它是免费的,易于使用. NodeBB 论坛软件是基于 Node.js开发,支持 Redis 或 MongoDB 的数据库.它 ...

  8. 利用BeanUtils.copyProperties 克隆出新对象,避免对象重复问题

    1.经常用jQuery获取标签里面值val(),或者html(),text()等等,有次想把获取标签的全部html元素包括自己也用来操作,查询了半天发现$("#lefttr1"). ...

  9. vue2.0 #$emit,$on的使用

    首先实例化: bus.js import Vue from 'Vue' export default new Vue() 组件1, import bus from '../../assets/js/b ...

  10. shell 脚本 查看班上同学的网络状态

    #!/bin/base # a=192.168.100. //定义变量 c=('王浩' '谢云生' '黄科杨' '何星宇' '张宸兵' '胡燕' '刘桃') //定义数组 for b in {101. ...