xray常用命令,漏洞扫描时使用的代理(http proxy)和上游代理(mitm upstream_proxy)的实战应用
字数 776
更新时间 2025-08-13 23:33:44
Xray代理配置与漏洞扫描实战指南
一、Xray基础命令
1. 常用扫描命令
完整扫描命令(加载所有POC和插件):
xray.exe webscan --listen 127.0.0.1:7777 --html-output xray-testphp.html --poc pocs/* --plugin phantasm,baseline,brute-force,cmd-injection,crlf-injection,dirscan,fastjson,jsonp,path-traversal,redirect,shiro,sqldet,ssrf,struts,thinkphp,upload,xss,xxe
针对性扫描命令(仅启用特定插件):
xray --config /home/usual/hack/xray/config.yaml webscan --url-file /home/usual/hack/url4.txt --plugin shiro,fastjson,struts,thinkphp,phantasm --html-output /home/usual/hack/output/HW.html
二、代理配置详解
1. 漏洞扫描代理配置
在config.yaml文件中配置漏洞扫描使用的代理:
http:
proxy: "http://username:password@146.137.9.45:65233" # HTTP代理
# 或
proxy: "https://username:password@146.137.9.45:65233" # HTTPS代理
# 或
proxy: "socks5://username:password@146.137.9.45:65233" # SOCKS5代理
特点:
- 影响所有漏洞扫描发出的请求
- 适用于需要隐藏扫描源IP或通过特定网络出口扫描的场景
2. 上游代理(upstream_proxy)配置
mitm:
upstream_proxy: "http://username:password@1.2.3.4:65233"
特点:
- 仅影响MITM(中间人)代理本身的流量
- 不影响漏洞扫描发出的请求
- 适用于浏览器与Web应用正常交互的流量
三、实战代理配置方案
方案一:统一代理
http:
proxy: "http://username:password@146.137.9.45:65233" # 漏洞扫描和正常流量都走代理池
mitm:
upstream_proxy: ""
适用场景:
- 简单扫描任务
- 不担心IP被封禁的情况
- 代理池IP充足且更换频繁
风险:
- 一旦扫描IP被封禁,浏览器也无法访问目标站点
方案二:仅上游代理
http:
proxy: "" # 漏洞扫描直连
mitm:
upstream_proxy: "http://username:password@1.2.3.4:65233" # 浏览器流量走固定代理
适用场景:
- 需要保持浏览器访问稳定
- 扫描行为较为温和,不太可能触发封禁
- 目标站点对扫描行为不敏感
方案三:分离代理(推荐)
http:
proxy: "http://username:password@146.137.9.45:65233" # 漏洞扫描走代理池
mitm:
upstream_proxy: "http://username:password@1.2.3.4:65233" # 浏览器流量走固定代理
优势:
- 扫描流量使用可更换的代理池IP
- 浏览器交互使用稳定的固定代理
- 即使扫描IP被封禁,也不影响正常访问
- 更接近真实用户行为模式
四、最佳实践建议
-
生产环境推荐使用方案三,分离扫描流量和正常交互流量
-
代理池选择:
- 扫描用代理池应具备IP自动更换功能
- 建议更换频率不低于30秒/次
- 代理池规模建议至少50个以上IP
-
浏览器代理选择:
- 使用高匿名、稳定的代理
- 建议选择地理位置接近目标的代理
- 保持会话一致性
-
安全考虑:
- 避免在敏感时间段使用激进扫描策略
- 监控代理IP的可用性
- 准备备用代理方案
-
性能优化:
- 根据代理性能调整并发线程数
- 监控代理延迟,及时剔除低效节点
- 对关键目标使用高质量代理
通过合理配置Xray的代理设置,可以显著提高渗透测试的隐蔽性和成功率,同时降低被防御系统检测和封禁的风险。
相似文章
相似文章