xray简介

xray (https://github.com/chaitin/xray) 是从长亭洞鉴核心引擎中提取出的社区版漏洞扫描神器,支持主动、被动多种扫描方式,自备盲打平台、可以灵活定义 POC,功能丰富,调用简单,支持 Windows / macOS / Linux 多种操作系统,可以满足广大安全从业者的自动化 Web 漏洞探测需求。

特色

使用 go 语言编写,跨平台、纯异步、无阻塞,并发能力强,扫描速度刚刚的

提供多种使用方式,调用姿势方便,输入输出非常标准化,极具可集成性

使用 YAML 配置文件非常方便地定义 POC,可以快速扩展扫描能力

全程使用无害 POC 进行探测,在确保能发现漏洞的基础上不会给业务带来严重影响,非常适用于企业内部安全建设

命令行式的免费被动扫描工具,不多见

自备盲打平台,可检测需要反连才能触发的漏洞,如:存储型 XSS、无回显的 SSRF、XXE、命令注入等

更新速度快,用着不爽可以在 github 提需求,很快就能解决(我试过了,是真的)

适用人群

白帽子。挖 SRC 必备,打开浏览器挂上代理,然后上网冲浪等漏洞就对了,还不够的话就把代理给你爸妈、给你妹子、给你家猫都挂上

甲方安全建设者。工具在手,天下我有,细粒度配置,高精度扫描,可作为定期巡检、常规扫描的辅助神器

乙方工具开发者。在编写渗透框架或者漏洞扫描框架时,作为扫描探针进行集成,简直是大平台中的小尖刀

快速使用

扫描一个站点

最简单的方式是直接调用,扫描一个指定的站点,如:

./xray webscan --basic-crawler http://example.com/

这可能是最简单最常用的一个功能,就是太长了,体验不太友好,建议常用的同学可以

alias xray="/path/xray webscan --basic-crawler"

指定扫描输出

不指定输出时,默认输出到控制台的标准输出中,可以做管道处理,也可以选择输出为文件,如:

./xray webscan --url http://example.com/ --json-output report.json

不同参数对应不同的输出方式:

无参数:输出到控制台的标准输出

--`text-output`:输出到文本文件中

--`json-output`:输出到 JSON 文件中

--`html-output`:输出到 HTML 文件中

基于代理的被动扫描

xray 可以通过类似 Burp 的方式启动,利用 HTTP 代理来抓包扫描,如:

./xray webscan --listen 127.0.0.1:7777

如果运行没报任何错就可以设置浏览器 HTTP 代理为 127.0.0.1:7777 了,关于如何设置浏览器代理,请打开百度搜索 “浏览器设置代理”。

代理设置 OK 以后就可以启动代理扫描了,这时候我们打来浏览器尽情冲浪吧,理论上我们的鼠标点到哪 xray 就能扫到哪。

需要注意一下的是,很多时候还会扫到 HTTPS 站点,可能会因为有代理而导致无法访问,或者需要手动确认安全风险。这时候需要我们导入 xray 运行目录下的ca.crt证书,关于如何导入 CA 证书,请打开百度搜索 “安装CA证书”。

➜ ls

ca.crt ca.key config.yaml xray

高级姿势

指定扫描插件

使用 --plugins 参数可以选择仅启用部分扫描插件,多个插件之间可使用逗号分隔,如:

./xray webscan --plugins cmd_injection --url http://example.com/

目前提供的插件列表如下:

SQL 注入检测 (key: sqldet):支持报错注入、布尔注入和时间盲注等

XSS 检测(key: xss):支持扫描反射型、存储型 XSS

命令/代码注入检测 (key: cmd_injection):支持 shell 命令注入、PHP 代码执行、模板注入等

目录枚举 (key: dirscan):检测备份文件、临时文件、debug 页面、配置文件等10余类敏感路径和文件

路径穿越检测 (key: path_traversal):支持常见平台和编码

XML 实体注入检测 (key: xxe):支持有回显和反连平台检测

POC 管理 (key: phantasm):默认内置部分常用的 POC,用户可以根据需要自行构建 POC 并运行。可参考:POC 编写文档(https://chaitin.github.io/xray/#/guide/poc)

文件上传检测 (key: upload):支持检测常见的后端服务器语言的上传漏洞

弱口令检测 (key: brute_force):支持检测 HTTP 基础认证和简易表单弱口令,内置常见用户名和密码字典

JSONP 检测 (key: jsonp):检测包含敏感信息可以被跨域读取的 jsonp 接口

SSRF 检测 (key: ssrf):ssrf 检测模块,支持常见的绕过技术和反连平台检测

基线检查 (key: baseline):检测低 SSL 版本、缺失的或错误添加的 http 头等

任意跳转检测 (key: redirect):支持 HTML meta 跳转、30x 跳转等

CRLF 注入 (key: crlf_injection):检测 HTTP 头注入,支持 query、body 等位置的参数

只扫描一个 URL

xray 还提供了方便的只扫描一个 URL 的方式,如:

./xray webscan --url http://example.com/ --json-output out.json

配置文件

xray 还提供了友好配置文件,可以方便地将常用的命令行参数写到配置文件中,避免了每次都要输入一大串参数的痛苦。

xray 默认会读取运行目录下的 config.yaml 文件作为配置危机,也可以使用 —config 参数指定其他配置文件。

反连平台

xray 在运行时会自动启动反连平台来辅助盲打扫描,可以在配置文件中修改反连平台的配置。目前支持 http 和 dns 两种反连机制,当服务端触发 payload 时 xray 会根据反连平台的状态判断漏洞是否存在。

dns 反连需要启用 root 权限监听 53 端口,并且将域名的 ns 记录指向反连平台的监听地址

自定义 POC

xray 支持用户使用 YAML 编写 POC。YAML 是 JSON 的超集,也就是说我们甚至可以用 JSON 编写 POC,但这里还是建议大家使用 YAML 来编写,原因如下:

YAML 格式的 “值” 无需使用双引号包裹,特殊字符无需转义

YAML 格式使内容更加可读

YAML 中可以使用注释

我们可以编写以下的 yaml 来测试 tomcat put 上传任意文件漏洞:

name: poc-yaml-tomcat_put

rules:

- method: PUT

path: /hello.jsp

body: world

- method: GET

path: /hello.jsp

search: world

将 POC 保存到 YAML 文件后使用 --poc参数可以方便地调用,如:

./xray webscan --plugins phantasm --poc /home/test/poc.yaml --url http://example.com/

关于 xray

xray 是个公益性项目,不走商业化路线,旨在分析我们的研究成果,吸收社区大佬的经验,虚心接受批评和指责,无限制、不收费,也欢迎企业用户包装使用,希望大家支持。

xray 被动_长亭xray:一款自动化Web漏洞扫描神器(免费社区版)相关推荐

  1. 一款功能强大的Web漏洞扫描和验证工具(Vulmap)

    一款功能强大的Web漏洞扫描和验证工具(Vulmap) 文章目录 一款功能强大的Web漏洞扫描和验证工具(Vulmap) 前言 一.Vulmap 二.工具安装 三.工具选项 四.工具使用样例 五.支持 ...

  2. arachni web mysql数据库_开源Web漏洞扫描工具–Arachni(转载)

    作者:{SJW}@ArkTeam Arachni是一个开源的,全面的.模块化的Web漏洞扫描框架,它能够帮助渗透人员和网络管理人员测试Web应用的安全性. 一.功能介绍 Arachni能适用于多平台和 ...

  3. python web框架哪个好_盘点:9款流行Web框架及其优缺点

    对于Web开发人员来说,找到一些合适的工具,能让工作轻松许多.这其中,Web框架更是提升工作效率的"利器".但因为可选的Web框架非常多,如何选择也是一件令人头疼的事情. 本文列出 ...

  4. 十九款web漏洞扫描工具

    1. Arachni Arachni是一款基于Ruby框架搭建的高性能安全扫描程序,适用于现代Web应用程序.可用于Mac.Windows及Linux系统的可移植二进制文件. Arachni不仅能对基 ...

  5. 几款Linux系统漏洞扫描、评估工具简介

    一.Nmap Nmap 是一种常用工具,可用于判定网络的布局.我们可以在网络上使用 Nmap 来查找主机系统以及打开这些系统的端口. 1. 安装Nmap. [root@GeekDevOps ~]# y ...

  6. ​​​​​​​自动化批量漏洞扫描脚本定制

    github上找到一款并发框架[POC-T](https://github.com/Xyntax/POC-T)可以优美的进行并发操作,上面所述的内容大多可以用插件联合POC-T进行. 因为POC-T不 ...

  7. 发现一款容器逃逸漏洞利用神器!

    有在关注容器逃逸漏洞,最近在github上发现了一款零依赖Docker/K8s渗透工具包,集成了多个漏洞PoC/EXP,可轻松逃脱容器并接管K8s集群. CDK- 零依赖Docker/K8s渗透工具包 ...

  8. web漏洞扫描工具_如何使用Arachni扫描web漏洞

    一.工具介绍 是一个多功能.模块化.高性能的Ruby框架,旨在帮助渗透测试人员和管理员评估Web应用程序的安全性.同时Arachni开源免费,可安装在Windows.Linux以及Mac系统上,并且可 ...

  9. 绿盟漏扫使用手册_【技术干货】Oracle数据库漏洞扫描指南

    阅读: 1,449 在使用漏洞扫描产品对Oracle数据库进行漏洞扫描的时候,需要区分使用的扫描方式,否则可能对后续的修复加固工作带来一系列的困扰.一般来讲,Oracle数据库扫描分为远程扫描和登录扫 ...

最新文章

  1. oracle命令导入表
  2. Storm集群安装部署步骤【详细版】
  3. MySQL Cluster集群配置方案
  4. 通过mongodb客户端samus代码研究解决问题
  5. 微信开放平台,微信登陆第三方网站 提示redirect_uri 参数错误
  6. android滑动菜单图标,Android实现简单底部导航栏 Android仿微信滑动切换效果
  7. 关于python 和C++使用cv画矩形并填充颜色同时填充文字
  8. 链接随机html,通过Javascript/HTML生成随机链接
  9. Django 模板系统
  10. JS中prototype、__proto__以及原型链
  11. 你需要简单了解JVM中的内存长什么样子
  12. 计算机无法安装蓝牙驱动,win10蓝牙驱动装不了怎么办_win10电脑蓝牙驱动无法安装处理方法-win7之家...
  13. APICloud开源O2O商城源码
  14. 学云计算能干什么_电大是干什么的?属于什么教育?
  15. C语言———指针(1.3间接寻址运算符)
  16. 安卓生成keystore文件
  17. 抖音小店无货源,如何找到适合自己店铺的达人,精选联盟玩法分享
  18. 搭积木java,Jimu:像搭积木一样DIY原生Android App
  19. 启英泰伦三代离线语音AI芯片及AIoT芯片介绍
  20. Powermill汽车件模具五轴数控CNC编程视频教程

热门文章

  1. AI - 深度学习之美十四章-概念摘要(8~14)
  2. 关键词 - SEO中最重要的项目
  3. 【Hibernate】Hibrenate POJO 类在序列化时遇到的问题
  4. Python学习笔记(六)
  5. 交互设计新人的核心竞争力
  6. 解決yum [Errno -1] Metadata file does not match checksum
  7. リアルタイム3Dニャンニャン 汉化补丁
  8. IE/Firefox中css兼容常见问题
  9. 在CentOS上用yum安装redis
  10. Oracle架构入门级基础