前言

持续更新:整理下渗透测试工作中发现过的漏洞(包含漏洞描述、漏洞等级、漏洞验证、修复建议),这里不深究漏洞产生的各种后利用或者绕过方式,漏洞验证过程不局限于文章中的方法,能够证明漏洞存在即可。

0x01 漏洞描述

- GoTTY 未授权远程命令执行漏洞 -

GoTTY 是一个简单的基于 Go 语言的命令行工具,它可以将终端(TTY)作为 Web 程序共享。GoTTY 的架构是基于 Hterm + Web Socket 的,它能在 Web 浏览器上运行一个基于 Java 的终端,并支持通过 HTTP 和 HTTPS 访问。当 GoTTY 未正确配置身份验证启动时,任意用户可通过 GoTTY 程序的 Web 页面未授权远程命令执行。

0x02 漏洞等级

威胁级别 高危 中危 低危

0x03 漏洞验证

可通过 Web 探测响应包 Header 中的 Server 字段指纹识别 GoTTY 程序服务。

访问 GoTTY 未授权 Web 界面,输入命令执行即可。

0x04 漏洞修复

  1. 限制客户端访问,GoTTY 使用-c选项启用基本身份验证。
  2. 限制访问路径,GoTTY 使用-r选项,会生成一个随机 URL,以便只有知道该 URL 的人才能访问服务器。
  3. 默认情况下,服务器和客户端之间的所有流量均未加密。当通过 GoTTY 发送机密信息时,建议使用-t在会话中启用 TLS/SSL 的选项