最近在家里学习渗透,看到了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. 「小程序JAVA实战」小程序的个人信息作品,收藏,关注(66)

    转自:https://idig8.com/2018/09/24/xiaochengxujavashizhanxiaochengxudegerenxinxizuopinshoucangguanzhu65 ...

  2. Html生成控件

    HtmlHelper:获取或设置 System.Web.Mvc.HtmlHelper 对象,该对象用于呈现 HTML 元素. 以下是Html的写法与生成的结果的对比 @Html.Label(" ...

  3. 进程组&Session

    [进程组] 1. getpgrp(), getpgid(0) 可获取进程组id, 进程组长的pid等于pgid. 如果进程组长exit, 则进程组依旧存在, 组内其它进程的组ID仍然是之前的ID, 即 ...

  4. jquery去掉click事件

    1:使用removeAttr( )和attr( ) $("a").attr("click",test()); $("a").removeAt ...

  5. Create Empty Project In Vs But Not Debug?

    问题描述 在使用VS创建一个空的项目管理,然后,添加项目.可是,这个时候,项目虽然可以运行,但是不能Debug进行调试. 解决方法 按照下面三张图像的设置即可.

  6. CSGL

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

  7. 启动项目报错:502 Server dropped connection The following error occurred while trying to access http://localhost:8080/TestDemo:

    之前的项目一直是好的,可以启动,但最近启动出了问题,访问不了,于是找到原因发现是启用了访问国外网站的加速器, 更改了浏览器的代理模式,如下: 解决方法: 打开浏览器,进入到浏览器的网络设置中,将局域网 ...

  8. swift NSURLSession 使用方法

    //NSURLSession /*创建一个session ->创建一个task -> 启动task -> 处理回调 */ //http://www.douban.com/j/app/ ...

  9. iOS隐藏导航条1px的底部横线

    第二种方法:1)声明UIImageView变量,存储底部横线 @implementation MyViewController { UIImageView *navBarHairlineImageVi ...

  10. .NET基础 (10)流和序列化

    流和序列化1 什么是流,.NET中有哪些常见的流2 如何使用压缩流3 Serializable特性有何作用4 .NET提供了哪几种可进行序列化操作的类型5 如何自定义序列化和反序列化的过程 流和序列化 ...