小白日记14:kali渗透测试--NMAP

时间:2023-03-08 17:08:11
NAMP
被认为是最强大的扫描器
所有参数
root@kali:~# nmap
Nmap 7.01 ( https://nmap.org )
Usage: nmap [Scan Type(s)] [Options] {target specification}
TARGET SPECIFICATION: <strong> #目标发现</strong>
Can pass hostnames, IP addresses, networks, etc.
Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254 #例子
<strong> -iL <inputfilename>: Input from list of hosts/networks #指定IP地址列表
-iR <num hosts>: Choose random targets #随机选定目标 +<主机IP>
--exclude <host1[,host2][,host3],...>: Exclude hosts/networks #过滤某些IP,不对其进行扫描
--excludefile <exclude_file>: Exclude list from file #过滤整个文件中的ip,不对其进行扫描</strong>
HOST DISCOVERY:
<strong>-sL: List Scan - simply list targets to scan #列出要进行扫描的的IP
-sn: Ping Scan - disable port scan #不做端口扫描
-Pn: Treat all hosts as online -- skip host discovery <span style="color:#ff0000;"> #防止防火墙拒绝扫描,继续后面的端口扫描</span>
-PS/PA/PU/PY[portlist]: TCP SYN/ACK, UDP or SCTP discovery to given ports
-PE/PP/PM: ICMP echo, timestamp, and netmask request discovery probes #PM适用于老系统
-PO[protocol list]: IP Protocol Ping
-n/-R: Never do DNS resolution/Always resolve [default: sometimes] #不做DNS解析/-R做反向解析
--dns-servers <serv1[,serv2],...>: Specify custom DNS servers #调用指定服务器
--system-dns: Use OS's DNS resolver #默认DNS,加不加没区别
--traceroute: Trace hop path to each host #路由路径</strong>
SCAN TECHNIQUES: #端口扫描
<strong>-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans #默认用sS(SYN),加-sT使用TCP扫描,结果准确 #-sM:ACK+FIN
-sU: UDP Scan
-sN/sF/sX: TCP Null, FIN, and Xmas scans #-sN:flags全为0;
--scanflags <flags>: Customize TCP scan flags #自定义flags 【8个flags】 需熟悉协议操作
-sI <zombie host[:probeport]>: Idle scan #僵尸扫描
-sY/sZ: SCTP INIT/COOKIE-ECHO scans #SCTP
-sO: IP protocol scan
-b <FTP relay host>: FTP bounce scan #针对FTP中继</strong>
PORT SPECIFICATION AND SCAN ORDER:
<strong>-p <port ranges>: Only scan specified ports #指定端口
Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
--exclude-ports <port ranges>: Exclude the specified ports from scanning #指定端口范围
-F: Fast mode - Scan fewer ports than the default scan #快速扫描,即默认的部分端口
-r: Scan ports consecutively - don't randomize #端口顺序连续扫描
--top-ports <number>: Scan <number> most common ports #扫默认1000端口中的指定数量个数
--port-ratio <ratio>: Scan ports more common than <ratio> #扫描更常用端口</strong>
SERVICE/VERSION DETECTION: #服务扫描
<strong>-sV: Probe open ports to determine service/version info #默认情况下,匹配结果可能不够准确 #该部分命令均加上-sV
--version-intensity <level>: Set from 0 (light) to 9 (try all probes) #扫描强度(0-9)
--version-light: Limit to most likely probes (intensity 2) #2级
--version-all: Try every single probe (intensity 9) #9级
--version-trace: Show detailed version scan activity (for debugging) #跟踪扫描过程</strong>
SCRIPT SCAN: #脚本扫描
-sC: equivalent to --script=default
--script=<Lua scripts>: <Lua scripts> is a comma separated list of
directories, script-files or script-categories
--script-args=<n1=v1,[n2=v2,...]>: provide arguments to scripts
--script-args-file=filename: provide NSE script args in a file
--script-trace: Show all data sent and received
--script-updatedb: Update the script database.
<strong><span style="color:#ff0000;"> --script-help=<Lua scripts>: Show help about scripts. #查询脚本作用
<Lua scripts> is a comma-separated list of script-files or
script-categories.</span></strong>
OS DETECTION: #系统
-O: Enable OS detection
--osscan-limit: Limit OS detection to promising targets
--osscan-guess: Guess OS more aggressively
TIMING AND PERFORMANCE: #时间设定
Options which take <time> are in seconds, or append 'ms' (milliseconds),
's' (seconds), 'm' (minutes), or 'h' (hours) to the value (e.g. 30m).
-T<0-5>: Set timing template (higher is faster)
--min-hostgroup/max-hostgroup <size>: Parallel host scan group sizes #最少一次扫多少主机
--min-parallelism/max-parallelism <numprobes>: Probe parallelization
--min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <time>: Specifies #来回访问时间
probe round trip time.
--max-retries <tries>: Caps number of port scan probe retransmissions. #最大探测次数
--host-timeout <time>: Give up on target after this long
--scan-delay/--max-scan-delay <time>: Adjust delay between probes <strong> #扫描延迟,将时间设大一点,避免被发现</strong>
--min-rate <number>: Send packets no slower than <number> per second
--max-rate <number>: Send packets no faster than <number> per second
<strong>FIREWALL/IDS EVASION AND SPOOFING: </strong> #防火墙和IDS的躲避或欺骗
-f; --mtu <val>: fragment packets (optionally w/given MTU) #最大传输单元
-D <decoy1,decoy2[,ME],...>: Cloak a scan with decoys #伪造源地址,增加噪声IP
-S <IP_Address>: Spoof source address #欺骗源地址,得不到回包 建议与-e一起使用
-e <iface>: Use specified interface #指定网卡
-g/--source-port <portnum>: Use given port number #指定源端口
--proxies <url1,[url2],...>: Relay connections through HTTP/SOCKS4 proxies <strong>#指定代理</strong>
--data <hex string>: Append a custom payload to sent packets #在包的数据字段加上内容(16进制数)
--data-string <string>: Append a custom ASCII string to sent packets #加ASCII码
--data-length <num>: Append random data to sent packets
--ip-options <options>: Send packets with specified ip options #加在IP包头
--ttl <val>: Set IP time-to-live field
--spoof-mac <mac address/prefix/vendor name>: Spoof your MAC address #欺骗mac地址
--badsum: Send packets with a bogus TCP/UDP/SCTP checksum #差错检验
OUTPUT:
-oN/-oX/-oS/-oG <file>: Output scan in normal, XML, s|<rIpt kIddi3, #选择输出格式
and Grepable format, respectively, to the given filename.
-oA <basename>: Output in the three major formats at once
-v: Increase verbosity level (use -vv or more for greater effect)
-d: Increase debugging level (use -dd or more for greater effect)
--reason: Display the reason a port is in a particular state
--open: Only show open (or possibly open) ports
--packet-trace: Show all packets sent and received
--iflist: Print host interfaces and routes (for debugging)
--append-output: Append to rather than clobber specified output files
--resume <filename>: Resume an aborted scan
--stylesheet <path/URL>: XSL stylesheet to transform XML output to HTML
--webxml: Reference stylesheet from Nmap.Org for more portable XML
--no-stylesheet: Prevent associating of XSL stylesheet w/XML output
MISC:
-6: Enable IPv6 scanning #IPv6
-A: Enable OS detection, version detection, script scanning, and traceroute #参数组合键
--datadir <dirname>: Specify custom Nmap data file location
--send-eth/--send-ip: Send using raw ethernet frames or IP packets
--privileged: Assume that the user is fully privileged
--unprivileged: Assume the user lacks raw socket privileges
-V: Print version number
-h: Print this help summary page.
EXAMPLES:
nmap -v -A scanme.nmap.org
nmap -v -sn 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -Pn -p 80
SEE THE MAN PAGE (https://nmap.org/book/man.html) FOR MORE OPTIONS AND EXAMPLES

man nmap:查看操作手册

Nmap脚本
查询脚本数量
root@kali:/usr/share/nmap/scripts# less script.db | wc -l
515

exploit:漏洞利用 vuln:漏洞识别

某漏洞脚本:smb-vuln-ms10-061.nse
Stuxnet蠕虫利用的4个漏洞之一;Print Spooler权限不当,打印请求可在系统目录可创建文件、执行任意代码;LANMAN API枚举共享打印机;探测远程共享打印机名称
若没发现共享打印机:smb-enum-shares枚举共享
身份认证参数——smbuser、smbpassword

nmap -p445 --script=smb-enum-shares.nse --script-args=smbuser=admin,smbpassword=pass 1.1.1.1  #判断目标机器是否有共享打印机

###先检测是否有共享打印机,再扫描是否存在漏洞###
#对象:Windows XP,Server 2003 SP2,Vista,Server 2008, win 7
小白日记,未完待续……