# DNS 信息收集

使用 host 命令可以搜索 IP 地址

还有一些其他的参数

当然,以下是一个简单的表格,列出了 host 命令的使用和各种参数:

用途命令示例
查询主机名对应的 IP 地址host example.com
查询 IP 地址对应的主机名host 192.168.1.1
指定查询的 DNS 服务器host example.com dns_server_ip
查询指定类型的记录(如 MX 记录、NS 记录等)host -t mx example.com
指定查询的协议类型(如 IPv4 或 IPv6)host -4 example.com<br>host -6 example.com
显示更详细的信息host -v example.com
设置超时时间host -W 2 example.com
查询指定区域的记录host -l example.com nameserver

可以通过编写 bash 脚本,使用 host 爆破子域。

或者通过 IP 端,尝试枚举出资产。

DNS 区域传输,通过 -l 参数,向 nameserver 查找 DNS 列表

还可以使用 dnsrecon 工具进行自动化收集: dnsrecon -d gddfeng.com -t axfr

dnsrecon 命令中, -t axfr 参数表示执行 DNS 区域传送(Zone Transfer)的操作。Zone Transfer 是一种 DNS 查询类型,允许将完整的 DNS 区域信息从主 DNS 服务器传送到辅助 DNS 服务器。

以下是 dnsrecon 命令的一些常用参数以及其含义:

参数含义
-d domain指定目标域名
-t axfr执行 DNS 区域传送操作
-n nameserver指定要查询的 DNS 服务器(默认为目标域名的 NS 记录)
-D wordlist使用指定的字典文件进行子域名爆破
-o output将结果输出到指定文件
-T threshold设置超时阈值(单位:秒)
-f强制执行操作,忽略一些警告信息
-h显示帮助信息

当使用 dnsrecon 命令时, -t 参数除了 axfr 外,还有其他一些常用的参数。以下是 dnsrecon -t 参数的其他选项及其含义:

参数含义
axfr执行 DNS 区域传送操作
std执行标准 DNS 查询操作(默认选项)
rvl执行反向 DNS 查询操作,根据 IP 地址查找域名
brt执行域名爆破操作,查找子域名
rvlv执行反向 DNS 查询操作,并尝试验证找到的域名是否可解析
srv查询给定域名的服务记录(SRV records)
ptr查询 IP 地址的反向解析
axfr执行 DNS 区域传送操作

dnsenum 也是一个枚举工具,更加的傻瓜式。

# 端口扫描

他这里例子是用 nc 进行扫描的: nc -nvv -w 1 -z 10.11.1.220 3388-3390 , 扫了 3380-3390 端口。 -w 是超时时间。 -z 是监听模式,没有 I/O。

使用 UDP 扫描: nc -nv -u -z -w 1 x.x.x.x 160-162 , 多了个 - u 参数

然后讲了使用 nmap,默认扫描大概产生 6K 流量,全端口扫描可能要 4M 还要多

讲了 SYN\TCP\UDP 扫描模式的区别

TCP 和 UDP 可以组合使用

扫描常用端口的时候,可能发送的是相关协议的请求,以得到回应。

-sn 参数可以用来探测主机存活,使用了包括 icmp 的多种方式。同时发送 tcp 的 syn 请求到 443,ack 请求到 80,验证主机是否存活。

-oG 指定存户到某个文件

--open 只显示端口打开的 IP

存储之后可以通过前面的流编辑器进行提取,如: grep Up ping-sweep.txt | cut -d " " -f 2 | head ,就提出来存活的主机了。

--top-ports X ,指定 X 个最常用端口

-sV 扫描的版本号可能是被管理员修改过了,也可能是假的喔~

NSC 脚本存在 /usr/share/nmap/scripts 中,要熟悉一下这些脚本。 --script-help 可以帮助了解脚本

masscan 是个高并发的工具,需要 sudo 权限执行,没有在 kali 预装。工具很凶悍 ==、

# SMB 枚举

SMB 协议是什么不多 BB

除了 nmap 可以扫以外,还可以用 nbtscan 比 nmap 要快一些, -r 参数通过 137 端口获取 smb 信息

nmap 还有一些 smb 的脚本,在 /usr/share/nmap/scripts/smb*

常用的 smb-os* 通过 smb 扫描 OS, smb-vuln-* 扫描 smb 漏洞

# NFS 枚举

分散式文件协议,很不安全,能进行攻击、提权等操作。

使用 nmap 脚本 rpcinfo 进行定向的扫描,获取 rpc 信息

同样的有一些 NFS 的脚本 /usr/share/nmap/scripts/nfs*

获取到信息后可以尝试进行挂载,挂载的时候可能需要带上参数 -o nolock 来禁止文件锁定,不然可能会出现问题。

当挂载后,我们可能仍然没有权限对挂载后的目录进行操作,但是可以通过查看文件目录的权限,找到所有的这 uid,然后创建一个具有相同 uid 的账号进行访问,就能绕过这个限制!adduser 之后直接修改 passwd 里面的 uid 就可以。

# SMTP 枚举

可以使用 nc、telnet 等方式连接 25 端口发送命令,进行交互

枚举就是枚举,没什么可以讲的,很多脚本和方式都可以进行枚举。

# SNMP 枚举

SNMP 各种问题,没有加密可以被截获、身份校验方式弱,经常是弱口令 ==、

他讲了检测方式,我觉得还是用 snmp-check 比较好 ==、