在Tomcat中,应用程序的部署很简单,只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,可以在远程通过Web部署和撤销应用,当然本地也可以,本案例就是利用这个特性来构建后门程序的。
Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache。可以将Tomcat和Apache集成到一块,让Apache处理静态Html,而Tomcat处理Jsp和Servlet.这种集成只需要修改一下Apache和Tomcat的配置文件即可。
(一)检查Tomcat设置。服务器安装了Apache Tomcat后会默认开放8080端口供外部连接,一般在浏览器中输入“IP:8080”或者域名来访问Apache Tomcat页面,如图1所示。
 
图1 连接到Tomcat的页面
(二)查看Tomcat用户配置文件。Tomcat安装完成后有一个配置文件“tomcat-users.xml”,它位于Tomcat程序安装目录下的conf目录下,直接打开该文件可以看到其中关于用户名和密码的明文值,如图2所示,找到并记住包含“admin,manager”那一行的用户名和密码。(这里的tomcat-user.xml指的是Catalina_base下的那个tomcat-users.xml文件,而不是Catalina_home下的)
 
图2 获取用户配置的用户名和密码
说明:
(1)有很多对tomcat不是很了解的管理员在安装完Tomcat后并没有修改默认密码,用户名是admin,密码为空,如果是这种情况可以直接登录。
(2)如果用户修改了该密码,那么其密码一定保存在“tomcat-users.xml”中,因此可以通过Webshell来获取这个文件的内容。
(三)进入Tomcat管理。Tomcat提供了在线管理,本案例也正式利用在线管理来构建后门的。在图1中单击左上角下面的“Tomcat Manager”链接后,会弹出一个要求输入用户名和密码的窗口,该窗口跟Windows登录窗口有点类似,如图3所示。
 
图3 登录Tomcat管理应用
(四)查看部署情况。在图3中输入从“tomcat-users.xml”文件中获取的具有管理员权限的用户名和密码,验证通过后进入部署管理页面,如图4所示。
 
图4 部署管理页面
说明:
(1)在部署管理页面中可以“Start”(启动)、“Stop”(停止)、“Reload”(重载)、“Undeploy”(删除部署)已经部署的项目,单击“Undeploy”会对文件进行物理删除。
(2)部署的文件夹是以*.war文件的名称,例如上传的文件是job.war,则在Tomcat目录中会对应生成一个“job”文件夹 。
(五)部署JSP WebShell后门程序。在部署管理页面的下方有一个“WAR file to deploy”,单击浏览选择一个已经设置好的后门war文件,在本例中的后门程序为job.war,单击“deploy”将该文件部署到服务器上,如图5所示。
 
图5 上传后门war文件到服务器
说明
(1)部署是其文件必须是war文件。
(2)将winzip软件安装在系统中,然后将单一或者多个jsp后门文件压缩成一个压缩文件,压缩成功后,将“*.zip”文件更名为“*.war”即可。
(3)上传文件后,tomcat会自动进行部署并运行。
(六)测试后门程序。在地址栏中输入“部署文件名称/jsp文件”,例如在本例中其正确的访问是“[url]http://127.0.0.1:8080/job/job.jsp[/url]”,如果设置正确会显示如图6所示的Webshell登录窗口。
 
图6 登录webshell
(七)在Webshell中执行命令。在Webshell中输入密码后,进入到Webshell管理界面,默认显示服务器的一些信息,在功能菜单中选择“执行命令”,并在执行命令输入框中输入“netstat -an”命令可以查看网络连接等,如图7所示。
 
图7 执行命令
说明
(1)通过这种方式部署的Jsp后门程序具有较大权限,可以执行添加用户等危险命令。
(2)jsp后门中可以通过“文件系统”模块来对文件进行操作;通过“数据库”模块来连接数据库等操作;
(3)本案例构建后门也正是这里,平时可以在系统中保留一个小的后门程序,如果后门程序被杀毒软件查杀或者被管理员发现并删除掉了,则可以通过以上步骤重新进行部署,从而循环永久保留后门。
小结
   本案例介绍的情况适合于管理员(admin)密码为空的情况,同时也适合于获取了tomcat中的tomcat-users.xml文件中的用户名和密码的情况。一般来讲内网相对防护要弱一些,因此该案例对于内网渗透时有一定的帮助。由于本人对jsp不是特别熟悉,尤其是部署设置,不知道在jsp中是否也可以进行诸如IIS中的严格权限限制,能否禁止jspwebshell的执行,本案例是对服务器攻防的一种探讨,功能强大的应用程序往往一个弱小的漏洞就可以攻破整个系统。
后记
    通过google对tomcat的一些关键字进行了搜索,没有遇到管理员为空的,我使用inurl:8080 关键字进行搜索的(常用方法,其实修改下端口就能避免大部分这种攻击),不知道还有什么好的方法来进行搜索

Tomcat Manager 用户名和密码配置的更多相关文章

  1. Tomcat Manager用户名和密码

    在浏览器输入http://localhost:8080/,打开Tomcat自带的默认主页面,右侧有“administration”“documentation”等模块.选择“administratio ...

  2. 利用Tomcat的用户名和密码构建“永久”后门

    从本案例中可以学到: (1)关于JSP的一些基础知识 (2)利用Tomcat的用户名和密码来构建后门 本文首先要感谢<黑客手册>“非安全.后生”编辑为本为提供了帮助,还要感谢网友“伤心的鱼 ...

  3. 设置Tomcat管理员用户名和密码

    http://dove19900520.iteye.com/blog/1774980 今天tomcat出点问题,然后我就想进入tomcat manager看看,结果怎么输入密码都不行,后来网上查了查才 ...

  4. tomcat manager 的用户权限配置,及环境变量CATALINA_HOME的错位问题

    因为tomcat的manager是管理其他项目的发布.删除等操作的管理项目,所以需要为其设置登陆用户和密码,以及用户相应的访问权限,配置如下: tomcat-users.xml需要添加如下内容: &l ...

  5. 配置tomcat的用户名和密码

    <role rolename="manager-gui"/> <role rolename="manager-script"/> < ...

  6. .tomcat 管理 给tomcat设置用户名和密码登录

    如果点击红色框框 出现403以下错误 看这个帖子可以解决 tomcat访问管理页面出现:403 Access Denied 解决方法 tomca管理 测试功能,生产环境不要用. Tomcat管理功能用 ...

  7. tomcat 登录时用户名和密码问题

    在编程的时候我们经常在myeclipes中直接部署web程序,大多数情况下不会登陆tomcat,这样时间长了我们就忘记了tomcat的登陆用户名和密码,下面就说一下怎么找到tomcat的用户名和密码吧 ...

  8. Tomcat免安装版+Eclipse配置

    Tomcat是目前比较流行的开源且免费的Web应用服务器,在我的电脑上第一次安装Tomcat,再经过网上教程和自己的摸索后,将这个过程 重新记录下来,以便以后如果忘记了可以随时查看. 注意:首先要明确 ...

  9. Tomcat配置用户名和密码

    1.在浏览器输入http://localhost:8080/,打开Tomcat自带的默认主页面,右侧有"administration""documentation&quo ...

随机推荐

  1. 使用media Queries实现一个响应式的菜单

    Media queries是CSS3引入的一个特性,使用它可以方便的实现各种响应式效果.在这个示例中我们将会使用media queries实现一个响应式的菜单.这个菜单会根据当前浏览器屏幕的大小变化而 ...

  2. paip.提升性能----硬盘不同转速不同缓存对比转

    paip.提升性能----硬盘不同转速不同缓存对比转 西数 WDC WD2500BEVT-08A23T1 ( 250 GB / 5400 转/分 ) 5400转 8M缓存 单碟250 GB      ...

  3. GTD时间管理(3)---梳理总结

    一:收集箱   1:灵感和想法 2:交代事情 3:任何困扰你的事     二:清单容器     1:通过行动性和非行动性原则 2:通过2分钟原则 3:通过人员性质原则  三:组织 (人,事,时 的组合 ...

  4. Linux2.6 内核的 Initrd 机制解析(转)

    from: https://www.ibm.com/developerworks/cn/linux/l-k26initrd/ 简介: Linux 的 initrd 技术是一个非常普遍使用的机制,lin ...

  5. 超体.特效中英字幕.Lucy.2014.BD1080P.X264.AAC.English&Mandarin.CHS-ENG

    资源名称 其它信息 资源大小 BT下载 超体.Lucy.2014.BD-MP4-原创翻译中英双语字幕.mp4 seeders: / leechers: 511.15MB 下载 [飘域家园]移动迷宫.T ...

  6. jackson readTree

    String jsonstr = "{\"msg\":{\"head\":{\"version\":\"1.0\&quo ...

  7. python报错:SyntaxError: Non-ASCII character '\xe5'的解决方法

    最近在学习机器学习,上面的代码都是一些python代码,对于python只是会一些基础性的东西,刚才就遇到了一个比较low的问题,但是还是记录一下吧. 在python代码中出现了中文,但是我又把# - ...

  8. 用户管理 之 Linux 用户管理工具介绍

    Linux是一个多用户的操作系统,她有完美的用户管理工具,这些工具包括用户的查询.添加.修改,以及用户之间相互切换的工具等:通过这些工具,我们能安全.轻松的完成用户管理: 在这里我们要引入用户控制工具 ...

  9. 初探单点登录 SSO

    单点登录 单点登录(Single sign-on,SSO)是一种访问控制,在多个软件应用中,用户只需登录其中一个应用,就可以成功访问其他应用:同样,用户只需注销其中一个应用,就可以成功注销其他应用. ...

  10. Navi.Soft30.开放平台.腾讯.开发手册

    1系统简介 1.1功能简述 现在是一个信息时代,并且正在高速发展.以前获取信息的途径非常少,可能只有电视台,收音机等有限的来源,而现在的途径数不胜数,如:QQ,微信,官方网站,个人网站等等 本开发手册 ...