Xray-基础详细使用

news2024/10/7 8:30:04

一:Xray介绍

Xray 是一款功能强大的安全评估工具,由多名经验丰富的一线安全从业者呕心打造而成,可支持与AWVS,BP等众多安全工具联合使用。

二:Xray简易架构:

说明:了解 Xray 的整体架构可以更好的理解客户端和配置文件的设置,方便更好的使用。
第一部分:来源处理(输入)。扫描目标输入,包括指定单一URL,基础爬虫和HTTP代理手动输入
第二部分:漏洞检测(操作)。内置漏洞扫描插件,自定义POC等方式
第三部分:结果输出(输出)。扫描结果输出,支持Html,Json,Webhook格式输出

三:Xray安装

Xray为单文件二进制文件,无依赖,也无需安装,下载后直接使用,可直接参考如下链接安装使用:
Xray安装参考链接

三:基础使用

1,指定单个URL

参数:- - url

命令:./xray_darwin_arm64 webscan --url http://example.com/  --html-output single-url.html
说明:扫描指定的单个URL,扫描结果以html格式输出

扫描报告截图:
在这里插入图片描述

2,简易爬虫模式

参数:- - basic-crawler
说明:(在漏洞扫描前会先进行基础爬虫爬取页面,相比来源处理一单个URL,会先对提供的URL进行爬虫扫描,扫描链接更多,扫描也更全面)

命令:./xray_darwin_arm64 webscan --basic-crawler http://example.com/ --json-output  basic-crawler.json
说明:使用爬虫模式,先对指定的url进行爬虫,然后再进行扫描,结果以json格式的文件输出

注意:其中的爬虫深度可以设置,具体位置为配置文件config.yml中basic-crawler参数的max_depth,设置为0为无限制
在这里插入图片描述
扫描报告截图:
在这里插入图片描述

3,HTTP代理模式

参数:- - listen
HTTP代理扫描逻辑:
说明:代理模式下的基本架构为,扫描器作为中间人,首先原样转发流量,并返回服务器响应给浏览器等客户端,通讯两端都认为自己直接与对方对话,同时记录该流量,然后修改参数并重新发送请求进行扫描
1,Xray本地监听7778端口,用户通过浏览器代理将访问的流量转发给7778端口
2,Xray作为中间人扫描处理浏览器转发过来的流量,然后转发给服务端
3,服务端响应给Xray,Xray扫描处理响应包,Xray转发给用户
扫描配置:
1,Xray本地监听7778端口
命令:

./xray_darwin_arm64  webscan --listen 127.0.0.1:7778 --html-output xray-testphp1.html 
说明:Xray监听本地的7778端口,结果通过html格式输出,该模式的好吃就是通过人为手动点击需要扫描的URL,相比前面两种扫描方式,扫描准确度更好,更多适用于手工渗透测试场景

2,浏览器将访问Web流量转发给本机的7778端口:在这里插入图片描述
3,配置CA证书
在浏览器使用 https 协议通信的情况下,必须要得到客户端的信任,才能建立与客户端的通信。
这里的突破口就是 ca 证书。只要自定义的 ca 证书得到了客户端的信任,xray 就能用该 ca 证书签发各种伪造的服务器证书,从而获取到通信内容。
具体方法可参考官方文档:
配置CA证书
4,修改配置文件,启动代理
将需要代理扫描的URL填写在配置文件config.yml中的hostname_allowed字段中
在这里插入图片描述
5,扫描报告:
在这里插入图片描述

四:指定插件扫描

说明:Xray本身的工作原理就是通过调用插件进行漏洞探测的,有些场景下想针对某个URL进行某一类漏洞的探测
参数:- - pulgins

命令: ./xray_darwin_arm64  webscan --plugins xss --url http://example.com --html-output plugins.html
说明:针对该URL只进行xss漏洞的探测,探测结果以html格式输出

其中的–pulgins参数可指定的漏洞探测插件如下:在这里插入图片描述
扫描报告:
在这里插入图片描述

五:结果输出

说明:漏洞扫描和运行时的状态统称为结果输出,xray 定义了如下几种输出方式:
1,Stdout (屏幕输出, 默认开启)
2,JSON 文件输出
参数: --json-output result.json
3,HTML 报告输出
参数:–html-output result.html
4,Webhook输出
参数: --webhook-output

六:参考文档:

文章篇幅有限,仅做了Xray的基础使用,后续也会更新更高阶的用法,师傅们也可以直接查看官方文档。
Xray官方文档
Xray官方基础使用文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/717859.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python语法 变量、print、注释和运算符

文章目录 1. 变量1.1 变量名1.2 变量值1.3 查看变量类型 2. print2.1 常规使用2.2 格式化操作符 %2.2.1 格式化符号2.2.2 格式化操作符的辅助指令2.2.3 转义字符 2.2 .format() 3. 注释4. 算术运算符5. 逻辑运算符6. 按位操作符7. 比较运算符8. 复合赋值运算符5. 成员操作符 1.…

Spring 最全入门教程详解

目录 一、Spring Framwork简介1. Spring Framework五大功能模块2. Spring Framework特性 二、IOC容器1. IOC思想2. IOC容器在Spring中的实现3.基于xml管理Bean3.1 引入依赖3.2 创建类3.3 创建Spring的配置文件3.4 创建测试类3.5 总结 4.DI依赖注入4.1 setter注入4.2 构造器注入…

基于Java电脑配件销售系统设计实现(源码+lw+部署文档+讲解等)

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

Vue脚手架开发入门

Vue脚手架开发入门 安装脚手架及初始化项目 略过 后续使用的项目就是新搭建的一个项目 组件间的通信 父传子 查看《Vue初始化项目加载逻辑》这篇文章即可 父组件 子组件 子传父 场景:例如你的购物车,里面有很多商品,每个商品是一个…

PoseiSwap 治理通证POSE登录PancakeSwap,开盘涨幅超2100%

在 7 月 4 日,PoseiSwap 治理通证 $POSE 上线了 BNB Chain 上的头部 DEX PancakeSwap(POSE/ZBC 交易对),在 $POSE 开盘交易的 10 分钟内,其最高涨幅达到了 2169.22%,所有的早期投资者基本都从中获得了不菲的…

测试与产品的那些撕逼大战

产品与测试,本该是一对好兄弟,一个为产品质量负责,一个为产品质量服务。但往往事与愿违,经常出现产品与测试撕逼大战。 为需求而撕逼 测试:需求不明确,测试用例写不出来! 产品:你不…

合并回文子串(区间dp)

传送门 输入两个字符串A和B,合并成一个串C,属于A和B的字符在C中顺序保持不变。如"abc"和"xyz"可以被组合成"axbycz"或"abxcyz"等。 我们定义字符串的价值为其最长回文子串的长度(回文串表示从正反两…

Dlib —— 对视频流进行人脸识别(附C++源码)

照片效果 视频效果 注意:Dlib检测人脸在Release版耗时与CPU有关,本人I7 10代约100ms左右,这里本人将人脸检测用Yolov5对人脸简单抠图训练后 使用yolov5推理检测人脸,之后将检测到的人脸输入给Dlib做特征,发现人脸特征部分耗时也较…

androidx.appcompat.widget.SearchView怎么改搜索框提交按钮

searchView.isSubmitButtonEnabled true,运动后如下图: 怎么改搜索框提交按钮,按下图操作: 或者 打开SearchView进入看,一样 搜索框提交按钮改好了,如下图:

SparkSQL的数据结构DataFrame构建方式(Python语言)

SparkSQL 是Spark的一个模块, 用于处理海量结构化数据,其提供了两个操作SparkSQL的抽象,分别是DataFrame和DataSet,spark2.0之后,统一了DataSet和DataFrame,以后只有DataSet。 以Python、R语言开发Spark,使…

BurpSutie拓展插件推荐-原始模块增强插件

为方便您的阅读,可点击下方蓝色字体,进行跳转↓↓↓ 01 Logger(1)工具介绍(2)下载地址(3)使用说明 02 HAE(1)工具介绍(2)下载地址&…

【C语言static关键字】

C语言static关键字 C语言之static1、什么是static?2、static的意义3、C/C static的属性4、static的用法4.1、static修饰局部变量例程4.2、static修饰全局变量例程4.3、static修饰函数例程 5、结束语 C语言之static 前言: 先简单了解下“三大区”&#x…

数据人一直做这四项工作,即使不被BI、AI取代,也躲不过35危机!

先说我的观点:数据分析职业不会被BI软件替代。顺便说一句,数据分析职业也不会被chatgpt取代。 大家首先要搞清楚:取代人的从来不是工具,而是会使用工具的人。 数据分析师工作内容 首先,先让我们来全面拆解一下国内数…

聊聊极限编程与测试启发

这是鼎叔的第六十五篇原创文章。行业大牛和刚毕业的小白,都可以进来聊聊。 欢迎关注本公众号《敏捷测试转型》,星标收藏,大量原创思考文章陆续推出。 继续聊聊著名的敏捷研发框架:极限编程。 极限编程(Extreme Prog…

从腾讯、阿里、联想的ESG报告,看数字企业发展的「碳门槛」

从“互联网”到“数字化”,再到“ESG”。数字化不仅帮助企业打开了从传统到现代化的通路,也帮助企业打开了从无序到环保、通往低碳的大门。 作者|斗斗 编辑|皮爷 出品|产业家 一年一度的ESG报告披露正在来临。 腾讯发布2022年ESG(即“…

一天掌握latex论文编辑,从标题作者,段落,数学公式,图片,图表,到参考文献全流程

目录 以下是一个基于SCI模板的完整LaTeX论文示例,包含注释说明 1. 创建文档: 2. 标题和作者信息: 3. 段落和文本格式: 4. 列表: 5.图片和表格: 5.1插入图片 5.2 插入表格 5.2.1 示例1 :…

计算机组成原理基础复习题(无答案版)

本套题无答案,整理出来适合大家完成课堂学习后,边翻书边对照题目检索答案,加深印象。 目录 一、选择题 二、填空题 三、简答题 四、设计题 一、选择题 1、完整的计算机系统应包括( )。 A. 运算器、存储器和控制器…

【C#】医学检验系统(LIS)源码

一、医学检验系统(Laboratory Information Management System 简称:LIS)LIS是HIS系统的一个重要的组成部分,其主要功能是将检验的实验仪器传出的检验数据经分析后,生成检验报告,通过网络存储在数据库中&…

《操作系统》- 线程与进程

目录 一、进程的概念二、进程的结构和特征2.1 进程的结构2.2 进程的特征 三、线程的概念四、进程和线程比较五、线程的实现方式 一、进程的概念 程序放在磁盘上不叫做进程,只有运行起来之后才叫做进程,进程进程就是进行中的程序!一次运行就会…