当前位置: 首页 > article >正文

CNAPPgoat:一款针对云环境的安全实践靶场

关于CNAPPgoat

CNAPPgoat是一款针对云环境的安全实践靶场,该工具旨在帮助广大研究人员在云环境中模块化地提供故意留下安全缺陷的设计组件,专为防御者和渗透测试人员提供练习场地而设计。

CNAPPgoat的主要功能是跨多个云服务提供商部署故意留下安全缺陷的环境,以帮助广大研究人员提高分析、检测和预防相关安全漏洞/缺陷的能力。

需要注意的是,请在受控的沙箱环境中部署和使用该工具。

功能介绍

CNAPPgoat 是一种命令行界面 (CLI) 工具,能够将靶场测试环境部署到众多云服务提供商。它使用 Go 构建,并利用 Pulumi 和 Pulumi 自动化 API,可确保无缝环境部署。其独特功能之一是模块化设计,可轻松扩展以支持一系列云服务提供商和新的靶场测试环境。截至目前,CNAPPgoat 支持 AWS、Azure 和 GCP。

工具要求

1、Pulumi;

2、云提供商SDK:AWS CLI、Azure CLI、Google Cloud SDK;

工具安装

由于该工具基于Go开发,因此我们首先需要在本地设备上安装并配置好最新版本的Go环境。

源码获取

广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/tenable/cnappgoat.git

发布版本安装

我们还可以直接访问该项目的【Releases页面】下载预编译的CNAPPgoat 版本。

然后将代码移动到对应目录下即可,

bash:

echo 'export PATH=$PATH:<path_to_directory_containing_cnappgoat>' >> ~/.bashrc

source ~/.bashrc

zsh:

echo 'export PATH=$PATH:<path_to_directory_containing_cnappgoat>' >> ~/.zshrc

source ~/.zshrc

Homebrew安装

brew tap ermetic-research/cnappgoat

brew install cnappgoat

工具使用

NAME:

   cnappgoat - A multicloud open-source tool for deploying vulnerable-by-design cloud resources

 

USAGE:

   cnappgoat [global options] command [command options] [arguments...]

 

VERSION:

   0.1.0-beta, date: 2023-08-02T13:02:46Z, commit: 6bef61857d9f3cf88215269df8976f96317711dc

 

 

COMMANDS:

   clean      清理并删除所有创建的资源,删除所有场景和任何相关文件

   describe   描述一个场景

   destroy    销毁CNAPPgoat模块场景

   list        枚举CNAPPgoat模块场景

   provision   提供CNAPPgoat模块场景

   help, h     显示命令列表或一个命令的帮助

 

GLOBAL OPTIONS:

   --debug       启用调试模式(默认值:false)

   --help, -h     显示帮助

   --version, -v  打印版本

使用样例如下:

cnappgoat provision <scenario-1> <scenario-2> <scenario-N>
cnappgoat provision --module CSPM --platform AWS

工具运行演示

许可证协议

本项目的开发与发布遵循Apache-2.0开源许可协议。

项目地址

CNAPPgoat:【GitHub传送门】

参考资料

Download & Install Pulumi | Pulumi Docs

Installing or updating to the latest version of the AWS CLI - AWS Command Line Interface

How to install the Azure CLI | Microsoft Learn

https://cloud.google.com/sdk/docs/install


http://www.kler.cn/a/550605.html

相关文章:

  • Linux-C/C++《C/8、系统信息与系统资源》
  • elementUI rules 判断 el-cascader控件修改值未生效
  • C++函数指针与回调函数详解:从青铜到王者,一文搞懂`std::function`的降维打击!
  • vtkCamera类的Dolly函数作用及相机拉近拉远
  • sass报错:[sass] Undefined variable. @import升级@use语法注意事项
  • s1K 数据集:是一个用于提升语言模型推理能力的高质量数据集。包含 1,000 个问题,每个问题都配有详细的 推理路径 和 答案。
  • Lua脚本核心语法介绍
  • 图解卷积神经网络(CNN)
  • stm32高级TIM的常用功能
  • 期权隐含波动率是什么意思?
  • 构建了一个 Linux 发行版,基于Debian和WattOS的
  • Node.js 异步并发控制:`p-map` 和 `p-limit` 的使用与对比
  • Day4 25/2/17 MON
  • 阅读论文笔记《Efficient Estimation of Word Representations in Vector Space》
  • 1 Flask路由和试图函数
  • seata基本使用
  • Android车载应用开发常用adb命令
  • 【含文档+源码】基于Web的在线课堂测试课程考评系统的开发与实现
  • Mac zsh使用相关问题之一
  • 深入了解 AppScan 工具的使用:筑牢 Web 应用安全防线