Cloud-Security-Audit:一款基于Go的AWS命令行安全审计工具

2019 年 7 月 20 日 FreeBuf

cloud-security-audit是一款适用于AWS的命令行安全审计工具。它可以帮助你扫描AWS账户中的漏洞,你将能够快速识别基础架构中不安全的部分,并执行对AWS账户的审计工作。

安装

目前,Cloud Security Audit不支持任何的软件包管理器,目前正在完善这项工作。

从源构建

首先,你需要将Cloud Security Audit下载到GO工作区:

  
  
    
$GOPATH $ go get github.com/Appliscale/cloud-security-audit$GOPATH $ cd cloud-security-audit

然后,通过执行以下命令在cloud-security-audit目录中构建和安装应用程序配置:

  
  
    
cloud-security-audit $ make all

使用

初始化会话

如果你正在使用MFA,则需要在进行连接之前尝试使用flag -mfa告知Cloud Security Audit对你进行身份验证。例如:

  
  
    
$ cloud-security-audit --service s3 --mfa --mfa-duration 3600

EC2扫描

要对所有EC2实例执行审计,请键入以下命令:

  
  
    
$ cloud-security-audit --service ec2

你可以使用-r或--region,将审计范围缩小至某个区域。Cloud Security Audit还支持AWS配置文件 - 指定配置文件使用-p或--profile标志。

输出示例:

+---------------+---------------------+--------------------------------+-----------------------------------+----------+| AVAILABILITY  |         EC2         |            VOLUMES             |             SECURITY              |          ||               |                     |                                |                                   | EC2 TAGS ||     ZONE      |                     |     (NONE) - NOT ENCRYPTED     |              GROUPS               |          ||               |                     |                                |                                   |          ||               |                     |    (DKMS) - ENCRYPTED WITH     |    (INCOMING CIDR = 0.0.0.0/0)    |          ||               |                     |         DEFAULT KMSKEY         |                                   |          ||               |                     |                                |       ID : PROTOCOL : PORT        |          |+---------------+---------------------+--------------------------------+-----------------------------------+----------+| eu-central-1a | i-0fa345j6756nb3v23 | vol-0a81288qjd188424d[DKMS]    | sg-aaaaaaaa : tcp : 22            | App:some ||               |                     | vol-0c2834re8dfsd8sdf[NONE]    | sg-aaaaaaaa : tcp : 22            | Key:Val  |+---------------+---------------------+--------------------------------+-----------------------------------+----------+
对以上输出的解读:

第一列 AVAILABILITY ZONE包含放置实例的信息;

第二列 EC2包含实例ID;

第三列 卷包含给定EC2的附加卷(虚拟磁盘)的ID。

后缀含义:

[NONE] - 卷未加密;

[DKMS] - 使用AWS默认KMS密钥加密的卷。有关KMS的更多信息,请点击此处;

第四列 安全组包含权限过于开放的安全组的ID。例如CIDR块为0.0.0.0/0(对全球开放);

第五列 EC2 TAGS包含给定EC2实例的标记,以帮助你识别此实例的用途。

文档

你可以在以下文档中找到有关加密的更多信息:

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html

S3扫描

要对所有S3 buckets执行审计,请键入以下命令:

  
  
    
$ cloud-security-audit --service s3

Cloud Security Audit支持AWS配置文件 - 指定配置文件使用-p或--profile标志。

输出示例:

+------------------------------+---------+---------+-------------+------------+|          BUCKET NAME         | DEFAULT | LOGGING |     ACL     |  POLICY    ||                              |         |         |             |            ||                              |   SSE   | ENABLED |  IS PUBLIC  | IS PUBLIC  ||                              |         |         |             |            ||                              |         |         |  R - READ   |  R - READ  ||                              |         |         |             |            ||                              |         |         |  W - WRITE  | W - WRITE  ||                              |         |         |             |            ||                              |         |         | D - DELETE  | D - DELETE |+------------------------------+---------+---------+-------------+------------+| bucket1                      | NONE    | true    | false       | false      |+------------------------------+---------+---------+-------------+------------+| bucket2                      | DKMS    | false   | false       | true [R]   |+------------------------------+---------+---------+-------------+------------+| bucket3                      | AES256  | false   | true [RWD]  | false      |+--------------------------- --+---------+---------+-------------+------------+
对以上输出的解读:

第一列 BUCKET NAME包含s3 buckets的名称;

第二列 DEFAULT SSE为你提供有关在s3 buckets中使用哪种默认服务器端加密类型的信息:

NONE - 未启用默认SSE;

DKMS - 启用默认SSE,用于加密数据的AWS KMS密钥;

AES256 - 启用默认SSE,AES256。

如果为给定的s3 buckets启用了服务器访问日志记录,则第三列LOGGING ENABLED包含信息。这提供了对s3 buckets发出的请求的详细记录。有关服务器访问日志记录的更多信息,请点击这里。

第四列 ACL IS PUBLIC在ACL(访问控制列表)包含使bucket成为公共(允许任何人读/写)的权限时提供信息。有关ACL的更多信息,请点击这里。

如果bucket的策略允许匿名用户执行任意操作(读/写),则第五列POLICY IS PUBLIC包含信息。有关bucket策略的更多信息,请在此处查看。R,W和D字母描述了适用于每个人的操作类型。

文档

你可以在以下文档中找到有关S3安全的更多信息:

https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html

https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html

https://docs.aws.amazon.com/AmazonS3/latest/user-guide/server-access-logging.html

*参考来源:GitHub,FB小编secist编译,转载请注明来自FreeBuf.COM

精彩推荐


登录查看更多
0

相关内容

由亚马逊云平台提供的一种信息服务。
【2020新书】实战R语言4,323页pdf
专知会员服务
98+阅读 · 2020年7月1日
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
190+阅读 · 2020年6月29日
算法与数据结构Python,369页pdf
专知会员服务
160+阅读 · 2020年3月4日
【新书】Java企业微服务,Enterprise Java Microservices,272页pdf
【电子书】C++ Primer Plus 第6版,附PDF
专知会员服务
83+阅读 · 2019年11月25日
通过Docker安装谷歌足球游戏环境
CreateAMind
11+阅读 · 2019年7月7日
ISeeYou一款强大的社工工具
黑白之道
29+阅读 · 2019年5月17日
一个牛逼的 Python 调试工具
机器学习算法与Python学习
15+阅读 · 2019年4月30日
Pupy – 全平台远程控制工具
黑白之道
43+阅读 · 2019年4月26日
I2P - 适用于黑客的Android应用程序
黑白之道
28+阅读 · 2019年3月6日
如何编写完美的 Python 命令行程序?
CSDN
5+阅读 · 2019年1月19日
Arxiv
34+阅读 · 2019年11月7日
Semantics of Data Mining Services in Cloud Computing
Arxiv
4+阅读 · 2018年10月5日
Arxiv
6+阅读 · 2018年2月7日
Arxiv
7+阅读 · 2018年1月30日
Arxiv
5+阅读 · 2015年9月14日
VIP会员
相关资讯
通过Docker安装谷歌足球游戏环境
CreateAMind
11+阅读 · 2019年7月7日
ISeeYou一款强大的社工工具
黑白之道
29+阅读 · 2019年5月17日
一个牛逼的 Python 调试工具
机器学习算法与Python学习
15+阅读 · 2019年4月30日
Pupy – 全平台远程控制工具
黑白之道
43+阅读 · 2019年4月26日
I2P - 适用于黑客的Android应用程序
黑白之道
28+阅读 · 2019年3月6日
如何编写完美的 Python 命令行程序?
CSDN
5+阅读 · 2019年1月19日
Top
微信扫码咨询专知VIP会员