在日常渗透过程中我们经常遇到信息泄露出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
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文档
这里先说下公共请求参数
名称 | 类型 | 是否必需 | 描述 |
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方式一样
图形化界面,没什么说的。附一张截图相信大家都明白了。
阿里云为运维人员与开发人员提供了方便,但同时自身也要加强安全意识,注意自己的key不要泄露,不然直接接管阿里云所有esc主机,风险比一般高危漏洞都还要高。
中新网贵州织金11月12日电(记者 刘鹏)中国全国“万企帮万村”精准扶贫行动现场交流会暨先进民营企业表彰会12日在贵州省织金县召开。记者会上获悉,五年间,中国10.95万家民营企业参与脱贫攻坚战,...
近日,双十一狂欢之夜节目表官方宣布,针对综艺节目特邀嘉宾還是较为希望的,各大卫视的话题也是许多,主题风格各种各样,那麼,双十一狂欢之夜有什么综艺节目?各大卫视双十一晚会是如何的?下边我就而言说。 2...
受疫情影响,物流不畅,品牌商无法通过本来的形式毗连到用户,却意外地发明社区社群这一新路径。差异以往的平台商当主角,或者通过该路径,品牌商可以或许得到主导互联网贸易的时机。 没有社区社群,品牌商无法普...
爱凝结态 假如物质不绝冷下去,冷下去……一直冷到不能再冷下去,好比说,靠近绝对零度(-273.16℃)吧,在这样的极低温下,物质又会呈现什么奇异的状态呢? 这时。 仿佛火是这种态,可是这种态是...
蚂蚁庄园8月21日答案是什么?蚂蚁庄园今天的题目是结婚证内页最下方印的一排字母“MZHBJZH”是什么含义;雄鹿的哪个身体部位有再生功能,每年都会完整地重生;手指上长倒刺,很可能是因为?下面就是这三道...
专访:金砖国家求同存异 为建设更美好世界而努力——访巴西—中国研究中心主任卡瓦略 新华社里约热内卢11月17日电 专访:金砖国家求同存异 为建设更美好世界而努力——访巴西—中国研究中心主任...