正在阅读:

Tomcat8080端口爆破及原理

Tomcat是非常常见的web服务程序,但是,有些管理员对Tomcat不熟悉,导致配置不当,很容易就会被入侵,使用8080爆破工具扫描很容易就能找到大量的不安全不服气,也很容易被提权,博主之前也使用该工具进行爆破,后来就先弄清楚其原理,经过后来的研究终于弄明白了Tomcat的登陆认证原理。下面进入正题。

一、Tomcat基础认证

说白了就是登陆tomcat。

例子:http://101.201.151.191:8080/manager/html

tomcat登陆认证

如果账号和密码输入错误就会返回401页面。

下面输入正确的账号和密码登陆,返回200页面。

登陆成功二、查看请求头,发现重点


1
2
3
4
5
6
7
8
9
10
11
GET /manager/html HTTP/1.1
Host: www.xxx.com
Connection: keep-alive
Cache-Control: max-age=0
Authorization: Basic YWRtaW46MTIzNDU2
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding: gzip, deflate, sdch, br
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6,zh-TW;q=0.4,ko;q=0.2
Cookie: JSESSIONID=xxxxxxxxx;

其中的 Authorization 这一行才是重点。


1
Authorization: Basic YWRtaW46MTIzNDU2

我们可以看到,这个数据包时经过加密发送过去的,其中有Basic字样,所以猜它可能是base64加密方式。

下面对 YWRtaW46MTIzNDU2 进行解码

base结果发现解密后的结果就是  账号:密码

三、进行爆破

通过上面的研究发现,其实Tomcat的内页判断是否是管理员是通过请求头Authorization  后面的加密代码,所以只要在求着这个页面的时候自己定义这个头就可以了,登录成功返回200,登录失败返回401。

利用这一点,我们可以使用Burpsuite工具进行爆破,或者自己编写脚本进行爆破都可以。

基本原理就是这样,具体的爆破方式大家可以自己选择。google上有很多爆破方式,只要你有强大的字典和牛逼的服务器,总有跑出来的可能。

四、避免被爆破

避免被爆破的方式有很多,比如修改Manager的目录名称,或者将账号密码修改的复杂一点,下面就说一下修改Tomcat的用户密码。

只需要修改tomcat文件目录下面/conf/tomcat-users.xml文件即可。

mima

修改上图的username和password后面的值,然后重新启动tomcat进行登陆即可。

留下脚印,证明你来过。

*

*

流汗坏笑撇嘴大兵流泪发呆抠鼻吓到偷笑得意呲牙亲亲疑问调皮可爱白眼难过愤怒惊讶鼓掌