Nmap

dirsearch

下载地址: https://github.com/maurosoria/dirsearch

进入下载解压后的目录中,打开cmd,运行安装脚本

pip3 install -r requirements.txt
python setup.py install

其中,db 文件夹为自带字典文件夹;reports 为扫描日志文件夹;dirsearch.py 为主程序文件;

常用命令参数

注意:在做扫描时太快会扫不出来

格式: python dirsearch.py 参数

常用参数列表:

-c:指定cookie扫描

dirsearch -u http://127.0.0.1-c "user=Mo60;"

-e:指定需要扫描的文件名 例如:-e php 如果不知道即所有 -e *

dirsearch -u http://127.0.0.1 -e php
# dirsearch默认只会替换字典中%EXT%为指定的extensions 如-e php Wishlist.%EXT%-->Wishlist.php

-s:每一秒扫描一次

dirsearch -u http://127.0.0.1 -s 1

-t:指定线程数(默认为10)(如果扫不出来就把线程弄的越低越好0.5也可以)

dirsearch -u http://127.0.0.1 -t 2

-w:指定自定义的字典文件路径

dirsearch -u http://127.0.0.1 -w /root/php.txt

-x:排除的响应状态码(以逗号分隔,支持指定范围) 如(-x 301,500-599)

-i:保留的响应状态码(以逗号分隔,支持指定范围) 如(-i 200,300-399)

--random-agents:使用随机ua头

dirsearch -u http://127.0.0.1 --random-agents

-r:递归扫描

dirsearch -u http://127.0.0.1 -r 3

输出参数:

-o FILE, --output=FILE:输出文件的文件地址

--format=FORMAT:Report format (Available: simple, plain, json, xml, md, csv, html) simple:简单输出文件,只找到路径 plain:纯文本输出文件,找到带有状态代码的路径

例如:python dirsearch.py -u http://192.168.56.101/pikachu -e php --format=simple -o D:\11.txt

其它参数参考: https://blog.csdn.net/qq_43936524/article/details/115271837

nmap

常用命令

扫描前10个常用端口

nmap 192.168.0.101 --top-ports 10

显示开放的端口

namp 192.168.0.101 --open

显示原因(为什么端口关闭/开放)

nmap 192.168.0.101 --reason

-e :指定网卡

nmap 192.168.0.101 -e eth0

-n :关闭dns反向域名解析

nmap 192.168.0.101 -n

多个ip地址扫描

# 方式一
nmap 192.168.0.101,192.168.0.102,192.168.0.103
# 方拾二
nmap 192.168.0.101-103
# 方式三
nmap -iL ip地址.txt

不扫描指定ip地址

nmap 多个IP地址 --exclude IP地址,…..
nmap 多个IP地址 --excludeflie ip地址.txt

-p :扫描指定端口

nmap IP地址 -p 22,88,45,…… --其他参数
nmap IP地址 -p 22-100,48,…… --其他参数
nmap IP地址 -p 【扫描全部端口 0~65535】

--exclude-ports :设置扫描要排除的端口

Nmap的6种端口状态:

Open 开放状态
Closed 关闭状态
Filtered 过滤状态(可能被过滤,可能网络阻塞)
Unfiltered 未被过滤状态(可以访问,但未知端口处于开放还是关闭状态
Open|Filtered 开放还是过滤的
Closed|Filtered 不能确定端口事关闭还是被过滤的

-sV: 探测开启的端口来获取服务、版本信息

-A:一次扫描包含系统探测、版本探测、脚本扫描和跟踪扫描

-O(大写):检测目标操作系统,尝试识别远程操作系统

-iL:扫描文件里的IP ## nmap -iL ip.txt

-v 详细输出扫描情况.

扫描模式介绍

主机扫描

-sP:ping扫描

Ping扫描只进行ping,然后显示出在线的主机。使用该选项扫描,可以轻易获取目标信息而不会被轻易发现。在默认情况下,Nmap会发行一个ICMP回声请求和一个TCP报文到目标端口。

Ping扫描的优点是不会返回太多的信息,且是一种非常高效的扫描方式判断局域网中存活的主机。

-P0(零):无ping扫描

无Ping扫描通常用于防火墙禁止Ping的情况下,它能确定正在运行的机器。

默认情况下,Nmap只对正在运行的主机进行高强度的探测,如端口扫描、版本探测或操作系统探测。用P0会使Nmap对每一个指定的的目标IP进行所要求的扫描,这可以穿透防火墙,也可以避免被防火墙发现。

-sn:ping扫描,即主机发现,不进行端口扫描

端口扫描

-sS :使用SYN半开式扫描,执行速度快,不容易被记录进系统日志,默认是TCP syn。

-sU :UDP扫描,不可靠,寻找目标主机打开的UDP端口.不需要发送任何的SYN包,是针对UDP端口的。

-sT默认的tcp扫描,会在目标主机中被记录大量连接请求和错误信息,容易被察觉。

-Pn :将主机默认为在线,跳过主机发现。PN命令绕过ping扫描,直接扫描端口。

wfuzz

安装:pip3 install wfuzz

mac 下安装:安装一直运行报错,就用 docker 版凑合着使用。

# 下载镜像
docker pull ghcr.io/xmendez/wfuzz
# 运行
docker run -v /Users/bluefox/safetools/mywordlist/:/wordlist/ -it --rm ghcr.io/xmendez/wfuzz wfuzz -w ./wordlist/top3000.txt --hc 404 http://192.168.31.211:48882/FUZZ
# 运行命令解析
# docker run -v /Users/bluefox/safetools/mywordlist/:/wordlist/ -it --rm ghcr.io/xmendez/wfuzz  :根据镜像运行一个容器,-v参数映射字典目录,--rm参数则是容器退出后随之将其删除
# wfuzz -w ./wordlist/top3000.txt --hc 404 http://192.168.31.211:48882/FUZZ :这里就是正常运行的wfuzz命令

docker 版 wfuzz 虽然可以用,但是命令较长,可以取个别名。