长亭 Xray Web 漏洞扫描器

长亭 Xray Web 漏洞扫描器

长亭 Xray Web 漏洞扫描器

适用对象:安全研究人员、渗透测试工程师、开发人员、网络安全爱好者
前置知识:了解基本的 HTTP 协议、Web 安全概念(如 SQL 注入、XSS)
法律声明:本教程仅用于授权的安全测试、本地靶场练习或自有系统自查。未经授权扫描他人系统是违法行为。

文章目录

Xray 简介与核心优势

Xray 是由国内顶尖安全团队 长亭科技 开源的一款高性能 Web 漏洞扫描器。
它从企业级产品“洞鉴”中提取核心能力,免费提供给社区使用。

🔑 核心特点
双模驱动: 支持 主动扫描(爬虫+检测)和 被动扫描(代理流量分析)。
超低误报: 采用语义分析技术,特别是在 XSS 和 SQL 注入检测上,误报率远低于传统工具。
无危害验证: 内置 Payload 均为无害化验证(Proof of Concept),只证明漏洞存在,不利用漏洞破坏数据。
高度可扩展: 支持用户编写 YAML 格式的自定义 POC,快速响应 0day 漏洞。
跨平台免安装: 基于 Go 语言开发,提供 Windows/Linux/macOS 二进制文件,解压即用。

🎯 检测范围
覆盖 OWASP Top 10 及常见 CMS 漏洞:
SQL 注入、XSS(跨站脚本)、命令/代码注入
SSRF(服务端请求伪造)、XXE(XML 外部实体注入)
目录枚举、路径穿越、文件包含
弱口令、未授权访问、组件版本漏洞

环境准备与安装

2.1 下载
访问官方 GitHub 仓库下载最新版本:
👉 https://github.com/chaitin/xray/releases

Windows: 下载 xray_windows_amd64.zip
Linux: 下载 xray_linux_amd64.zip
macOS: 下载 xray_macos_amd64.zip (M1/M2 芯片请选 arm64)

2.2 安装步骤
Xray 无需安装,解压即可运行。

Windows
1.解压压缩包。
2.双击xray_windows_amd64.exe或在 CMD/PowerShell 中运行。
3.(可选) 生成 HTTPS 证书以支持扫描加密流量:

 .xray_windows_amd64.exe genca 

按提示将生成的 ca.crt 导入到浏览器和操作系统的“受信任的根证书颁发机构”。

Linux / macOS
1.解压并赋予执行权限:

unzip xray_linux_amd64.zip chmod +x xray 

2.(可选) 生成 HTTPS 证书:

./xray genca 

ca.crt 导入系统信任库(如 Ubuntu: sudo cp ca.crt /usr/local/share/ca-certificates/ 然后 sudo update-ca-certificates)。

核心工作模式详解

Xray 主要有三种使用场景,对应不同的命令模式:

模式描述适用场景优点
被动扫描 (webscan --listen)作为 HTTP 代理,监听端口,分析经过的流量。配合浏览器手动测试、Burp Suite 联动、爬虫工具。最常用。不漏掉复杂逻辑漏洞,误报极低,不影响业务。
主动扫描 (webscan --url)内置简易爬虫,自动爬取目标并检测。快速摸底、资产普查、简单站点检测。速度快,一键操作,无需人工干预。
爬虫独立模式 (radium)仅运行爬虫,将链接输出给其他工具。需要定制化处理爬虫结果的场景。灵活,可对接自定义检测引擎。

实战演示:命令大全

⚠️ 注意:以下演示请在本地靶场(如 DVWA, Pikacha, Vulhub)或已授权的环境中进行。

场景一:被动扫描(推荐入门)
目标:
拦截浏览器流量,实时检测漏洞。
步骤:
1.启动 Xray 监听本地 7777 端口,并指定输出报告文件名。
2.配置浏览器代理为 127.0.0.1:7777。
3.正常浏览网站,Xray 会自动分析。

💻 命令演示

# Windows .xray_windows_amd64.exe webscan --listen127.0.0.1:7777 --html-output report_passive.html # Linux / macOS ./xray webscan --listen127.0.0.1:7777 --html-output report_passive.html 
  • –listen: 指定监听地址和端口。
  • –html-output: 扫描结束后生成可视化的 HTML 报告。
  • 操作:启动后,打开浏览器访问 http://your-target.com,随意点击页面、提交表单。扫描完成后,在文件夹中找到 report_passive.html查看结果。

场景二:主动扫描(快速摸底)

目标: 对指定 URL 进行全自动爬虫和漏洞检测。
适用: 已知入口点,希望快速发现表面漏洞。

💻 命令演示

# 基础扫描:扫描单个 URL ./xray webscan --url http://testphp.vulnweb.com/ --html-output report_active.html # 进阶扫描:指定插件模块(只扫 SQL 注入和 XSS,加快速度) ./xray webscan --url http://testphp.vulnweb.com/ --plugins sqldet,xss --html-output report_fast.html # 深度扫描:增加爬虫深度(默认较浅,可调大) ./xray webscan --url http://testphp.vulnweb.com/ --max-depth 5 --html-output report_deep.html 
  • –url: 指定目标起始网址。
  • –plugins: 指定只运行某些检测插件(逗号分隔),如 sqldet (SQL注入), xss, cmd-injection 等。不填则默认全开。
  • –max-depth: 控制爬虫爬取的深度,防止无限爬取。

场景三:与 Burp Suite 联动(专家模式)
目标:
利用 Burp 强大的抓包改包能力,结合 Xray 的自动化检测能力。
原理: 浏览器 -> Burp (Proxy) -> Xray (Proxy) -> 目标服务器。

💻 命令演示
1.启动 Xray(监听 7777):

./xray webscan --listen127.0.0.1:7777 --html-output report_burp.html 

2.配置 Burp Suite:
打开 Burp -> Proxy -> Options (或 Proxy Settings)。
找到 Upstream Proxy Servers (上游代理)。
添加规则:匹配所有主机 (.*),指向 127.0.0.1:7777

在这里插入图片描述

3.配置浏览器:
浏览器代理指向 Burp (通常是 127.0.0.1:8080)。
4.开始测试:

  • 在 Burp 中修改数据包并发送(Repeater/Intruder),或者让 Burp 自动爬虫。
  • 流量会经过 Xray 检测,结果实时记录在 report_burp.html 中。

场景四:指定配置文件与高级参数
Xray 的强大在于其 config.yaml 配置文件,可以精细控制扫描行为。

💻 命令演示

# 使用自定义配置文件 ./xray webscan --url http://target.com --config my_config.yaml --html-output result.html # 只输出 JSON 格式结果(便于对接 CI/CD 或自动化平台) ./xray webscan --url http://target.com --json-output result.json # 限制扫描速率,防止把目标扫挂 (QPS 限制) ./xray webscan --url http://target.com --rate-limit 10 --html-output safe_report.html 

高级技巧:自定义 POC 与联动

5.1 编写自定义 POC
当爆发新漏洞(如 Log4j2, Fastjson 新变种)时,官方规则可能未及时更新,你可以自己写。
Xray 使用 YAML 格式编写 POC。

示例:检测一个简单的回显型命令注入
创建文件 my_poc.yaml

name: poc-yaml-custom-cmd-injection rules:method: GET path: /ping?ip=127.0.0.1;whoami expression: response.body.bcontains(b"root") || response.body.bcontains(b"user") detail:author: your_name description: 自定义命令注入检测 

运行命令加载自定义 POC:

./xray webscan --url http://target.com --plugins my_poc.yaml --html-output custom_report.html # 或者将 poc 放入 plugins 目录,默认会自动加载

5.2 搭配 Radium (长亭开源爬虫)
如果 Xray 自带的爬虫不够强,可以先用 Radium 爬取所有链接,再喂给 Xray。

# 使用 Radium 爬取链接并保存 ./radium --url http://target.com --output links.txt # 使用 Xray 批量扫描这些链接 (需配合脚本或 xray 的 stdin 模式)cat links.txt |xargs-I{} ./xray webscan --url{} --html-output batch_{}.html 

报告解读与误报处理

扫描完成后,打开生成的 .html 报告:

1.概览: 查看漏洞总数、风险等级分布(高/中/低/提示)。
2.详情: 点击具体漏洞,查看:

  • 漏洞类型: 如 SQL Injection (Blind)。
  • 请求包 (Request): Xray 发送的探测Payload。
  • 响应包 (Response): 服务器的返回,重点看高亮部分,这是判断漏洞是否成立的依据。

3.误报处理:

  • 如果确认是误报,可在配置文件的blacklist中添加特征,或在自定义 POC 中优化表达式。
  • 常见误报原因:WAF 拦截返回特定页面、动态内容随机变化。

常见问题 FAQ

Q1: 扫描 HTTPS 网站报错或没反应?
A:
必须生成并信任 Xray 的 CA 证书。运行 ./xray genca,然后将生成的 ca.crt 导入操作系统和浏览器的“受信任的根证书颁发机构”。

Q2: 扫描速度太慢怎么办?
A:

  1. 使用 --plugins 参数只开启需要的检测模块。
  2. 如果是内网,检查网络延迟。
  3. 调整 --rate-limit参数(适当调大,但别把目标扫崩)。

Q3: 为什么有些明显的漏洞扫不出来?
A:

  1. 漏洞位于深层逻辑,需要特定参数或登录状态(建议使用被动扫描,人工登录后让流量经过 Xray)。
  2. 目标有 WAF 拦截了探测Payload。
  3. 这是一个逻辑漏洞,而非通用技术漏洞(通用扫描器很难检测逻辑漏洞)。

Q4: 可以在生产环境直接使用吗?
A: 谨慎!虽然 Xray 的 Payload 是无害的,但高并发扫描仍可能导致服务不稳定。务必先在测试环境验证,并在生产环境限制扫描速率(–rate-limit),最好避开业务高峰期。

箫哥寄语:工具只是辅助,核心在于人的思维。

Read more

2025年第27届中国机器人及人工智能大赛自主巡航实战经验分享

作为连续两届参加中国机器人及人工智能大赛并拿下国一的"老兵",我想跟大家分享一些在自主巡航项目中的实战经验。这个项目看起来简单,但真正做起来才发现里面有太多坑需要踩,希望我的一些经验能让你少走弯路。 一、项目实战理解 刚开始接触这个项目时,我和团队都以为主要难点在于算法的精巧设计。结果第一年比赛只拿了个国二,回来复盘才发现,比赛成败的关键不在于算法多高级,而在于系统的鲁棒性和稳定性。 场地中那些任务信息图像看似简单,但在不同光照、不同角度下识别难度差异很大。记得去年决赛时,有支985高校的队伍用了很牛的深度学习算法,结果在现场因为光照问题,识别率直接掉到40%以下,连基本的任务点都没完成。 核心任务拆解: * 语音识别与播报(10分) * 三次任务点识别与到达(60分) * 终点到达(10分) * 技术文档(10分) 首先要确保60分的基础分稳稳拿到,才有机会冲击更高分数。 二、软件架构实战经验 ROS框架设计 第一年我们用了单体架构,所有功能都堆在一个节点里,结果调试和找bug特别痛苦。第二年重构为多节点设计: 这种模块化设计好处太多了: 1. 团

海尔智能家居完整接入方案:HomeAssistant一站式管理终极指南

海尔智能家居完整接入方案:HomeAssistant一站式管理终极指南 【免费下载链接】haier 项目地址: https://gitcode.com/gh_mirrors/ha/haier 想要实现全屋智能设备的统一控制,却苦于不同品牌设备间的兼容性问题?海尔智能家居插件为您提供了完美的解决方案,让所有海尔设备都能无缝融入HomeAssistant生态,打造真正的智能生活体验。 快速部署全流程 HACS便捷安装路径 推荐理由:操作简单、自动更新、社区支持完善 执行步骤: 1. 进入HACS集成界面 2. 搜索关键词"海尔"或"haier" 3. 点击安装按钮并重启系统 手动配置详细步骤 核心操作: 1. 获取插件压缩包并解压文件 2. 将 custom_components/haier 目录完整复制到HomeAssistant的 custom_components 文件夹

Z-Image-Turbo vs Stable Diffusion实战对比:生成速度提升300%?

Z-Image-Turbo vs Stable Diffusion实战对比:生成速度提升300%? 还在为AI画图漫长的等待时间而烦恼吗?每次输入一段描述,看着进度条缓慢爬行,是不是感觉创作的热情都被消磨殆尽了?今天,我们就来实测两款热门的开源文生图模型:Z-Image-Turbo 和 Stable Diffusion,看看在速度、质量和易用性上,谁才是你的“生产力加速器”。 Z-Image-Turbo是阿里巴巴通义实验室开源的高效AI图像生成模型,作为Z-Image的蒸馏版本,它主打一个“快”字——号称仅需8步推理即可出图,同时对消费级显卡(如16GB显存)非常友好。而Stable Diffusion作为行业的奠基者,以其丰富的生态和强大的可控性著称。纸上谈兵不如实战演练,本文将带你从零开始,在同一个环境中部署并对比这两款模型,用真实的数据告诉你,速度提升是否真的能达到300%,以及我们为此需要付出什么。 1. 环境准备与模型部署 为了公平对比,我们将在同一台配备RTX 4090(24GB显存)的服务器上,通过ZEEKLOG星图镜像分别部署两个模型的WebUI服务。这样能最

Qwen3-ASR-1.7B多场景落地:博物馆AR导览语音→实时转写→关联文物知识图谱推送

Qwen3-ASR-1.7B多场景落地:博物馆AR导览语音→实时转写→关联文物知识图谱推送 想象一下,你走进一座宏伟的博物馆,面对一件精美的青铜器,心中充满好奇。你戴上AR眼镜,对着它轻声问:“这件文物是什么年代的?有什么故事?”几秒钟后,眼镜屏幕上不仅出现了详细的文字介绍,还推送了与之相关的其他展品、历史背景视频,甚至推荐了展厅里下一件值得看的文物。 这背后,正是语音识别技术从“听懂”到“理解”,再到“智能关联”的完美演绎。今天,我们就来聊聊如何利用Qwen3-ASR-1.7B这款高精度语音识别模型,打造一个从语音导览到知识推送的智能博物馆解决方案。 1. 为什么是Qwen3-ASR-1.7B? 在博物馆这种开放、嘈杂且充满回声的环境里,对语音识别的要求非常苛刻。游客可能来自天南海北,带着各种口音;背景里可能有其他游客的交谈声、孩子的跑动声、甚至展品多媒体播放的声音。传统的语音识别方案在这里常常“水土不服”。 Qwen3-ASR-1.7B就像是专门为这种复杂场景定制的“耳朵”。它有几个硬核优势,让它特别适合博物馆: * 听得准:1.