0x00 起源

之前分析某设备被入侵,一直没查出来攻击者是怎么黑掉设备的,于是对着设备一通分析。结果发现了另外一条黑进去的方法。。。当然最好是弄清楚了实际原因,附带给把这个意外的漏洞给修了,回去研究发现原因很简单。

顺带一提,漏洞形成的原因虽然是Tomcat本身的原因,但是开发公司各种糟糕的配置是把该问题放大的帮凶。

tomcat是一个开源Web服务器,基于Tomcat的Web运行效率高,可以在一般的硬件平台上流畅运行,因此,颇受Web站长的青睐。不过,在默认配置下其存在一定的安全隐患,可被恶意攻击。

0x01 问题起源

Tomcat是一个开源Web服务器,基于Tomcat的Web运行效率高,最方便的是没有复杂的安全,解压文件就能使用,不过因为Tomcat实在太火了,被人研究的也很透彻。

后台界面
  • Tomcat的默认后台地址为:http://域名:端口/manager/html.

进入之后弹出登陆对话框,Tomcat默认的用户名admin,密码为空。原因很简单,默认的配置是没有给他配置密码的,当然如果碰上密码不正确,可以试试弱口令。

  • 获取Webshell

在管理界面有很多信息可以查看,包括Linux版本,Tomcat版本,相关路径等等
管理界面有个模块,可以上传WAR文件。Tomcat可以解析WAR文件,能够将其解压并生成web文件。

如果将一个jsp格式的webshell打包然后改名为WAR,将其上传到服务器,
然后在上传路径上打开jsp木马,这样就获得了一个Webshell。

  • 获取设备root权限

Tomcat服务默认是以system权限运行的,因此该jsp木马就继承了其权限,然后可以干什么事我就不说了。

0x02 漏洞防范

  1. 修改\conf\tomacat-users.xml 把默认密码修改为强密码。

  2. 关闭或者删除Tomcat后台 \webapps全部删除就好(简单暴力)。

  3. 服务降权,限制Tomcat的权限。

0x03 尾巴

该漏洞主要是几个连环的问题引起的:

  1. Tomcat后台
  2. 弱密码
  3. 支持文件上传
  4. 权限不当

不光是Tomcat,所有的服务器都得注意以上的一些安全问题。