如何使用Rayder组织编排漏洞侦查和渗透测试工作流

关于Rayder

Rayder是一款针对漏洞网络侦查和渗透测试自动化工作流工具,该工具本质上是一个命令行工具,旨在帮助广大研究人员更轻松地组织、编排和执行漏洞侦查和渗透测试工作流。

Rayder允许我们在YAML文件中定义一系列功能模块,且每个模块都由要执行的命令所组成。Rayder可以帮助广大研究人员自动化复杂的流程,使重复的模块变得简单,并在命令不相互依赖的情况下并行执行。

工具要求

Go v1.16+

→点击获取网络安全资料·攻略←

200多本网络安全系列电子书
网络安全标准题库资料
项目源码
网络安全基础入门、Linux、web安全、攻防方面的视频
网络安全学习路线图

 

工具安装

首先,我们需要在本地设备上安装并配置好Go v1.16+环境。然后直接运行下列命令即可安装最新版本的Rayder:

go install github.com/devanshbatham/rayder@v0.0.4

工具使用

Rayder提供了一种非常简单且直接的工作流执行方法,所有要执行的内容都在YAML文件中定义,使用下列命令即可直接运行Rayder:

rayder -w path/to/workflow.yaml

工作流配置

定义在YAML文件中的工作流数据结构如下所示:

vars:

  VAR_NAME: value

  # 这里可以添加更多的变量...

 

parallel: true|false

modules:

  - name: task-name

    cmds:

      - command-1

      - command-2

      # 这里可以添加更多的命令...

    silent: true|false

  # 这里可以添加更多的模块...

在工作流中使用变量

Rayder支持在工作流配置文件中使用各种变量,这种方式不仅实现了命令参数化,而且也能够更大程度地实现灵活性。我们可以在YAML工作流文件的vars部分定义变量,然后使用双大括号{{}}在命令字符串中引用这些变量。

定义变量

vars:

  VAR_NAME: value

  ANOTHER_VAR: another_value

  # Add more variables...

在命令中引用变量

modules:

  - name: example-task

    cmds:

      - echo "Output directory {{OUTPUT_DIR}}"

通过命令行提供变量

rayder -w path/to/workflow.yaml VAR_NAME=new_value ANOTHER_VAR=updated_value

工具使用样例

使用样例一

我们可以按照下列方式在工作流配置文件中定义、引用和提供变量:

vars:

  ORG: "example.org"

  OUTPUT_DIR: "results"

 

modules:

  - name: example-task

    cmds:

      - echo "Organization {{ORG}}"

      - echo "Output directory {{OUTPUT_DIR}}"

执行工作流时,我们可以在命令行命令中提供ORG和OUTPUT_DIR的变量值:

rayder -w path/to/workflow.yaml ORG=custom_org OUTPUT_DIR=custom_results_dir

上述命令将会覆盖这些变量原用的值,并使用命令行提供的新值。

使用样例二

以下是一个为反向whois定制的工作流配置示例,它将根域名重新配置并处理为子域名,然后解析它们并检查哪些是有效域名:

vars:

  ORG: "Acme, Inc"

  OUTPUT_DIR: "results-dir"

 

parallel: false

modules:

  - name: reverse-whois

    silent: false

    cmds:

      - mkdir -p {{OUTPUT_DIR}}

      - revwhoix -k "{{ORG}}" > {{OUTPUT_DIR}}/root-domains.txt

 

  - name: finding-subdomains

    cmds:

      - xargs -I {} -a {{OUTPUT_DIR}}/root-domains.txt echo "subfinder -d {} -o {}.out" | quaithe -workers 30

    silent: false

 

  - name: cleaning-subdomains

    cmds:

      -  cat *.out > {{OUTPUT_DIR}}/root-subdomains.txt

      -  rm *.out

    silent: true

 

  - name: resolving-subdomains

    cmds:

      - cat {{OUTPUT_DIR}}/root-subdomains.txt | dnsx -silent -threads 100 -o {{OUTPUT_DIR}}/resolved-subdomains.txt

    silent: false

 

  - name: checking-alive-subdomains

    cmds:

      - cat {{OUTPUT_DIR}}/resolved-subdomains.txt | httpx -silent -threads 1000 -o {{OUTPUT_DIR}}/alive-subdomains.txt

silent: false

如需执行上述工作流,运行下列命令即可:

rayder -w path/to/reverse-whois.yaml ORG="Yelp, Inc" OUTPUT_DIR=results

需要注意的是,如果将配置文件中parallel字段设置为true,则模块将会并行执行。

工具运行截图

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,需要点击下方链接即可前往获取 

读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击)

同时每个成长路线对应的板块都有配套的视频提供: 

大厂面试题

 

视频配套资料&国内外网安书籍、文档

当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料

所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~ 

读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击) 

特别声明:

此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值