发布于7小时前7小时 背景在已取得书面授权的内网渗透测试中,工具的价值不在于一次性跑出大量结果,而在于建立可复现、可审计的验证链路。本文以 Kali Linux 为操作端,覆盖资产发现、服务确认、漏洞模板验证、Windows 权限边界检查以及日志留存。测试前应明确目标网段、允许时段、速率上限、禁测资产和停止条件;以下命令中的 10.20.30.0/24 均为实验网段示例。工具安装与版本固定Kali 滚动更新较快,项目执行前应记录系统、工具和模板版本。优先使用官方仓库;Python 工具放入隔离环境,避免直接修改系统 Python。sudo apt update sudo apt install -y nmap nuclei impacket-scripts jq pipx mkdir -p ~/engagement/{raw,parsed,notes} cd ~/engagement { date -Is uname -a nmap --version | head -n 1 nuclei -version impacket-smbclient -h 2>&1 | head -n 1 } | tee notes/tool-versions.txt # 模板更新后记录版本;正式项目建议在测试周期内固定模板 nuclei -update-templates nuclei -tl | sha256sum | tee notes/nuclei-template-set.sha256不建议从不明网盘下载二进制工具。确需使用上游发布包时,应核对项目签名或 SHA-256,并在项目记录中保存下载地址、版本号和校验值。问题定位:先区分存活、开放端口与真实服务内网常见误判来自三个方面:ICMP 被过滤导致主机被认为离线;端口开放但后端是代理或蜜罐;扫描速率过高触发丢包。建议分阶段执行,并保留 XML 原始结果,不要只保存终端截图。cd ~/engagement # 第一阶段:低影响存活探测 sudo nmap -sn -PE -PS22,80,443,445,3389 \ --max-retries 1 --host-timeout 20s \ -oA raw/01-discovery 10.20.30.0/24 # 从 XML 提取确认存活的地址 xmlstarlet sel -t -m '//host[status/@state= 服务器、云资产与权限边界梳理示意 工具配置、参数调优与结果校验示意
6小时前6小时 这个流程里最容易被忽略的不是“扫到什么”,而是每一步能否和授权范围、日志证据、复测结果对应起来。建议先固定源地址、时间窗口和扫描速率,再执行工具,避免后面无法区分验证流量与真实告警。 Nmap 首轮可以只做存活与关键端口确认,随后再对命中主机定向识别服务,不建议一上来全端口加默认脚本: mkdir -p evidence/{nmap,nuclei,impacket} nmap -sn 10.10.20.0/24 -oA evidence/nmap/01-discovery nmap -sT -Pn -T3 --max-rate 300 \ -p 53,80,135,139,443,445,3389,5985,5986 \ -sV --version-light \ -oA evidence/nmap/02-services 10.10.20.0/24 这里使用 -sT 比 SYN 扫描更容易在主机和边界日志中形成完整连接记录,适合验证蓝队可见性。若必须全端口扫描,应拆分资产并明确限速,同时保存三种输出,后续用 XML 做差异复测。 Nuclei 建议锁定模板版本并只启用已审核模板,避免把带 fuzz、爆破或高侵入行为的模板混进验证: nuclei -l urls.txt \ -t ./reviewed-templates/ \ -severity medium,high,critical \ -rate-limit 20 -bulk-size 10 -concurrency 5 \ -jsonl-export evidence/nuclei/result.jsonl 报告中应同时记录模板 ID、模板提交版本、目标 URL、请求时间和原始响应摘要。仅凭状态码或标题不要直接定漏洞,尤其是管理端暴露、默认页和版本识别类结果,最好手工复核一次。 Impacket 部分要把“认证成功”和“远程执行成功”分开。前者优先用低影响方式确认 SMB 协议、签名与账号权限;远程执行只在授权明确且需要验证控制面的情况下进行。不要把口令直接写进 shell 历史,可使用 Kerberos 缓存或交互输入。例如先做协议侧检查: nmap -Pn -p445 --script smb-protocols,smb2-security-mode \ -oA evidence/nmap/03-smb-check 10.10.20.15 export KRB5CCNAME="$PWD/testuser.ccache" impacket-smbclient -k -no-pass 'CORP/[email protected]' 如果授权要求验证远程执行,建议使用专门测试账号、固定源 IP,并事先约定一个无副作用的标记命令,不落地持久化、不关闭防护、不清理日志。执行前后应重点核对 Windows 安全日志 4624/4625/4672/4688,服务方式执行还要关注 4697、系统日志 7045;WMI 路径则看 Microsoft-Windows-WMI-Activity/Operational。同时关联 Sysmon 的进程创建、网络连接和文件创建事件。 留痕不等于只保存终端截图。每次运行至少保留:原始命令、工具与模板版本、开始/结束时间、执行源 IP、目标清单、原始输出哈希以及对应 SIEM 查询结果: date -Is | tee evidence/start.txt nmap --version | head -n 1 | tee evidence/nmap-version.txt nuclei -version 2>&1 | tee evidence/nuclei-version.txt find evidence -type f -print0 | sort -z | xargs -0 sha256sum > evidence/SHA256SUMS 复测时不要简单重跑全部动作。先按漏洞根因设计最小验证:端口收敛就复扫对应端口,SMB 签名整改就复查 smb2-security-mode,Web 漏洞则固定同一模板版本并比对请求/响应。最后再从 SIEM 反查测试源 IP 和时间窗,确认“攻击面已关闭”和“检测链路仍有效”这两个结论都成立。
创建帐户或登录后发表意见