69915574_p0_master1200
所以你只是心动过,并没有坚定的选择我对不对……

引言

准备挖SRC了,还是先准备一下工具吧。看了很多文章,发现一点,大家都有自己的渗透思路,我认为这也是很重要的一点,我也是尝试了建立自己渗透思路,有自己的方式。

Xray+burpsuite联动被动扫描

高级版Xray
在第一次运行后会生成一个配置文件,config.yaml
生成证书,可以进行https的扫描,

.\xray_windows_amd64.exe genca

在当前目录生成证书,
image-20210906103421237
导入浏览器(谷歌火狐均可,方法自行百度)

配置浏览器设置代理(可以使用插件,谷歌火狐都有代理插件)

image-20210906103005631
*gov.cn是必须要排除在外的,直接放包,不做测试。
然后就是burpsuite的一些配置

image-20210906103709211
前提是burp的浏览器代理是与刚设置的浏览器代理一样,我这里默认是8080,所以就补贴图了。
然后这些配置基本就算完了。就是开启xray进行手工点击进行扫描了

.\xray_windows_amd64.exe webscan --listen 127.0.0.1:7777 --html-output result.html

浏览器打开网站,我这里使用了DVWA的靶场来进行测试了
登陆进去之后,浏览器代理挂起来,开始点击,burp那边一直放包。
最后生成xray生成result.html漏洞报告。

image-20210906104214988
很强的工具。
后期结合rad进行半自动化扫描

rad+xray+burp半自动化扫描

xray和burp的配置同上,只是需要在rad在进行一些配置,而且与上面的方法不同的是,burp使用了2021.8.2版本,有内置浏览器,这里使用他的内置浏览器进行。
rad配置文件在第一次运行后会生成。

exec_path: ""                     # 启动chrome的路径
disable_headless: false           # 禁用无头模式
force_sandbox: false              # 强制开启sandbox;为 false 时默认开启沙箱,但在容器中会关闭沙箱。为true时强制启用沙箱,可能导致在docker中无法使用。
enable_image: false               # 启用图片显示
parent_path_detect: true          # 是否启用父目录探测功能
proxy: "http://127.0.0.1:7777"                         # 代理配置
user_agent: ""                    # 请求user-agent配置
domain_headers:                   # 请求头配置:[]{domain,map[headerKey]HeaderValue}
- domain: '*'                     # 为哪些域名设置header,glob语法
  headers: {}                     # 请求头,map[key]value
max_depth: 2                     # 最大页面深度限制
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*

可以的话,还能设置一下User-Agent和Cookie,在domain 模块下的headers中添加

user_agent: ""                    # 请求user-agent配置
- domain: '*'                     # 为哪些域名设置header,glob语法
  headers: {'Cookie': 'PHPSESSID=uudasdfafaf324324;security=low'}                     # 请求头,map[key]value

使用方法

.\rad_windows_amd64.exe --config=xxx.yml -u 目标url

然后跑完Xray也可以扫到漏洞并生成报告了。