在命令窗口下输入命令等待,可以用回车来查看进度

nmap进行探测之前要把域名通过dns服务器解析为ip地址,我们也可以使用指定的dns服务器进行解析。

nmap --dns-servers 主机地址 需要扫描的目标地址

对于已经知道主机存活或者防火墙开启,可以使用-Pn参数来停止探测之前的icmp的请求。已达到触不到防火墙安全机制

nmap -Pn www.baidu.com

nmap列举远程机器开放端口

对于默认端口范围,并不能满足日常工作需要。可以使用-p m-n 来指定探测端口范围为m到n之间的所有端口可以在具体某个范围用

端口状态

open、close不解释了,主要是filtered是过滤状态

nmap扫描技术查看

nmap -h查看帮助信息

主要帮助里的SCAN TECHNIQUES

服务指纹

为了确保有一个成功的渗透测试或网络设备监控,需要我们知道目标系统中服务信息指纹。服务指纹信息包含服务端口、服务名和版本等。

通过分析目标往nmap发送的数据包中的某些协议标记、选项和数据,我们可以推断这些数据包的操作系统。

nmap通过向目标主机发送多个udp和tcp数据包并分析响应来进行系统指纹工作。

nmap识别服务指纹

nmap -sV IP地址来自目标机器的服务信息

就用虚拟机的kali吧。。。。当实验吧。。

真的很慢。。。

通过扫描知道我用的是vmware,竟然还有个漏洞端口,445可以通过端口溢出进行攻击

nmap侵略性探测

nmap -A -v -T4 IP地址

-A表示使用侵略的方式,嗯。。可以理解为英文单词attack其中包括操做系统识别,端口服务、指纹识别等

-v表示持续输出返回的解析的详略程度。

-T4是加速(数字范围是1到5)

可以扫到目标机器的开机时间,MAC地址,系统版本等。。。

nmap -sC -sV -O(是o不是0) IP地址

sC参数表示使用nmap脚本进行探测,sV表示探测目标机器上的服务信息,O表示探测目标机器的操作系统

主机发现

局域网有许多设备,如何获取开机状态

1.ping

2.使用工具批量探测

明白CIDR含义:

无类别域间路由,(class inter-domain routing)可以快速地表示一个网络

举例:

172.16.1.1/24 表示172.16.1.1到172.16.1.255之间的所有ip地址

nmap主机发现

nmap -sP CIDR

对该网络的所有主机进行ping扫描,以探测主机存活性。扫描中用了tcp syn扫描、icmp echo request 来探测主机存活。

也可以使用

nmap -sn CIDR

对该网络中的所有主机进行ping扫描,以探测主机的存活性。

nmap主机发现输出结果

nmap -sn CIDR -oX 文件名.xml

对该网络中的所有主机进行ping扫描,以探测主机的存活性。同时结果以文件名.xml输出,以便后记使用

ps:注意路径

端口探测技巧

nmap -p80 目标

把网站解析成IP地址,厉害。我们也可以看到状态是开放的

多个端口以逗号隔开

范围端口

nmap -p1-100 目标地址

所有端口

nmap -p- 目标地址

指定协议探测端口

nmap -p T:端口,U:端口 目标地址

通过协议名来扫描端口

nmap -p 协议名字 目标地址

这个牛逼

通过名称范围扫描

nmap -p s* 目标地址

这里的s*值得是所有以s开头的协议

扫描百度会有许多过滤

扫描注册在nmap中的端口

nmap -p [1-65535] 目标地址

NSE介绍

nse就是nmap script engine )nmap脚本引擎,内置很多可以用来扫描的、针对特定任务的脚本。通过nse可以不断地拓展nmap的扫描策略,加强nmap的功能

nse使用

使用nmap探测web服务的title信息。

nmap --script http-title 目标主机

nmap --script http-headers 目标主机

可以获得目标的使用版本信息等

nse分类使用

对于目标使用多个分类脚本进行探测,可以更快的找到目标信息和弱点

nmap -sV --script vuln 目标

不展示。。

使用下面的命令可以发现版本信息分类进行探测

nmap -sV --script="version,discovery" 目标

使用nmap可以进行筛选扫描检测

nmap -sV --script="not exploit" 目标

还有更详细的。。

要使用http*的脚本,除了http-brute和http-slowers

nmap -sV --script "(http*) and not (http-slowlors and http-brute)" 目标

nse调试功能的使用

使用nmap中的exploit,但是在与此同时开启调试模式。

nmap -sV --script ecploit -d 3 --script-trace 目标

-d(debug范围0到9)

--script-trace可以随时看到扫描过程

nse参数的使用

使用nmap的http-title脚本,并且指定使用对应的user-agent

nmap -sV --script http-title --script-args http.useragent="mozilla 999" 目标

此代码使用可以突破某些网站的限制设备登陆

nse更新

nmap --script-updatedb

nse脚本分类

在nmap的script的目录下。

或者官网https://nmap.org/nsedoc/

有具体解释和内容,不过得翻墙,我进不去。。

nmap指定特定网卡进行探测

使用场景

这种功能需要网卡支持混杂模式,或者当计算机上有两张卡,并且两张卡对应不同的网络

指定网卡进行探测

nmap -e 网卡信息 CIDR

切换使用特定网卡进行探测的参数 -e

kali中操作

ndiff

对之前的数据参数进行二次比较,减少了人工的比较,节省大量时间

上我们最爱的百度翻译

用法:ndiff[option]FILE1 FILE2

比较两个Nmap XML文件并显示它们的差异列表。

不同之处包括主机状态更改、端口状态更改和

服务和操作系统检测。

-h、 --帮助显示此帮助

-v、 --verbose还显示未更改的主机和端口。

--文本格式的文本显示输出(默认)

--xml格式的xml显示输出

指定文件输出加侵略性查看

nmap -A -v -T4 目标地址 -oX 文件输出名.xml

然后对kali输入命令

service apache2 start

来打开阿帕奇服务

nmap上面的命令

然后用工具nidff

ndiff 文件 文件

首行加+表示第二个比较的文件的不同

-表示第一个文件的不同

之前开启服务,apache,所以会有不同。

可视化nmap的使用

使用zenmap

在配置中设置脚本,从而在可视化程序中快速指定配置进行扫描

也可以使用自带策略

ping scan来验证主机的存活性

等等等

window下网卡

通过命令ipconfig /all 与nmap irlist比较知道是哪些网卡名称从而进行探测。

不指定网卡,直接探测也可以,首先依次尝试这些网卡发送数据包,如果连通,才会继续探测,否则就换下一个网卡。直到网卡都被尝试后,才算结束。

nmap的理解与利用(初级)的更多相关文章

  1. 教你如何利用初级C#语言更改银行存款!!!!

    您是否对生活现状不满意? 您是否总是感叹工资太少? 您是否经常发现自己相中的物品又降价了然而自己却还是只能望洋兴叹? 没关系!让我来拯救你的钱包! 接下来进入正题: 要想更改自己的银行存款首先得找到一 ...

  2. [HMLY]14.对iOS开发中使用MVVM的理解和使用(初级)

    前言 MVVMDemo 之前几个月一直在学习react-native,它的组件化开发真的是很棒,控件和页面的组件化在开发中可以很好的复用,节省开发时间.在那个时候还不知道react-native开发用 ...

  3. Nmap参考指南(Man Page)

    Table of Contents 描述 译注 选项概要 目标说明 主机发现 端口扫描基础 端口扫描技术 端口说明和扫描顺序 服务和版本探测 操作系统探测 时间和性能 防火墙/IDS躲避和哄骗 输出 ...

  4. Nmap渗透测试使用方法

    Nmap渗透测试使用方法 目标选择2 端口选择2 操作系统和服务检测2 Nmap输出格式2 用NSE脚本深入挖掘2 HTTP服务信息3 检测SSL漏洞问题的主机3 设备扫描3 按VNC扫描5 按SMB ...

  5. nmap中文手册

    译注该Nmap参考指南中文版由Fei Yang <fyang1024@gmail.com>和Lei Li<lilei_721@6611.org> 从英文版本翻译而来. 我们希望 ...

  6. Nmap参考指南中文版

    Nmap参考指南中文版 来源: http://www.nmap.com.cn/doc/manual.shtm 译注 该Nmap参考指南中文版由Fei Yang <fyang1024@gmail. ...

  7. Nmap 操作手册 - 完整版

    目录 Nmap - 基础篇 Nmap 安装 RedHat Windows Debina & Ubuntu Others Linux Nmap 参数(简单版) 目标说明 主机发现 扫描技术 端口 ...

  8. C#高级编程笔记 Delegate 的粗浅理解 2016年9月 13日

    Delegate [重中之重] 委托 定义一:(参考)http://www.cnblogs.com/zhangchenliang/archive/2012/09/19/2694430.html 完全可 ...

  9. SQL Server 利用锁提示优化Row_number()-程序员需知

    网站中一些老页面仍采用Row_number类似的开窗函数进行分页处理,此时如果遭遇挖坟帖的情形可能就需要漫长的等待且消耗巨大.这里给大家介绍根据Row_number()特性采用特定锁Hint提升查询速 ...

随机推荐

  1. 多任务-python实现-迭代器相关(2.1.12)

    @ 目录 1.需求 2.斐波那契数列演示 3.并不是只有for循环能接收可迭代数据类型,list,tuple也可以 1.需求 类比 早上起来吃包子 1.买1年的包子,放在冰箱,每天拿一个 2.每天下楼 ...

  2. Python之word文档替换字符串(也可以用于短模板套用)

    Python之word文档替换字符串(也可以用于短模板套用),代码如下: 1 ''' 2 #word模板套用1:创建模板,适合比较短的文档 3 ''' 4 5 #导入所需库 6 from docx i ...

  3. Python 最简单的数字相乘

    风变编程第18关,快要结束了,捎带着复习了一下前面的基础.结果悲剧了. 打开题目是这样的: 比如我们想写一个根据圆的半径(R)来求面积(S)和周长(L)的代码,可以画出以下的流程图 抬眼一看,好简单的 ...

  4. 开发规范(一) 如何记录日志 By 阿里

  5. 发送微信通知 java

    //实现类@Service public class WeChatServiceImpl implements IWeChatService { @Override public WeChatSend ...

  6. [leetcode712]204. Count Primes寻找范围内的素数

    厄拉多塞筛选法,就是哈希表记录素数的倍数 public int countPrimes(int n) { /* 牛逼哄哄的厄拉多塞筛选法 就是从2开始,每找到一个素数,就把n以内的这个数的倍数排除 记 ...

  7. Hadoop集群安装配置

    一.准备工作 1.首先准备好七台虚拟机,并确保都已经安装配置好jdk. 2.Hadoop3.2.0+jdk1.8自行到官网下载 3.修改好相称的主机名,并在hosts文件中相互添加. ######注意 ...

  8. mysql事务_事务隔离级别详解

    使用事务语法 1. 开启事务start transaction,可以简写为 begin 2. 然后记录之后需要执行的一组sql 3. 提交commit 4. 如果所有的sql都执行成功,则提交,将sq ...

  9. Android——spinner控件实现读取xml资源,省、市两级互动

    (1)首先在res文件夹下面的values中创建一个省市arrays.xml文件夹,如下 <?xml version="1.0" encoding="utf-8&q ...

  10. Head First 设计模式 —— 00. 引子

    Head First 学习原则 P xxx 可视化:图片使得学习效率更高,更易懂 交谈式:第一人称交谈方式讲述学习内容更易引起注意 多思考:自主思考练习题和拓展知识的问题 保持注意力集中:将知识融合进 ...