本文讲的是8款审核AWS帐户安全性的免费工具,你值得拥有

随着Amazon Web Services(AWS)用户越来越多,用户的账号安全性已经成了一个不容忽视的问题。默认情况下,AWS帐户通常是安全的,但也可能发生风险,鉴于此,我找到了一些可用于检查这些安全风险的工具。

AWS的潜在安全问题有很多,比如一台主机的安全组可以向0.0.0.0/0全开放,即用户可以从世界各地的网络进行登录,或用户可以使用亚马逊提供的S3 Management Console去管理自己的S3存储桶,通过网络随时随地的获取存储的数据。在这两种情况下,AWS帐户安全性都需要做安全检查。

收集有关AWS帐户信息主要有以下三种方法:

1.通过AWS API调用,以了解帐户当前的运行状态,
2.监控CloudTrail日志并对相关的变动事项进行报告,
3.使用AWS Config日志来了解帐户当前的运行状态。

以上这三个方法都是基于API调用。CloudTrail是一个监控工具,它可以跨亚马逊云计算服务提供应用程序编程接口调用的日志记录服务。要使用这些工具,大家就应该在具有与其相关联的Amazon EC2 使用实例配置文件作为IAM 角色的容器,可用的工具有:

1.AWS Trusted Advisor
2.AWS Config
3.Scout2
4.Prowler
5.Security Monkey
6.Cloud Custodian
7.reddalert
8.CloudSploit

下面我就对以上的8款工具进行一一介绍,以帮助大家发现AWS帐户的潜在安全性风险。

AWS Trusted Advisor

AWS Trusted Advisor于2014年7月发布,是一款应用程序,AWS在为AWS客户提供服务的过程中所积累的运营经验和最佳实践都凝聚在这款应用程序中。它用以管控AWS的用户账户,并且能够提供部署安全、可用性能以及AWS成本方面的优化建议。

AWS Trusted Advisor作为AWS支持套件的一部分交付给客户。基础账号中包含四项检测,提供了大众化的安全建议。

官方链接:console.aws.amazon.com/trustedadvisor/。

免费情况下的3项安全检查是:

1.某些端口是否是0.0.0.0/0开放的状态?像80(HTTP)和443(HTTPS)这样的端口是可以的,但是像3306(MySQL)和其他一些特定的端口如果处于开放状态,则会出现红色安全提示,因为用户无法直接从端口3306连接到AWS EC2上的MySQL。如果22(SSH)或任何其他端口打开,它将变为黄色提示。

2.你是否创建了其他的IAM用户, 因为在ec2上只能是root用户才可以运行。

3.root用户是否拥有MFA。

不过如果你付费了还会有其它的安全检查:

1.检查的S3存储桶的权限是否被其他人利用,
2.检查密码设置,
3.各种安全组检查,例如特定的检查,以确保RDS数据库不被暴露,
4.检查Route53,对于每个邮件交换记录,确保TXT记录包含相应的SPF值以拒绝电子邮件诈骗,
5.确认Checks Cloudtrail打开,
6.检查AWS ELB (Elastic Load Balancing ) 是否使用了SSL,
7.检查SSL证书是否即将过期,
8.检查IAM密码是否在过去90天内进行过改变,
9.检查暴露的访问密钥。

最后一个检查“检查暴露的访问密钥”则代表着已经把检查扩展到你的帐户之外的地方了。这么做很有必要,例如很多用户不小心将根访问密钥上传到了GitHub这样的公共代码库中。渗透测试公司Threat Intelligence对GitHub进行了一次简单扫描后,发现差不多有1万名开发者无意间上传了AWS的访问密钥。据进行测试的安全专家介绍,渗透测试小组对这些被暴露于公共代码库中的密钥进行了检测,发现都是可用的AWS访问密钥而且被黑客入侵的账户可以用于挖掘比特币。如果你是使用GitHub的开发者,同时也是亚马逊AWS的用户,那么建议你检查公开的项目页面,删除其中无意间泄露的AWS访问密钥。

但AWS Trusted Advisor 的缺点就是反应时间较长,它需要一段时间来显示检测内容,如果你想隐藏一些功能,如一个接入打开0.0.0.0/0的安全组,那么这将需要大约5分钟进行刷新。

如果你不想查看此功能,则需要在console.aws.amazon.com/trustedadvisor/home#/preferences的首选项中进行设置。另外,你每周还会受到一个这样的电子邮件,报告你这周的使用说明。

同样,如果你查看帐户中的https://console.aws.amazon.com/iam/,将看到一个“安全状态”的显示页面,其中已完成的IAM的检查会用绿色标识,而仍然需要处理的问题则用警告三角形标识。

AWS Config

亚马逊在2014年11月推出了AWS Config,AWS Config是把CloudTrail日志和一些AWS API调用功能进行了组合,你可以使用它来评估、审核和评价你的 AWS 资源的配置。Config 持续监控和记录你的AWS资源配置的信息,例如EC2,S3存储区,安全组等,并支持你自动依据配置需求评估记录的配置。借助 Config,你可以查看配置更改以及AWS资源之间的关系、深入探究详细的资源配置历史记录并判断你的配置在整体上是否符合AWS内部指南中所指定的配置要求,例如获取有关特定EC2实例的信息。如此一来,你将能够简化合规性审核、安全性分析、变更管理和进行故障排除。

简而言之,AWS Config就做了两件事:

1.记录你AWS帐户中的运行配置,

2.评估这些运行配置并通过SNS生成安全警报。

aws configservice get-resource-config-history --resource-type "AWS::EC2::Instance" --resource-id "i-05bef8a081f307783"

然后,你可以应用比如–earlier-time的查询,以查询在某个过去日期配置的EC2实例。 在这一点上,AWS Config与Netflix的Edda非常类似。 由于Edda收集了有关你的AWS环境信息,并将其存储在MongoDB中,然后提供REST API以允许数据查询。 虽然Edda提供比AWS Config更有用的查询功能,但AWS Config可以通过进行设置来改变查询条件,一旦查出数据,你可以随时通过S3 存储桶获取所需的信息,这可能比Cloudtrail更容易解密日志。

新的AWS Config 规定你可以使用AWS以及合作伙伴的既存规则,也可以定义你自己的自定义规则。规则可指向特定的资源(以id进行区分),特定种类的资源,或者以一种特殊方式标记的资源。在这些资源被创建或修改时,规则被运行,规则也可以周期性地(按小时,按天等等)被评估。

规则可以寻找任何想要的或不想要的条件。例如,你可以:

1.确保特定VPC中投放的EC2实例被正确地标记,

2.确保每一个实例关联至少一个安全组,

3.检查并确保端口22在任何安全组中都是不开放的。

当检测到问题时,它将触发SNS通知。

Scout2

2012年,iSEC Partners(现为NCC集团的一部分)的LoïcSimon发布了一个名为Scout的工具,用于审核AWS环境。在2014年,他们又发布了一个名为Scout2的新版本。开源的Scout2项目专注于在渗透测试学习平台——web for pentester上进行一次性审核。

当你运行Scout2命令时,它将生成一个静态Web目录,允许你在pentester上打开创建的report.html文件。 不过Scout2存在一个小小的漏洞,就是当重新加载页面有时点击时没有反应,但它提供了一个漂亮的UI。

点击到EC2仪表板可以看出该所查出的所有问题。

看看红色标识的“所有SSH端口”,你可以看到0.0.0.0/0对所有安全组完全开放。

它还显示了安全组所应用到的实例。

Prowler 

Alfresco的Toni de la Fuente(@ToniBlyx)于2016年9月发布了Prowler,用于检查CIS亚马逊网络服务基础设施的项目。

此工具仅检测其事先所列举的安全问题,并且生成仅能在其上进行阅读的报告。

Security Monkey

Netflix的Security Monkey在2014年发布,它是在AWS账户中对监控策略的改进和不安全配置进行警报的工具。虽然 Security Monkey 主要目的是安全警报,但是也提供一些有用的工具来追踪出现警告的问题。Security Monkey支持 CPython 2.7,可以在 Ubuntu Linux 和 OS X 上运行。目前,它能检测出AWS和Google Cloud Platform(GCP)的问题。Security Monkey预计将被部署到整个EC2,并且还会配备一个PostgreSQL后端。它可以重复扫描多个帐户并生成预警信息。一旦出现预警,你就可以在其用户界面中浏览到所有问题。

以下就是显示问题的主屏幕。

而且你还能对不同的问题进行分组。

下图显示了该资源的详细信息,以帮助你更好地了解正在识别的内容。

你可以在这里查看Security Monkey的检查代码。

Cloud Custodian

CapitalOne开发的Cloud Custodian于2016年5月推出,Cloud Custodian 是一个用于 AWS 资源管理的规则引擎。允许用户通过图表、格式化输出制定策略来增强云资源的管理。它包含很多特别的脚本,这是一个轻量级而且灵活的工具。

用户可以通过它来管理 AWS 环境,确保安全策略、asg 以及无用资源垃圾收集策略被正确使用,降低资源管理的成本。Custodian 的出现是为了统一大量的各种脚本和工具来管理 AWS 账号并提供统一的操作和报表功能。

1.如果它找到没有加密EBS卷的任何EC2实例,就会终止它们,

2.如果EC2实例未被AWS环境,OwnerContact或其他标签标记,则会在4天内停止这些实例。

3.如果ELB没有使用白名单的SSL策略,则会删除该ELB。

reddalert

Prezi的reddalert于2014年发布,使用的是Netflix的Edda,而不是像其他工具那样的AWS API。

CloudSploit

CloudSploit是一种付费服务,但它有两个免费选项。一个允许你使用他们的网站来运行手动扫描,另一个是他们已经开源了其搜索引擎及其规则,以便你可以在他们的项目github.com/cloudsploit/scans下自行运行它们。

总结

本文中所提到的工具并不会检测到你的AWS帐户中可能存在的所有问题,例如,你可能会在EC2中运行旧的未打补丁的软件。

不过你可以通过调整这些工具来,例如添加或删除某些检测功能。另外,你还需要检查哪些内容必须手动完成,有时它们没有API调用,例如检查是否存在该帐户的安全联系人。

目前,还没有一个能够集成所有检测功能的工具。不过,我的建议是首先使用AWS Trusted Advisor查看你的帐户。如果你从未这样做,那么现在就这样做,因为它是一种内置的服务,可以轻松地将安全问题显示给你。

原文发布时间为:2017年6月7日
本文作者:xiaohui
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
原文链接

8款审核AWS帐户安全性的免费工具,你值得拥有相关推荐

  1. 注册icoke帐户换积分免费获得QQ3D秀(转)

    注册icoke帐户换积分免费获得QQ3D秀(转) 想拥有美丽的QQ3D秀,需要花费N多米.因此笔者将自己的免费心得与大家共同分享! 步骤1. 打开IE进入 http://icoke.qq.com .在 ...

  2. ios开发读取剪切板的内容_为你找到3款Mac平台好用的剪切板工具,你值得拥有!...

    不知道大家有没有这样的体会,我们在进行文字编辑的时候,复制下来的文字常常需要重复使用,但新的内容一旦复制,旧的内容就被覆盖清理了.因此选择一款易用高效的剪贴板成了很多人都有的需求. 有些朋友可能会说, ...

  3. 默认帐户生成器帐户来源

    默认帐户生成器帐户来源     WIP --------------- 库存管理系统 --------------- 采购 其它 目的地类型 WIP 工单类型 子库存 组织参数 物料(INV 或 PO ...

  4. linux关闭root权限管理,如何在Ubuntu中启用和禁用root帐户?

    在Ubuntu Linux中,出于安全原因,默认情况下是禁用root帐户的.下面本篇文章就来带大家了解一下在在Ubuntu中启用和禁用root帐户的方法,希望对大家有所帮助. Sudo用户 Ubunt ...

  5. 如何保护您的Gmail和Google帐户的安全

    Out of all your online accounts, there's a good chance that Google holds most of your information. T ...

  6. 20款对设计师非常有用的在线配色工具

    配色是网页设计的关键之一,精心挑选的颜色组合可以帮助你让设计更有吸引力,相反的,糟糕的配色会伤害眼睛,妨碍读者对网页内容和图片的理解.然而,很多时候设计师不知道如何选择颜色搭配,好消息是如今有很多的配 ...

  7. AWS Organizations如何确保云帐户安全?

    新的名为AWS Organizations的工具目的在于帮助确保云帐户管理的安全.专家Matthew Pascucci解释了这一工具的工作原理,以及对其与AWS IAM进行了对比. 在AWS re:I ...

  8. 在linux系统中 创建用户账户的同时,在Linux系统中大批量建立帐户

    在Linux系统中大批量建立帐户 企业如果想在Linux操作系统上部署文件的话,可能需要一次性建立大量的帐户.如为了加强文件的管理力度,需要为每个员工配置一个帐户.如此的话,就可以针对员工进行权限控制 ...

  9. 解决极值中的神奇设k法_神奇宝贝Go拥有对您的Google帐户的完全访问权限。 这是解决方法[更新]...

    解决极值中的神奇设k法 To say Pokémon GO is wildly popular would be a vast understatement. To say the app's use ...

最新文章

  1. 中key的用途_Micro Focus Operations Bridge Manager中的多个(RCE)漏洞
  2. 企业网络推广专员浅析企业网络推广初期网站优化应重视的一些问题
  3. leetcode算法题--二叉搜索树的第k大节点
  4. AutoCAD.net: DXF群码
  5. 禁用浏览器滚动条的解决方案
  6. HihoCoder - 1558
  7. python网站用什么数据库_PyMySQL数据库的使用
  8. mac win10 mysql_Mac装双系统Win10,安装MySQL遇到的问题
  9. python工作技巧_4个基本的 Python 技巧让你的工作流程自动化
  10. shell脚本实现FTP自动上传文件
  11. CentOS7下简单安装python3.7.0步骤
  12. C#中.snk文件的作用【转】
  13. java heap space 什么意思_java heap space是什么意思?
  14. Mediawiki安装经验分享
  15. linux版印象笔记 for deepin
  16. 百度移动优化:关于移动端点击图片放大有多少人注意?
  17. kernel网络之软中断
  18. Vivado 报错Error:‘launch_simulation‘failed due to earlier errors.
  19. Ethereum 基础(一)
  20. vue : 无法加载文件 C:\Users\lihongjie\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 htt ps:/go.micr

热门文章

  1. Mysql主从同步延迟问题及解决方案
  2. 上海往事之参加上海分公司组织的TeamBuilding
  3. Java Build Tools: Ant vs Maven vs Gradle
  4. Django的第二次尝试
  5. ViewBag、ViewData和TempData使用方法、区别与联系
  6. 刷新aspx页面的六种方法
  7. ubuntu+php+mysql+apache安装配置
  8. java数组中最小的k个元素_java – 在数组中找到k个最小整数
  9. 405 not allowed_无偿献血走进山东科技大学 405名爱心师生献血14万毫升
  10. 简单介绍使用Nginx限制百度蜘蛛频繁抓取的问题