主页 > 网络知识 > Red Team 又玩新套路,竟然这样隐藏 C2(3)

Red Team 又玩新套路,竟然这样隐藏 C2(3)

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

 

所以大家可以看到,要是我在里面写一个请求方法,请求一个固定地址,会发生什么呢,会不会云函数自动代替我完成对目标地址的请求,就像 VPN 或者某科学/上网工具一样?

所以,我动手试了一下。

把请求地址写成了我们的官网:

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

可以看到, 访问之后果然是代替我们请求了我们公司官网的地址。

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

到这里就是正式编写我们的函数了。

我们要实现一个效果就是收集请求端的数据包,收集请求包请求数据,然后把请求包原样发送给我们的 CS 服务器,最后收集 CS 服务器的返回包返回给请求方。

具体的代码如下:

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

后面的代码参考了「风起」的文章中把 body 中标识字节的 b’’ 字段舍弃的方法。

注意这里是某 B 公有云云函数的规定,必须要返回一个带  "sBase64Encoded,statusCode, headers,body 字段的一个字典。

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

另外一个坑是,某 B 公有云云函数的超时时间的问题。

当我们配置好之后,访问可能会遇到下图所示报错:

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

是因为 CS 马在运行后会先下载一个 200K+ 的配置文件(这个研究过 CS 马的童靴应该很了解),而我们的云函数在下载这么大的文件的时候会超时。

所以这个问题很难发现,直接让笔者整个周末都在研究这个问题。

顺便吐槽下某 B 公有云的错误返回,实在是太概括了,根据返回根本定位不到问题在哪里,要自己一行一行的 re 代码…… 快哭了。

这里超时时间直接给他拉满,设成 100s。

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

函数配置好之后,我们就可以用我们的地址上线啦。期待,呲溜~

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

虚拟机运行:

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

虚拟机抓包发现请求包已经发出去了。

 

Red Team 又玩新套路,竟然这样隐藏 C2

 

仔细看一下,确实发出去的包的地址确实是某 B 公有云主机的地址。

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!