腾讯云云函数初探
云函数地址
https://console.cloud.tencent.com/scf
云函数开发文档
https://cloud.tencent.com/document/product/583/19806
一、新建云函数
选择自定义模板
然后点击完成。会自动部署完成
二、创建触发器
触发器这里选择API网关的方式
提交之后进行测试
三、代码完善
参考:
# -*- coding: utf8 -*- import requests import socket import base64 import json def main_handler(event, context): headers=event['headers'] password = "ttttttttt" if 'body' in event and headers['password'] == password: return return_data(event['body']) def return_data(data): response={ "isBase64Encoded": False, "statusCode": 200, "headers": {'Content-Type': 'text/html;charset=utf-8'}, "body": data } return response
解释一下官方文档中
Python 环境下的入参包括 event 和 context,两者均为 Python dict 类型。 event:使用此参数传递触发事件数据。 context:使用此参数向您的处理程序传递运行时信息。
如果你不清楚event 里面到底是什么内容。那么可以使用json.dumps 打印出来。返回的是
返回如下:
那么到这里的话。应该理解了他那两个变量的一个具体的东西了
,下一步根据传递的参数来请求一个url
代码如下:
# -*- coding: utf8 -*- import requests import socket import base64 import json def main_handler(event, context): headers=event['headers'] password = "ttttttttt" rtext = '' if 'body' in event and headers['password'] == password: body2 = json.loads(event['body']) if body2['args']=='get': data=requests.get(url=body2['url']) return return_data(data.text) elif body2['args']=='post': data=requests.post(url=body2['url'],data=body2['post_data']) return return_data(data.text) def return_data(data): response={ "isBase64Encoded": False, "statusCode": 200, "headers": {'Content-Type': 'text/html;charset=utf-8'},#+ str(resp.apparent_encoding)}, "body": data } return response
然后burp 去请求当前url
再请求一次
它每次请求都是一个新的IP去请求的。
其实云函数可以做很多事情。这个可以自行思考了。可以做成一个小型的扫描器