如何使用awsEnum基于提供的凭证枚举AWS云端资源

VSole2022-08-03 17:03:36

 关于awsEnum 

awsEnum是一款针对AWS云端资源安全的审计工具,该工具基于Python 3开发,可以帮助广大研究人员根据输入的凭证信息来枚举目标AWS云端资源和AWS服务。

当前该工具仍处于测试过程中,发布的为beta版本。该工具的主要目标是为了帮助广大研究人员更好地对AWS云端环境进行安全渗透测试,可以用于漏洞奖励计划、AWS云端安全审计或其他相关的安全研究活动。

 功能介绍 

1、通过boto3连接AWS服务;

2、awsEnum允许用户设置发送的请求数量,默认为1000;

3、awsEnum支持将分析结果存储为JSON文件;

4、支持将AWS凭证信息存储在awscli配置中,可以将配置文件以文件名参数的形式传递给awsEnum;

5、支持的服务:EC2、IAM、S3;

 工具要求 

Python 3

pip包管理工具

 工具下载 

由于该工具基于Python 3开发,因此广大研究人员首先需要在本地设备上安装并配置好Python 3环境。接下来,我们就可以使用下列命令将该项目源码克隆至本地了:

git clone https://github.com/bassammaged/awsEnum.git

 工具部署 

下载完成后,我们需要利用项目提供的requirements.txt安装该工具所需的其他依赖组件:

python3 -m pip install requirements.txt

 工具使用 

接下来,我们就可以直接 通过run.py脚本来运行awsEnum了:

python3 run.py

帮助信息

▄▄▄▄▄▄ ▄     ▄ ▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄ ▄▄    ▄ ▄▄   ▄▄ ▄▄   ▄▄
█      █ █ ▄ █ █       █       █  █  █ █  █ █  █  █▄█  █
█  ▄   █ ██ ██ █  ▄▄▄▄▄█    ▄▄▄█   █▄█ █  █ █  █       █
█ █▄█  █       █ █▄▄▄▄▄█   █▄▄▄█       █  █▄█  █       █
█      █       █▄▄▄▄▄  █    ▄▄▄█  ▄    █       █       █
█  ▄   █   ▄   █▄▄▄▄▄█ █   █▄▄▄█ █ █   █       █ ██▄██ █
█▄█ █▄▄█▄▄█ █▄▄█▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█▄█  █▄▄█▄▄▄▄▄▄▄█▄█   █▄█
--------------------------------------------------------
If you are looking to enumerate AWS services. So, welcome
to awsEnum, awsEnum is a python script trying to facilitate
the enumerate phase of AWS cloud with the lowest possible
headache and less noise. Therefore we are not supporting
the `all` mode. ----------------------------------------
--------------------------------------------------------
        developed by bassammaged (@kemet)
                version: 0.1 Beta
--------------------------------------------------------
[!] Make sure you already defined credential profile via AWS CLI.


usage: run.py [-h] [-p profile_name] [-r region_name] [-v | --verbose | --no-verbose] [-t TRIES] aws_service_name


positional arguments:
  aws_service_name      Specify the aws service for enumration. Supported services are: ['ec2', 'iam', 's3'] (default: all)


options:
  -h, --help            show this help message and exit
  -p profile_name, --profile profile_name
                        specify aws credential profile that will be used through the enumeration. (default: default)
  -r region_name, --region region_name
                        specify aws region. (default: eu-central-1)
  -v, --verbose, --no-verbose
                        Allows the script to print out the message level start with debug. (default: False)
  -t TRIES, --tries TRIES
                        set maximum tries. (default: 1000)

参数解释

aws_service_name:指定需要枚举的目标AWS服务,支持的参数:['ec2', 'iam', 's3'],默认:枚举所有资源;
-h, --help:显示工具帮助信息和退出;
-p profile_name, --profile profile_name:指定AWS凭证配置文件;
-r region_name, --region region_name:指定AWS实例区域,默认:eu-central-1;
-v, --verbose, --no-verbose:允许工具输出包含调试信息在内的所有信息,默认:False;
-t TRIES, --tries TRIES:设置最大尝试次数,默认:1000;

输出报告

[
    {
        "AmiLaunchIndex": 0,
        "ImageId": "ami-7c803d1c",
        "InstanceId": "i-05bef8a081f307783",
        "InstanceType": "t2.micro",
        "KeyName": "Default",
        "LaunchTime": "2017-02-12 22:29:24+00:00",
        "Monitoring": {
            "State": "disabled"
        },
        "Placement": {
            "AvailabilityZone": "us-west-2a",
            "GroupName": "",
            "Tenancy": "default"
        },
        "PrivateDnsName": "ip-172-31-41-84.us-west-2.compute.internal",
        "PrivateIpAddress": "172.31.41.84",
        "ProductCodes": [],
        "PublicDnsName": "ec2-35-165-182-7.us-west-2.compute.amazonaws.com",
        "PublicIpAddress": "35.165.182.7",
        "State": {
            "Code": 16,
            "Name": "running"
        },
        "StateTransitionReason": "",
        "SubnetId": "subnet-d962aa90",
        "VpcId": "vpc-1052ce77",
        "Architecture": "x86_64",
        "BlockDeviceMappings": [
            {
                "DeviceName": "/dev/sda1",
                "Ebs": {
                    "AttachTime": "2017-02-12 22:29:25+00:00",
                    "DeleteOnTermination": true,
                    "Status": "attached",
                    "VolumeId": "vol-04f1c039bc13ea950"
                }
            }
        ],
        "ClientToken": "kTOiC1486938563883",
        "EbsOptimized": false,
        "Hypervisor": "xen",
        "IamInstanceProfile": {
            "Arn": "arn:aws:iam::975426262029:instance-profile/flaws",
            "Id": "AIPAIK7LV6U6UXJXQQR3Q"
        },
        "NetworkInterfaces": [
            {
                "Association": {
                    "IpOwnerId": "amazon",
                    "PublicDnsName": "ec2-35-165-182-7.us-west-2.compute.amazonaws.com",
                    "PublicIp": "35.165.182.7"
                },
                "Attachment": {
                    "AttachTime": "2017-02-12 22:29:24+00:00",
                    "AttachmentId": "eni-attach-a4901fc2",
                    "DeleteOnTermination": true,
                    "DeviceIndex": 0,
                    "Status": "attached",
                    "NetworkCardIndex": 0
                },
                "Description": "",
                "Groups": [
                    {
                        "GroupName": "launch-wizard-1",
                        "GroupId": "sg-490f6631"
                    }
                ],
                "Ipv6Addresses": [],
                "MacAddress": "06:b0:7a:92:21:cf",
                "NetworkInterfaceId": "eni-c26ed780",
                "OwnerId": "975426262029",
                "PrivateDnsName": "ip-172-31-41-84.us-west-2.compute.internal",
                "PrivateIpAddress": "172.31.41.84",
                "PrivateIpAddresses": [
                    {
                        "Association": {
                            "IpOwnerId": "amazon",
                            "PublicDnsName": "ec2-35-165-182-7.us-west-2.compute.amazonaws.com",
                            "PublicIp": "35.165.182.7"
                        },
                        "Primary": true,
                        "PrivateDnsName": "ip-172-31-41-84.us-west-2.compute.internal",
                        "PrivateIpAddress": "172.31.41.84"
                    }
                ],
                "SourceDestCheck": true,
                "Status": "in-use",
                "SubnetId": "subnet-d962aa90",
                "VpcId": "vpc-1052ce77",
                "InterfaceType": "interface"
            }
        ],
        "RootDeviceName": "/dev/sda1",
        "RootDeviceType": "ebs",
        "SecurityGroups": [
            {
                "GroupName": "launch-wizard-1",
                "GroupId": "sg-490f6631"
            }
        ],
        "SourceDestCheck": true,
        "VirtualizationType": "hvm",
        "CpuOptions": {
            "CoreCount": 1,
            "ThreadsPerCore": 1
        },
        "CapacityReservationSpecification": {
            "CapacityReservationPreference": "open"
        },
        "HibernationOptions": {
            "Configured": false
        },
        "MetadataOptions": {
            "State": "applied",
            "HttpTokens": "optional",
            "HttpPutResponseHopLimit": 1,
            "HttpEndpoint": "enabled",
            "HttpProtocolIpv6": "disabled",
            "InstanceMetadataTags": "disabled"
        },
        "EnclaveOptions": {
            "Enabled": false
        },
        "PlatformDetails": "Linux/UNIX",
        "UsageOperation": "RunInstances",
        "UsageOperationUpdateTime": "2017-02-12 22:29:24+00:00",
        "PrivateDnsNameOptions": {},
        "MaintenanceOptions": {
            "AutoRecovery": "default"
        }
    }
]

 工具运行截图 

aws云端服务
本作品采用《CC 协议》,转载必须注明作者和本文链接
awsEnum是一款针对AWS云端资源安全的审计工具,该工具基于Python 3开发,可以帮助广大研究人员根据输入的凭证信息来枚举目标AWS云端资源和AWS服务。当前该工具仍处于测试过程中,发布的为beta版本。由于该工具基于Python 3开发,因此广大研究人员首先需要在本地设备上安装并配置好Python 3环境。
近期,趋势科技发布的一份报告显示,传播挖矿软件以敛财的黑客现在将目标转向了云端云端正成为挖矿黑客之间的“新战场”。 这份名为《浮动战场:云端挖矿的版图一览》的报告指出,新冠疫情期间,企业投资了大量的云计算,然而新服务的部署也容易造成云端执行个体的大量增加,未修补程序或存在组态错误,使得黑客有机可趁。云端的高扩充性非常吸引黑客,尤其是在他们还能黑入多台像IoT装置这样连向云端的机器时。
在向云应用程序和数字化转型的大规模转变中,云访问安全代理 (CASB) 应运而生。当用户从企业外围内访问这些资产时,CASB旨在减轻围绕云资产的风险。
随着数字化转型进程加快,云计算技术成为企业数字化业务运转的重要支撑。特别是疫情催化、政策加码、市场需求激增,多种变革力量交织汇聚,使数字化转型发展浪潮呈螺旋式上升,企业顺势转型已是必然。云计算通过资源池化,助力企业实现以客户为中心价值链的最短路径,驱动技术、业务、决策的深度融合,成为企业数字化转型的关键技术之一。
零信任安全代表了新一代网络安全防护理念,并非指某种单一的安全技术或产品,其目标是为了降低资源访问过程中的安全风险,防止在未经授权情况下的资源访问,其关键是打破信任和网络位置的默认绑定关系。
尽管发现的首个样本危害不大,但已经能够看到攻击者是如何利用云专业知识入侵复杂的云基础设施。
AWS在本周二的re:Invent大会上宣布正式推出Wickr Me的企业版本AWS Wickr。
日本国家级应急响应机构的职能由 NISC 与 JPCERT/CC 共同负责,JPCERT/CC 在恶意软件分析领域中做了许多探索和实践。
数据所有者能够根据授权用户的属性设置密文策略,在数据加密的同时保证授权的灵活性。针对量子计算的发展可能带来的安全挑战,基于格构造抗量子的方案可以有效提升安全性。此外,利用区块链技术存储数据信息,以应对非可信云服务的伪造、篡改数据等行为。最后,分析了方案的安全性与各方面性能,结果表明所提方案能够适用于非可信的云存储应用。
VSole
网络安全专家