• Stars
    star
    1,382
  • Rank 32,858 (Top 0.7 %)
  • Language
  • Created almost 4 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Rad

rad,全名 Radium,名字来源于放射性元素——镭, 从一个URL开始,辐射到一整个站点空间

一款专为安全扫描而生的浏览器爬虫

下载地址

https://github.com/chaitin/rad/releases

快速使用

在使用之前,请务必阅读并同意 Disclaimer文件中的条款,否则请勿安装使用本工具。

本工具需要提前装好新版本的 chrome,否则将无法使用

  1. 基本使用

    rad -t http://example.com
    
  2. 需要手动登录的情况

    rad -t http://example.com -wait-login
    

执行以上命令会自动禁用无头浏览模式,开启一个浏览器供手动登录。 在登录完毕后在命令行界面点击回车键继续爬取。

  1. 将爬取基本结果导出为文件

    rad -t http://example.com -text-output result.txt
    

以上命令会将爬取到的URL输出到result.txt中 格式为 Method URL 例:GET http://example.com

  1. 导出完整请求

    rad -t http://example.com -full-text-output result.txt
    
  2. 导出完整请求为JSON

    rad -t http://example.com -json result.json
    
  3. 与xray联动

    • 社区版:设置上级代理为xray监听地址 运行xray:

      xray webscan --listen 127.0.0.1:7777 --html-output proxy.html
      

      运行rad:

      rad -t http://example.com -http-proxy 127.0.0.1:7777
      
    • 高级版对 rad 进行了深度融合,下载后可以一键使用:

      xray webscan --browser-crawler http://example.com --html-output vuln.html
      

参数配置

rad首次运行后会自动在当前目录生成rad_config.yml配置文件

exec_path: ""                     # 启动chrome的路径
disable_headless: false           # 禁用无头模式
force_sandbox: false              # 强制开启sandbox;为 false 时默认开启沙箱,但在容器中会关闭沙箱。为true时强制启用沙箱,可能导致在docker中无法使用。
enable_image: false               # 启用图片显示
parent_path_detect: true          # 是否启用父目录探测功能
proxy: ""                         # 代理配置
user_agent: ""                    # 请求user-agent配置
domain_headers:                   # 请求头配置:[]{domain,map[headerKey]HeaderValue}
  - domain: '*'                   # 为哪些域名设置header,glob语法
    headers: {                    # 请求头,map[key]value
      Cookie: somecookie
    }                    
max_depth: 10                     # 最大页面深度限制
navigate_timeout_second: 10       # 访问超时时间,单位秒
load_timeout_second: 10           # 加载超时时间,单位秒
retry: 0                          # 页面访问失败后的重试次数
page_analyze_timeout_second: 300  # 页面分析超时时间,单位秒
max_interactive: 1000             # 单个页面最大交互次数
max_interactive_depth: 10         # 页面交互深度限制
max_page_concurrent: 10           # 最大页面并发(不大于10)
max_page_visit: 1000              # 总共允许访问的页面数量
max_page_visit_per_site: 1000     # 每个站点最多访问的页面数量
element_filter_strength: 0        # 过滤同站点相似元素强度,1-7取值,强度逐步增大,为0时不进行跨页面元素过滤
new_task_filter_config: # 检查某个链接是否应该被加入爬取队列
  hostname_allowed: [ ]            # 允许访问的 Hostname,支持格式如 t.com、*.t.com、1.1.1.1、1.1.1.1/24、1.1-4.1.1-8
  hostname_disallowed: [ ]         # 不允许访问的 Hostname,支持格式如 t.com、*.t.com、1.1.1.1、1.1.1.1/24、1.1-4.1.1-8
  port_allowed: [ ]                # 允许访问的端口, 支持的格式如: 80、80-85
  port_disallowed: [ ]             # 不允许访问的端口, 支持的格式如: 80、80-85
  path_allowed: [ ]                # 允许访问的路径,支持的格式如: test、*test*
  path_disallowed: [ ]             # 不允许访问的路径, 支持的格式如: test、*test*
  query_key_allowed: [ ]           # 允许访问的 Query Key,支持的格式如: test、*test*
  query_key_disallowed: [ ]        # 不允许访问的 Query Key, 支持的格式如: test、*test*
  fragment_allowed: [ ]            # 允许访问的 Fragment, 支持的格式如: test、*test*
  fragment_disallowed: [ ]         # 不允许访问的 Fragment, 支持的格式如: test、*test*
  post_key_allowed: [ ]            # 允许访问的 Post Body 中的参数, 支持的格式如: test、*test*
  post_key_disallowed: [ ]         # 不允许访问的 Post Body 中的参数, 支持的格式如: test、*test*
request_send_filter_config: # 检查某个请求是否应该被发送
  hostname_allowed: [ ]            # 允许访问的 Hostname,支持格式如 t.com、*.t.com、1.1.1.1、1.1.1.1/24、1.1-4.1.1-8
  hostname_disallowed: [ ]         # 不允许访问的 Hostname,支持格式如 t.com、*.t.com、1.1.1.1、1.1.1.1/24、1.1-4.1.1-8
  port_allowed: [ ]                # 允许访问的端口, 支持的格式如: 80、80-85
  port_disallowed: [ ]             # 不允许访问的端口, 支持的格式如: 80、80-85
  path_allowed: [ ]                # 允许访问的路径,支持的格式如: test、*test*
  path_disallowed: [ ]             # 不允许访问的路径, 支持的格式如: test、*test*
  query_key_allowed: [ ]           # 允许访问的 Query Key,支持的格式如: test、*test*
  query_key_disallowed: [ ]        # 不允许访问的 Query Key, 支持的格式如: test、*test*
  fragment_allowed: [ ]            # 允许访问的 Fragment, 支持的格式如: test、*test*
  fragment_disallowed: [ ]         # 不允许访问的 Fragment, 支持的格式如: test、*test*
  post_key_allowed: [ ]            # 允许访问的 Post Body 中的参数, 支持的格式如: test、*test*
  post_key_disallowed: [ ]         # 不允许访问的 Post Body 中的参数, 支持的格式如: test、*test*
request_output_filter_config: # 检查某个请求是否应该被输出
  hostname_allowed: [ ]            # 允许访问的 Hostname,支持格式如 t.com、*.t.com、1.1.1.1、1.1.1.1/24、1.1-4.1.1-8
  hostname_disallowed: [ ]         # 不允许访问的 Hostname,支持格式如 t.com、*.t.com、1.1.1.1、1.1.1.1/24、1.1-4.1.1-8
  port_allowed: [ ]                # 允许访问的端口, 支持的格式如: 80、80-85
  port_disallowed: [ ]             # 不允许访问的端口, 支持的格式如: 80、80-85
  path_allowed: [ ]                # 允许访问的路径,支持的格式如: test、*test*
  path_disallowed: [ ]             # 不允许访问的路径, 支持的格式如: test、*test*
  query_key_allowed: [ ]           # 允许访问的 Query Key,支持的格式如: test、*test*
  query_key_disallowed: [ ]        # 不允许访问的 Query Key, 支持的格式如: test、*test*
  fragment_allowed: [ ]            # 允许访问的 Fragment, 支持的格式如: test、*test*
  fragment_disallowed: [ ]         # 不允许访问的 Fragment, 支持的格式如: test、*test*
  post_key_allowed: [ ]            # 允许访问的 Post Body 中的参数, 支持的格式如: test、*test*
  post_key_disallowed: [ ]         # 不允许访问的 Post Body 中的参数, 支持的格式如: test、*test*

讨论

如有问题可以在 GitHub 提 issue, 也可在下方的讨论组里

  1. GitHub issue: https://github.com/chaitin/xray/issues
  2. QQ 群: 717365081
  3. 微信群: 扫描以下二维码加我的个人微信,会把大家拉到 xray 官方微信群

More Repositories

1

xray

一款完善的安全评估工具,支持常见 web 安全问题扫描和自定义 poc | 使用之前务必先阅读文档
Vue
9,727
star
2

SafeLine

一款足够简单、足够好用、足够强的免费 WAF。基于业界领先的语义引擎检测技术,作为反向代理接入,保护你的网站不受黑客攻击。 A free WAF that is sufficiently simple, effective, and powerful. Utilizing industry-leading semantic engine detection technology, it operates as a reverse proxy to protect your website from hacker attacks.
C++
8,603
star
3

passionfruit

[WIP] Crappy iOS app analyzer
Vue
1,657
star
4

veinmind-tools

veinmind-tools 是由长亭科技自研,基于 veinmind-sdk 打造的容器安全工具集
Go
1,470
star
5

xpoc

为供应链漏洞扫描设计的快速应急响应工具 [快速应急] [漏洞扫描] [端口扫描] [xray2.0进行时] A fast emergency response tool designed for supply chain vulnerability scanning.
855
star
6

cloudwalker

CloudWalker Platform
Go
664
star
7

blazehttp

可用于安全测试的非标准HTTP协议解析库
Go
358
star
8

sqlchop

[DEPRECATED]A novel SQL injection detection engine built on top of SQL tokenizing and syntax analysis.
249
star
9

strapdown-zeta

Instant and elegant Markdown documents in the browser, Git powered markdown wiki server, mathjax and theme support, and many more features!
JavaScript
166
star
10

collie

牧云社区版
TypeScript
128
star
11

libveinmind

一个由长亭自研,直观而可扩展的容器安全 SDK
Go
115
star
12

Real-World-CTF-6th-Challenges

attachments and (some) writeups/source code for RWCTF 6th
100
star
13

pro

A crappy tool used in our private PS4 jailbreak
Python
99
star
14

xtools

JavaScript
92
star
15

yanshi

A regular language recognizer generater like Ragel, enhanced with features to approximate context-free grammars and substring grammars
C++
90
star
16

Real-World-CTF-3rd-Challenge-Attachments

Challenge attachments for RWCTF 3rd.
90
star
17

safeline-open-platform

Lua
87
star
18

log4j2-vaccine

log4j2-vaccine
Java
85
star
19

django-pg-partitioning

A Django extension that supports PostgreSQL 11 time ranges and list partitioning.
Python
77
star
20

mimicry

Mimicry is a dynamic deception tool that actively deceives an attacker during exploitation and post-exploitation.
Dockerfile
55
star
21

Real-World-CTF-5th-Challenges

attachments and (some) writeups/source code for RWCTF 5th
Python
52
star
22

lua-resty-t1k

Lua implementation of the T1K protocol for Chaitin/SafeLine WAF
Perl
45
star
23

Real-World-CTF-3rd-Forum-Attachments

attachments for forum of RealWorld CTF 3rd
C
40
star
24

sqlchop-http-proxy

SQLChop reverse http proxy module
JavaScript
32
star
25

Real-World-CTF-4th-Challenge-Attachments

26
star
26

Real-World-CTF-2019-Quals-Attachment

23
star
27

systracer

SysTracer: Linux 系统活动跟踪器
Go
22
star
28

gamma

16
star
29

xray_document

HTML
15
star
30

duty.html

A single page for daily duty assignment
HTML
12
star
31

querystring

Parse and stringify URL query strings
TypeScript
12
star
32

veinmind-action

基于 veinmind-tools 实现的 Github Action
Dockerfile
8
star
33

collie-app-cli

本地使用 Collie 应用或开发 Collie 应用的 CLI 工具
Rust
7
star
34

telewriter

Another jQuery typing animation script.
JavaScript
7
star
35

veinmind-jenkins

Groovy
3
star
36

veinmind-common-go

Go
2
star
37

browserslist-config-monster

JavaScript
2
star
38

veinmind-orb

1
star
39

xray-docs

MDX
1
star