记一次阿里云主机accesskey泄露到图形化工具开发

访客3年前黑客工具699

简介

在日常渗透过程中我们经常遇到信息泄露出ALIYUN_ACCESSKEYID与ALIYUN_ACCESSKEYSECRET(阿里云API key),特别是laravel框架得debug信息。APP中也会泄露这些信息。

!!!下载链接在文末!!!

概述

我们说下阿里API有什么用吧,以下是官方说明:

云服务器(Elastic Compute Service,ECS),可以调用API管理您的云上资源和开发自己的应用程序。

ECS API支持HTTP或者HTTPS *** 请求协议,允许GET和POST *** 。您可以通过以下方式调用ECS API

详情参考阿里云官方API文档:https://help.aliyun.com/document_detail/25484.html?spm=a2c4g.11186623.6.1276.12244f88jytZ8c

开发思路

1、通过阿里云SDK使用

SDK下载地址:https://github.com/aliyun/aliyun-openapi-python-sdk

pip安装

# Install the core library

pip install aliyun-python-sdk-core

# Install the ECS management library

pip install aliyun-python-sdk-ecs

# Install the RDS management library

pip install aliyun-python-sdk-rds


调用查询ecs主机

#!/usr/bin/env python

#coding=utf-8

from aliyunsdkcore.client import AcsClient

from aliyunsdkcore.acs_exception.exceptions import ClientException

from aliyunsdkcore.acs_exception.exceptions import ServerException

from aliyunsdkecs.request.v20140526.DescribeInstancesRequest import DescribeInstancesRequest


client=AcsClient('<accessKeyId>', '<accessSecret>', 'cn-hangzhou')


request=DescribeInstancesRequest()

request.set_accept_format('json')

response=client.do_action_with_exception(request)

# python2:? print(response)

print(str(response, encoding='utf-8'))


创建命令

#!/usr/bin/env python

#coding=utf-8

from aliyunsdkcore.client import AcsClient

from aliyunsdkcore.acs_exception.exceptions import ClientException

from aliyunsdkcore.acs_exception.exceptions import ServerException

from aliyunsdkecs.request.v20140526.CreateCommandRequest import CreateCommandRequest

client=AcsClient('<accessKeyId>', '<accessSecret>', 'cn-hangzhou')

request=CreateCommandRequest()

request.set_accept_format('json')

response=client.do_action_with_exception(request)

# python2:? print(response)

print(str(response, encoding='utf-8'))


这里会返回一个云助手命令id,返回结果:

{

"RequestId": "E69EF3CC-94CD-42E7-8926-F133B86387C0",

"CommandId": "c-7d2a745b412b4601b2d47f6a768d3a14"

}

执行命令

#!/usr/bin/env python

#coding=utf-8

from aliyunsdkcore.client import AcsClient

from aliyunsdkcore.acs_exception.exceptions import ClientException

from aliyunsdkcore.acs_exception.exceptions import ServerException

from aliyunsdkecs.request.v20140526.InvokeCommandRequest import InvokeCommandRequest

client=AcsClient('<accessKeyId>', '<accessSecret>', 'cn-hangzhou')

request=InvokeCommandRequest()

request.set_accept_format('json')

response=client.do_action_with_exception(request)

# python2:? print(response)

print(str(response, encoding='utf-8'))

返回结果

{

"RequestId": "E69EF3CC-94CD-42E7-8926-F133B86387C0",

"InvokeId": "t-7d2a745b412b4601b2d47f6a768d3a14"

}

安全组部分就省略了,根据API文档

2、通过GET/POST 使用

这里先说下公共请求参数

名称

类型

是否必需

描述

Action

String

API的名称。取值请参见API概览。

AccessKeyId

String

访问密钥ID。AccessKey用于调用API,而用户密码用于登录 ECS管理控制台。

Signature

String

您的签名。取值请参见签名机制。

SignatureMethod

String

签名方式。取值:HMAC-SHA1

SignatureVersion

String

签名算法版本。取值:1.0

SignatureNonce

String

签名唯一随机数。用于防止 *** 重放攻击,建议您每一次请求都使用不同的随机数。

Timestamp

String

请求的时间戳。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。示例:2018-01-01T12:00:00Z 表示北京时间2018年01月01日20点00分00秒。

Version

String

API版本号,格式为YYYY-MM-DD。取值:2014-05-26

Format

String

返回参数的语言类型。取值范围:

·? json

·? xml

默认值:xml

2.1 GET请求

https://ecs.aliyuncs.com/?Action=DescribeInstanceStatus

&RegionId=cn-hangzhou

&PageSize=1

&PageNumber=1

&InstanceId.1=i-bp1j4i2jdf3owlhe****

&<公共请求参数>

XML返回格式:

<DescribeInstanceStatusResponse>

<PageNumber>1</PageNumber>

<InstanceStatuses>

<InstanceStatus>

<Status>Running</Status>

<InstanceId>i-bp1j4i2jdf3owlhe****</InstanceId>

</InstanceStatus>

</InstanceStatuses>

<TotalCount>58</TotalCount>

<PageSize>1</PageSize>

<RequestId>746C3444-9A24-4D7D-B8A8-DCBF7AC8BD66</RequestId>

</DescribeInstanceStatusResponse>

*** ON返回格式

{

"PageNumber": 1,

"InstanceStatuses": {

"InstanceStatus": [

{

"Status": "Running",

"InstanceId": "i-bp1j4i2jdf3owlhe****"

}

]

},

"TotalCount": 58,

"PageSize": 1,

"RequestId": "746C3444-9A24-4D7D-B8A8-DCBF7AC8BD66"

}

2.2 POST请求

POST / HTTP/1.1

Host: ecs.aliyuncs.com

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

Accept-Encoding: gzip, deflate

Content-Type: application/x-www-form-urlencoded

Content-Length: 0

Action=DescribeInstanceStatus&RegionId=cn-hangzhou&PageSize=1&PageNumber=1&InstanceId.1=i-bp1j4i2jdf3owlhe****&<公共请求参数>


返回跟GET方式一样

工具使用

图形化界面,没什么说的。附一张截图相信大家都明白了。

1608527959_5fe03057b24fac805c728.png!small?1608527960064

结束

阿里云为运维人员与开发人员提供了方便,但同时自身也要加强安全意识,注意自己的key不要泄露,不然直接接管阿里云所有esc主机,风险比一般高危漏洞都还要高。

下载链接及漏洞文章

文章链接:https://www.freebuf.com/articles/web/255717.html

工具下载:凌晨安全,关注公众号回复Accesskey或accesskey即可获得工具下载地址

1608529585_5fe036b1dbbcbc0cda7a0.png!small?1608529586301



相关文章

深圳开启培训深圳私人高端商务女活动

商务经纪人培训管理中心是专业学习培训商务艺人经纪人的,“深圳打开学习培训深圳个人高档商务女学妹主题活动”但是大伙儿听这一姓名得话,应当還是非常好了解的。所以说,有想当商务艺人经纪人的,“深圳打开学习培...

全国5名全盲考生参加高考怎么回事 盲文试卷长什么样子

全国5名全盲考生参加高考怎么回事 盲文试卷长什么样子

今天,2020年全国统一高考开始,记者从教育部考试中心了解到,今年来自山西、安徽、上海、西藏等四个省、市、自治区共有5名全盲考生使用盲文试卷参加考试。其中,有两名西藏全盲藏族考生,使用的是藏文盲文试卷...

怎样定位自身的网站

引言 大家最先要确立自身的网站是盈利站还是是非非盈利站;坚信百分之九十的网站站长全是为了更好地网站可以盈利,那麼即然要盈利大家最先得为自己网站做好精确的定位,定位不确立模糊不清网站提升也是做不上去的...

夫妻推油?中式推油有哪些功效

推油一词是由摩挲、按矫、按摩逐渐演变而来的。它不仅是名词的变更,而且包含着千百年来,从事推油医术的医师不断总结,不断创新,不断发展的结果。推油医术是中国古老的医治伤病的方法,是目前中医学的一个组成部分...

怎么看女朋友陌陌信息

. 很多妈妈说自己宝宝总是在准备睡时和睡着后哭的很厉害,没有饿肚子、没有尿裤子、摸摸小手也是暖和的,更没有发烧,但为什么睡前总是哭闹又睡不安稳呢,下面友谊长存的小编就来说说:孩子总爱在睡觉前后哭怎么...