如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤

图片[1]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

什么是 W5 SOAR

W5是一款基于 Python开发的安全编排与自动化响应平台,为了企业安全做出了精心的打造,无需编写代码即可实现自动化响应流程,可节约企业 80%的成本。

无代码: 无需编写代码,即可让企业内部人员快速实现事件响应。
扩展强: 提供插件模块,可以扩展让所有的应用平台集成 W5 自身插件
自动化: 提供 `Webhook`、`Mail`、`用户输入`、`API` 等入口,无需人工即可实现全部流程

架构图

图片[2]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

安全能力编排化

图片[3]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

通过平台的可视化工具,基于应用的基础上编排出实际中企业可落地的场景剧本,实现无人值守全自动化操作

  • 应用(Application)是指企业和组织安全运营过程中需要用到的各种安全设施通过 API 或 GUI 暴露出来的功能,经过标准化统一封装后形成的安全能力,并以服务的方式对外呈现出来。应用执行的最小操作单元是动作,即这个应用中所包含的操作指令。通常,一个应用包括多个动作(Action)。
  • 安全编排(Security Orchestration)是将企业和组织在安全运营过程中涉及的不同系统或者一个系统内部不同组件的安全功能通过可编程接口(API)封装后形成的安全能力(即应用)和人工检查点按照一定的逻辑关系组合到一起,以完成某个特定的安全运营过程和规程。安全编排是将安全运营相关的工具/技术、流程和人员等各种能力整合到一起的一种协同工作方式。
  • 剧本(Playbook)是安全运营流程在安全编排系统中的形式化表述,通常是在编排器中的工作流引擎驱动下执行。编写剧本的过程就是将安全运营流程和规程转换为剧本,并在剧本中将各种应用编排到一起的过程,也是将人读安全运营流程转换为机读工作流的过程。

实际应用场景

  1. 通过蜜罐系统获取到了黑客的 IP ,通过 W5 SOAR执行自动化封锁阻止黑客入侵,无需人工干预。
  2. 对接情报系统,发现企业内部有危险文件 (木马),通过 W5 SOAR执行自动化阻止木马的执行,随后进行分析
  3. 服务器告警后,可以通过 W5 SOAR 分析因为什么告警,随后执行对应的剧本执行修复操作。
  4. 白帽子通过 W5 SOAR 实现自动化渗透测试,降低人工成本
  5. 运维团队,通过 W5 SOAR实现告警自动修复处理

Docker 部署

Docker hubhttps://hub.docker.com/repository/docker/w5team/w5

下载镜像

docker pull mysql
docker pull w5team/w5

使用 Docker 的 Mysql

# 下载 W5,进入到 Docker 目录,需要配置 Mysql
git clone https://github.com/w5teams/w5.git && cd w5/docker

# 启动 Mysql,name 为 W5_MYSQL,Nysql 初始化大概需要 5-10 秒左右
docker run -d --name W5_MYSQL -p 3307:3306 -e MYSQL_ROOT_PASSWORD=w5_12345678 -v $PWD/sql:/docker-entrypoint-initdb.d -v $PWD/conf.d:/etc/mysql/conf.d -v $PWD/mysql_db:/var/lib/mysql mysql

# 启动 W5 SOAR,  --link W5_MYSQL
docker run -itd --name W5_SOAR --link W5_MYSQL  -p 8888:8888 -e MYSQL_HOST="W5_MYSQL" -e MYSQL_DATABASE="w5_db" -e MYSQL_USER="root" -e MYSQL_PASSWORD="w5_12345678" -e MYSQL_PORT="3306"  w5team/w5  /root/start

W5_MYSQL 参数说明:

  • –name :启动 Docker 的名称,默认 W5_MYSQL
  • -p:映射服务到本地的端口,宿主机端口:Docker端口
  • -e MYSQL_ROOT_PASSWORD :设置 Mysql 服务密码
  • -v $PWD/sql:/docker-entrypoint-initdb.d :找到 docker 目录下的 sql 文件进行初始化,创建 `w5_db` 数据库
  • -v $PWD/conf.d:/etc/mysql/conf.d :找到 docker 目录下的 conf.d 文件进行配置 Mysql
  • -v $PWD/mysql_db :数据持久化,不加此项重启数据就会丢失 

W5_SOAR 参数说明:

  • –name :启动 Docker 的名称,默认 W5_SOAR
  • –link :连接 Mysql 镜像
  • -p :映射服务到本地的端口,宿主机端口:Docker端口
  • -e MYSQL_HOST :Mysql 地址,设置自己的 Mysql 服务地址
  • -e MYSQL_DATABASE :Mysql 数据库
  • -e MYSQL_USER=”root” :Mysql 账号
  • -e MYSQL_PASSWORD :Mysql 密码
  • -e MYSQL_PORT :Mysql 端口

访问 W5 SOAR

访问地址: `ip:8888`, (访问不了请检查服务器防火墙)
账号密码: 账号:`admin`,密码:`12345678` (登录后请及时修改密码)

图片[4]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

Hello Word

1. 打开剧本列表 -> 创建一个新的剧本 (Hello Word)

图片[5]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

2.  编辑应用参数

图片[6]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

3. 执行剧本

图片[7]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

4. 查看执行报告

图片[8]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

远程执行 Linux 命令

1. 创建一个 Linux 远程执行的 剧本,可以通过 用户输入命令执行

图片[9]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

2. 编辑 应用参数,此处使用了 APP变量,可以获取到用户输入的命令

图片[10]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

3. 执行剧本 , 输入命令

图片[11]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

4. 执行成功

图片[12]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

5. 查看报告

图片[13]-如何使用开源项目 W5 SOAR ,给企业带来安全自动化 – 作者:天才小三斤-安全小百科

总结

本文简单介绍下 W5 SOAR的使用,可玩性很多种,下期会带来如何在企业内部中实战落地。

W5 SOAR目前支持,`全局变量`、`局部变量`、`APP 变量`、`条件分支判断`、` WebHook`,另外支持企业内部 APP编写,完全可以在生产环境使用。

直达连接

官网https://w5.io
文档https://w5.io/help/(文档有完整的教程)
Github: https://github.com/w5teams/w5(感觉项目好的请来个 Star)
Gitee: https://gitee.com/w5team/w5(感觉项目好的请来个 Star)

来源:freebuf.com 2020-12-23 11:29:04 by: 天才小三斤

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论