nmap的理解与利用(初级)
在命令窗口下输入命令等待,可以用回车来查看进度
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的理解与利用(初级)的更多相关文章
- 教你如何利用初级C#语言更改银行存款!!!!
您是否对生活现状不满意? 您是否总是感叹工资太少? 您是否经常发现自己相中的物品又降价了然而自己却还是只能望洋兴叹? 没关系!让我来拯救你的钱包! 接下来进入正题: 要想更改自己的银行存款首先得找到一 ...
- [HMLY]14.对iOS开发中使用MVVM的理解和使用(初级)
前言 MVVMDemo 之前几个月一直在学习react-native,它的组件化开发真的是很棒,控件和页面的组件化在开发中可以很好的复用,节省开发时间.在那个时候还不知道react-native开发用 ...
- Nmap参考指南(Man Page)
Table of Contents 描述 译注 选项概要 目标说明 主机发现 端口扫描基础 端口扫描技术 端口说明和扫描顺序 服务和版本探测 操作系统探测 时间和性能 防火墙/IDS躲避和哄骗 输出 ...
- Nmap渗透测试使用方法
Nmap渗透测试使用方法 目标选择2 端口选择2 操作系统和服务检测2 Nmap输出格式2 用NSE脚本深入挖掘2 HTTP服务信息3 检测SSL漏洞问题的主机3 设备扫描3 按VNC扫描5 按SMB ...
- nmap中文手册
译注该Nmap参考指南中文版由Fei Yang <fyang1024@gmail.com>和Lei Li<lilei_721@6611.org> 从英文版本翻译而来. 我们希望 ...
- Nmap参考指南中文版
Nmap参考指南中文版 来源: http://www.nmap.com.cn/doc/manual.shtm 译注 该Nmap参考指南中文版由Fei Yang <fyang1024@gmail. ...
- Nmap 操作手册 - 完整版
目录 Nmap - 基础篇 Nmap 安装 RedHat Windows Debina & Ubuntu Others Linux Nmap 参数(简单版) 目标说明 主机发现 扫描技术 端口 ...
- C#高级编程笔记 Delegate 的粗浅理解 2016年9月 13日
Delegate [重中之重] 委托 定义一:(参考)http://www.cnblogs.com/zhangchenliang/archive/2012/09/19/2694430.html 完全可 ...
- SQL Server 利用锁提示优化Row_number()-程序员需知
网站中一些老页面仍采用Row_number类似的开窗函数进行分页处理,此时如果遭遇挖坟帖的情形可能就需要漫长的等待且消耗巨大.这里给大家介绍根据Row_number()特性采用特定锁Hint提升查询速 ...
随机推荐
- react第四单元(ref与DOM-findDomNode-unmountComponentAtNode)
第四单元(ref与DOM-findDomNode-unmountComponentAtNode) #课程目标 理解react的框架使用中,真实dom存在的意义. 使用真实dom和使用虚拟dom的场景. ...
- ThreadLocal使用总结
一.ThreadLocal基本使用 1.1使用场景 不同的线程对全局变量进行修改,使用ThreadLocal后会为每个线程创建一个副本,而不会影响其他线程的副本,确保了线程的安全 private st ...
- 百测学习之postman-接口测试
一.postman的请求 1.url与uri的区别 url与uri的区别 http://doc.nnzhp.cn/ http+host(域名)+path路径(uri) 2.g ...
- 记badusb制作
很早之前就听说过这个很牛批的小神器,配合社会工程学渗透简直无敌.. 参考的文章是 GCOW团队 j0 师傅的,文章写的非常详细 ,一步步来就行 https://blog.csdn.net/qq_260 ...
- Redis史上最全文章教程
Redis 2020 史上最详细Redis教程 本篇文章并不讲解Redis,只是收集 Redis的优质文章教程 ,文章包含三部分: 理论.编程实战 .面试题. 需要有一定编程功底的人学习 ,如果基础不 ...
- Centos7.6上利用docker搭建Jenkins来自动化部署Django项目
一般情况下,将一个项目部署到生产环境的流程如下: 需求分析-原型设计-开发代码-内网部署-提交测试-确认上线-备份数据-外网更新-最终测试,如果发现外网部署的代码有异常,需要及时回滚. 整个过程相当复 ...
- flowable中传入审批人是list
package org.springblade.flow.engine.listener; import org.flowable.engine.delegate.DelegateExecution; ...
- 你说一下Redis为什么快吧,怎么实现高可用,还有持久化怎么做的?
前言 作为Java程序员,在面试过程中,缓存相关的问题是躲不掉的,肯定会问,例如缓存一致性问题,缓存雪崩.击穿.穿透等.说到缓存,那肯定少不了Redis,我在面试的时候也是被问了很多关于Redis相关 ...
- SpringBoot默认首页配置
@Configuration public class DefaultView extends WebMvcConfigurerAdapter { @Override public void addV ...
- android 百度地图 团队开发及正式apk发布
百度地图开发关键是获取正确的API Key, 百度官网写的只是在你本地的机器能运行 你把AndroidManifest.xml(这里是最新的v2_4_1,API Key配置在这里) svn 提交后 ...