记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

cobaltstrike配置nginx反向代理

2020-08-18 16:31



1、前言




在使用cobaltstrike过程中,其web服务经常遭到各种扫描探测,就比如下图我的tomcat遭到的扫描,当天的日志达到了117MB:


      


所以想试试反向代理,也看过一些文章讲的,我是觉得看了做了才等于会了。


这里试着在Windows下使用nginx反向代理来隐藏C2服务器,降低性能消耗,做一些简单的流量处理,进行一些实践测试。



2、端口配置



然后就是Cobaltstrike的端口配置,配置c2端口为nginx的端口(代理),Bind端口为实际c2监听端口:




3、启动nginx




下载nginx,命令行下使用nginx -c conf/nginx.conf执行后,修改配置文件,再使用nginx –s reload进行重载使配置生效,访问测试:






4、配置Nginx




配置nginx,主要就是要把信标流量给cs服务器,这里由于我们使用


jquery-c2.4.0.profile

(https://github.com/rsmudge/Malleable-C2-Profiles)

来进行流量伪装,


可以在这个配置文件中看到对http-get的配置信息,所以payload会请求伪装的uri来进行通信:



所以在nginx中配置,匹配jquery开头的url进行反向代理,匹配成功后转发给我们的cs 8089:


location ~*/jquery {

                     #start with jquery

                     proxy_pass  http://127.0.0.1:8089;

        }


先访问一下看看:



好了,测试一下上线后发现外部地址显示为127.0.0.1:



这里需要给nginx配置一下源IP,加入配置项:


proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;


配置如下:


location ~*/jquery {

                     #start with jquery

                     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                     proxy_pass  http://127.0.0.1:8089;

        }

             

               location / {

             proxy_pass  http://www.qq.com/;

        }


配置好后还需要到profile中设置真实IP获取,这里是用的 X-Forwarded-For,可以在profile中看到设置:



然后再进行测试,命令执行正常:




5、配置防火墙




很关键的一步,配置防火墙,拦截外部访问~:



成功:




端口开放情况:


80/tcp    open  http (nginx)

3389/tcp  open  ms-wbt-server (远程桌面)

5985/tcp  open wsman   (防火墙拦截)

33890/tcp  open unknown  (CS服务端)

33891/tcp  open unknown  (CS https监听器)

47001/tcp  open winrm (禁用Windows Remote Management)



end





知识来源: https://mp.weixin.qq.com/s?__biz=MzI5MDE0MjQ1NQ==&mid=2247486973&idx=1&sn=a48d48060328172cfe3e40193bbb5244&chksm=ec252c65db52a57363e62bb902d85899b3d3cc6ff7132e9825e735114630d23018861d4fa2b6&mpshare=1&

阅读:24803 | 评论:0 | 标签:nginx

想收藏或者和大家分享这篇好文章→复制链接地址

“cobaltstrike配置nginx反向代理”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

ADS

标签云