Tomcat后台管理账号扫描利用及防御

  • A+
所属分类:安全文章

     目前很多大型网站和公司都采用Java做为支撑,Tomcat是应用(Java)服务器,它只是一个servlet容器,是Apache的扩展,其后台管理功能非常强大,可以用来直接部署war文件。除了用来部署正常的应用外,还可以用其来获取webshell,在渗透中,一旦获取了Tomcat后台管理账号,意味着99%的几率可以获取webshell,而且极有可能获得服务器权限。

11.1Tomcat配置文件

Tomcat的配置文件并不多,分别由context.xmlweb.xmlserver.xmltomcat-users.xml 4xml文件组成,每个文件都有自己的功能与配置方法。Context.xml Tomcat 公用的环境配置,Tomcat服务器会定时去扫描这个文件。一旦发现文件被修改(时间戳改变了),就会自动重新加载这个文件,而不需要重启服务器。

web.xmlWeb应用程序描述文件,都是关于是Web应用程序的配置文件,所有Web应用的 web.xml 文件的父文件;server.xml是对tomcat的设置,可以设置端口号,添加虚拟机这些的,是对服务器的设置;tomcat-users.xml是配置关于用户角色、管理员的信息,后台管理账号就在该文件中进行配置。

11.2Tomcat后台管理账号及密码获取思路及方法

   ApacheTomcat后台账号及密码可以有一些方法来获取:

1.程序存在文件包含漏洞

通过应用程序或者web程序文件包含漏洞来读取Tomcat配置文件tomcat-users.xml

2.源代码泄露

   为了部署方便,有些公司会将Tomcat整个应用程序及web程序进行打包,一旦源代码泄露也可以获取Tomcat用户配置文件。

3.暴力破解

   通过一些工具对后台口令进行暴力破解。

11.3使用Apache Tomcat Crack暴力破解Tomcat口令

1.设置目标

在起始IP地址中输入“216.84.0.1”,在终止地址中输入“216.120.0.1”,单击“添加”按钮,将该地址段添加到扫描地址段中,如图1所示,其它使用默认设置,单击“开始”即开始暴力破解Tomcat服务器口令。

Tomcat后台管理账号扫描利用及防御

1暴力破解Tomcat口令

2.自定义密码字典

   单击设置,可以自定义密码字典,密码字典使用原则是先简单后容易,对于已经获取了内网部分权限时,可以使用收集的密码进行暴力破解。

3.登录尝试

在扫描结果中选择“http://216.86.144.162:8080/manager/html”,然后登录测试,如图2所示,单击“Tomcat Manager”进行登录测试,输入用户名和密码进行登录,如果能够正常登录,则可以进行后续获取webshell步骤。

Tomcat后台管理账号扫描利用及防御

2对扫描结果进行测试

11.4获取webshell

1.部署war格式的Webshell

进入到“Tomcat Manager”管理后台后,到最下方进行war文件的部署,如图3所示,单击“浏览”,选择一个warWebshell,该Webshell必须是JspWebshellwar格式可以在压缩时将后缀名字自定义为war即可。

Tomcat后台管理账号扫描利用及防御

3部署war格式的Webshell

2.查看Web部署情况

文件上传成功后,Tomcat会自动部署war文件,如图4所示,可以看到在后台中多了一个Browser的链接,单击该链接即可进入部署的文件夹下。部署成功后,可以对部署的JSP Webshell 启用(start)、停止(stop)、重载(Reload)和卸载(Undeploy)。

Tomcat后台管理账号扫描利用及防御

4查看Web部署情况

5.获取Webshell

在部署时,尽量命名Jsp文件为index.jsp,这样在部署成功后,访问部署的链接地址即可,否则需要使用“部署文件夹+具体的webshell名称”才能正确访问Webshell地址,如图5所示

Tomcat后台管理账号扫描利用及防御

5获取Webshell

11.5webshell后渗透

1.查看用户权限

Webshell中单击“系统命令”,进入执行命令界面,如图6所示,在文本框中输入“id”命令,获取系统当前用户的权限等信息。

Tomcat后台管理账号扫描利用及防御

6获取当前用户信息

2.上传其他的Webshell

通过获取的Webshell上传一个JbrowserWebshell,此Webshell浏览文件非常方便,如图7所示。

Tomcat后台管理账号扫描利用及防御

7上传Webshell

3.获取系统加密的用户密码

在执行命令中输入“cat /etc/shadow”命令获取当前linux系统中的所用用户的加密密码值,如图8所示,该密码是采用md5加密的,通过cmd5.com网站进行破解。

Tomcat后台管理账号扫描利用及防御

8获取系统用户密码加密值

4.获取root用户的历史操作记录

在执行命令中输入“cat /root/.bash_history”命令查看root用户的历史操作记录,只有具有root用户权限才能查看该历史记录文件,如图9所示。

Tomcat后台管理账号扫描利用及防御

9查看root用户的历史操作记录

5.查看该网站域名情况

使用“www.yougetsignal.com”网站的反查IP域名,获取该IP地址的两个域名“communityaccesssystems.com”和“richardliggitt.com”,如图10所示,单击该域名查看域名能否正常访问。

Tomcat后台管理账号扫描利用及防御

10查看该网站域名情况

6.获取该网站的真实路径

通过查看“/etc/passwd”文件中的网站用户来获取网站的真实路径,如图11所示,通过webshell定位到网站的真实路径。在“/etc/passwd”文件中会指定单独的用户作为网站用户,同时会指定该用户的默认目录,该默认目录即为网站的真实路径。

Tomcat后台管理账号扫描利用及防御

11获取网站的真实路径

7.Webshell后门

找到网站的真实路径后,继续查看该文件夹下的文件和内容,如图12所示,该文件夹为testphp,即为php的测试文件夹,上传一个网页木马或者在源代码中加入一句话后门。

Tomcat后台管理账号扫描利用及防御

12网站留后门

11.6扫描总结与安全防御

1.扫描总结

本文介绍了如何通过Apache Tomcat Crack来暴力破解Tomcat口令,只要知道用户的名称,通过字典能够对目标进行暴力破解,获取Tomcat管理员的用户名和密码后可以通过war文件来部署jspWebshell,如果设置不当,获取的Webshell权限即为root权限,弱口令常见admin/admintomcat/tomcat等。

2.安全防御

1)设置tomcat后台管理员帐号为强口令密码,增加破解的成本。

2)如果有必要,可以禁止后台管理功能,在临时需要时开启,使用结束将其关闭。


本文始发于微信公众号(小兵搞安全):Tomcat后台管理账号扫描利用及防御

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: