| 关键词: Weblogic Resin 配置 nbsp 文件 应用 管理 Server 服务器 端口 |
1、java应用服务器 Java应用服务器主要为应用程序提供运行环境,为组件提供服务。Java 的应用服务器很多,从功能上分为两类:JSP 服务器和 Java EE 服务器。 1.1 常见的Server概述 常见的Java服务器:Tomcat、Weblogic、JBoss、GlassFish、Jetty、Resin、IBM Websphere、Bejy Tiger、Geronimo、Jonas、Jrun、Orion、TongWeb、BES Application Server、ColdFusion、Apusic Application Server、Sun Application Server 、Oracle9i/AS、Sun Java System Application Server。 Myeclipse比较方便的配置各式各样的Server,一般只要简单的选择下Server的目录就行了。 ![]() 1、2 构建WebShell war文件 1、打开Myeclipse新建Web项目 2、把jsp放到WebRoot目录下 3、导出项目为war文件 ![]() 2.2 Tomcat默认配置 1、tomcat-users.xml Tomcat5默认配置了两个角色:tomcat、role1。其中帐号为both、tomcat、role1的默认密码都是tomcat。不过都不具备直接部署应用的权限,默认需要有manager权限才能够直接部署war包,Tomcat5默认需要安装Administration Web Application。Tomcat6默认没有配置任何用户以及角色,没办法用默认帐号登录。 配置详解: http://tomcat.apache.org/tomcat- ... o.html#Introduction 2、context.xml Tomcat的上下文,一般情况下如果用Tomcat的自身的数据源多在这里配置。找到数据源即可用对应的帐号密码去连接数据库。 <Context> <WatchedResource>WEB-INF/web.xml</WatchedResource> <Resource name="jdbc/u3" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="xxxxx" password="xxxx" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.0.xxx:3306/xxx?autoReconnect=true"/> < /Context> 3、server.xml Server这个配置文件价值非常高,通常的访问端口、域名绑定和数据源可以在这里找到,如果想知道找到域名对应的目录可以读取这个配置文件。如果有用Https,其配置也在这里面能够找到。 4、web.xml web.xml之前讲MVC的时候有提到过,项目初始化的时候会去调用这个配置文件这个文件一般很少有人动但是不要忽略其重要性,修改web.xml可以做某些YD+BT的事情。 Tomcat口令爆破 Tomcat登录比较容易爆破,但是之前说过默认不对其做任何配置的时候爆破是无效的。 Tomcat的认证比较弱,Base64(用户名:密码)编码,请求:” /manager/html/”如果响应码不是401(未经授权:访问由于凭据无效被拒绝。)即登录成功。 conn.setRequestProperty("Authorization", "Basic " + new BASE64Encoder().encode((user + ":" + pass).getBytes())); 2.3 Tomcat获取WebShell Tomcat后台部署war获取WebShell 登录tomcat后台: http://xxx.com/manager/html ,一般用WAR file to deploy就行了,Deploy directory or WAR file located on server这种很少用。 1>Deploy directory or WAR file located on server Web应用的URL入口、XML配置文件对应路径、WAR文件或者该Web应用相对于/webapps目录的文件路径,然后单击 按钮,即可发布该Web应用,发布后在Application列表中即可看到该Web应用的信息。这种方式只能发布位于/webapps目录下的Web应用。 2>WAR file to deploy 选择需要发布的WAR文件,然后单击Deploy,即可发布该Web应用,发布后在Application列表中即可看到该Web应用的信息。这种方式可以发布位于任意目录下的Web应用。 其中,第二种方式实际上是把需要发布的WAR文件自动复制到/webapps目录下,所以上述两种方式发布的Web应用都可以通过在浏览器地址栏中输入http://localhost:8080/Web进行访问。 ![]() 3、Resin 3.2 Resin默认配置 1、resin.conf和resin.xml Tomcat和Rsin的核心配置文件都在conf目录下,Resin3.1.x 默认是resin.conf而4.0.x默认是resin.xml。resin.conf/resin.xml是Resin最主要配置文件,类似Tomcat的server.xml。 1>数据源: 第一节的时候有谈到resin数据源就是位于这个文件,搜索database(位于server标签内)即可定位到具体的配置信息。 2>域名绑定 搜索host即可定位到具体的域名配置,其中的root-directory是域名绑定的对应路径。很容易就能够找到域名绑定的目录了。 <host id="javaweb.org" root-directory="."> <host-alias-regexp>^([^/]*).javaweb.org</host-alias-regexp> <web-app id="/" root-directory="D:/web/xxxx/xxxx"/> < /host> 3.3 Resin默认安全策略 1>管理后台访问权限 Resin比较BT的是默认仅允许本机访问管理后台,这是因为在resin.conf当中默认配置禁止了外部IP请求后台。<resin:set var="resin_admin_external" value="false"/>修改为true外部才能够访问。 2>Resin后台管理密码 Resin的管理员密码需要手动配置,在resin.conf/resin.xml当中搜索management。即可找到不过需要注意的是Resin的密码默认是加密的,密文是在登录页自行生成。比如admin加密后的密文大概会是:yCGkvrQHY7K8qtlHsgJ6zg== 看起来仅是base64编码不过不只是admin默认的Base64编码是:YWRtaW4= Resin,翻了半天Resin终于在文档里面找到了: http://www.caucho.com/resin-3.1/doc/resin-security.xtp 虽说是MD5+Base64加密但是怎么看都有点不对,下载Resin源码找到加密算法: package com.caucho.server.security.PasswordDigest 这加密已经没法反解了,所以就算找到Resin的密码配置文件应该也没法破解登录密码。事实上Resin3的管理后台并没有其他Server(相对JBOSS和Weblogic)那么丰富。而Resin4的管理后台看上去更加有趣。 Resin4的加密方式和Resin3还不一样改成了SSHA: admin_user : admin admin_password : {SSHA}XwNZqf8vxNt5BJKIGyKT6WMBGxV5OeIi 详情: http://www.caucho.com/resin-4.0/admin/security.xtp 3.4 Resin获取WebShell As of Resin 4.0.0, it is now possible to deploy web applications remotely to a shared repository that is distributed across the cluster. This feature allows you to deploy once to any triad server and have the application be updated automatically across the entire cluster. When a new dynamic server joins the cluster, the triad will populate it with these applications as well. Web Deploy war文件大概是从4.0.0开始支持的,不过想要在Web deploy一个应用也不是一件简单的事情,首先得先进入后台。然后还得以Https方式访问。不过命令行下部署就没那没法麻烦。Resin3得手动配置web-app-deploy。 最简单的但又不爽办法就是想办法把war文件上传到resin-pro-3.1.13webapps目录下,会自动部署(就算Resin已启动也会自动部署,不影响已部署的应用)。 Resin3部署详情: http://www.caucho.com/resin-3.1/doc/webapp-deploy.xtp Resin4部署War文件详情: http://www.caucho.com/resin-4.0/admin/deploy.xtp Resin4进入后台后选择Deploy,不过还得用SSL方式请求。Resin要走一个”非加密通道”。 To deploy an application remotely: 1. log into the resin-admin console on any triad server. Make sure you are connecting over SSL, as this feature is not available over a non-encrypted channel. 2. Browse to the "webapp" tab of the resin-admin server and at the bottom of the page, enter the virtual host, URL, and local .war file specifying the web application, then press "Deploy". 3. The application should now be deployed on the server. In a few moments, all the servers in the cluster will have the webapp. ![]() Resin4敢不敢再没节操点?默认HTTPS是没有开的。需要手动去打开: conf esin.properties # https : 8443 默认8443端口是关闭的,取消这一行的注释才能够使用HTTPS方式访问后台才能够Web Deploy war。 ![]() 部署成功访问: http://localhost:8080/GetShell/Customize.jsp 即可获取WebShell。 4、Weblogic Weblogic默认端口是7001,Weblogic10g-12c默认的管理后台是:http://localhost:7001/console Weblogic10 以下默认后台地址是:http://192.168.80.1:7001/console/login/LoginForm.jsp ,管理帐号是在建立Weblogic域的时候设置的。 ![]() Weblogic控制台: Weblogic10以下默认管理帐号:weblogic密码:weblogic。关于Weblogic10++的故事还得从建域开始,默认安装完Weblogic后需要建立一个域。 WebLogic中的"域"? 域环境下可以多个 WebLogic Server或者WebLogic Server 群集。域是由单个管理服务器管理的 WebLogic Server实例的集合。 Weblogic10++域默认是安装完成后由用户创建。帐号密码也在创建域的时候设置,所以这里并不存在默认密码。当一个域创建完成后配置文件和Web应用在:Weblogic12user_projectsdomains”域名”。 1、Weblogic默认密码文件: Weblogic 9采用的3DES(三重数据加密算法)加密方式,Weblogic 9默认的管理密码配置文件位于: weblogic_9weblogic92samplesdomainswl_serverserversexamplesServersecurityoot.properties boot.properties: # Generated by Configuration Wizard on Sun Sep 08 15:43:13 GMT 2013 username={3DES}fy709SQ4pCHAFk+lIxiWfw== password={3DES}fy709SQ4pCHAFk+lIxiWfw== Weblogic 12c采用了AES对称加密方式,但是AES的key并不在这文件里面。默认的管理密码文件存放于: Weblogic12user_projectsdomainsase_domainserversAdminServersecurity boot.properties (base_domain是默认的”域名”)。 boot.properties: # Generated by Configuration Wizard on Tue Jul 23 00:07:09 CST 2013 username={AES}PsGXATVgbLsBrCA8hbaKjjA91yNDCK78Z84fGA/pTJE= password={AES}Z44CPAl39VlytFk1I5HUCEFyFZ1LlmwqAePuJCwrwjI= 怎样解密Weblogic密码? Weblogic 12c: Weblogic12user_projectsdomainsase_domainsecuritySerializedSystemIni.dat Weblogic 9: weblogic_9weblogic92samplesdomainswl_serversecuritySerializedSystemIni.dat 解密详情: http://drops.wooyun.org/tips/349 、http://www.blogjava.net/midea0978/archive/2006/09/07/68223.html 2、Weblogic数据源(JNDI) Weblogic如果有配置数据源,那么默认数据源配置文件应该在: Weblogic12user_projectsdomainsase_domainconfigconfig.xml ![]() ![]() Weblogic 9 GetShell: http://drops.wooyun.org/tips/4026、Websphere Websphere8.5登录页面: https://localhost:9043/ibm/console/logon.jsp ![]() Websphere6-7默认控制台地址也是: http://localhost:9043/ibm/console,此处用admin登录即可。 ![]() 6.3 Websphere GetShell 本地只安装了8.5测试,Websphere安装的确非常坑非常麻烦。不过Google HACK到了其余两个版本Websphere6和Websphere7。测试发现Websphere GetShell一样很简单,只是比较麻烦,一般情况直接默认配置Next就行了。Websphere7和Websphere8 GetShell基本一模一样。 Websphere6 GetShell: 需要注意的是Websphere6默认支持的Web应用是2.3(web.xml配置的web-app_2_3.dtd)直接上2.5是不行的,请勿霸王硬上弓。其次是在完成部署后记得保存啊亲,不然无法生效。 ![]() Websphere8.5 GetShell: 部署的时候记得写上下文名称哦,不让无法请求到Shell。 ![]() 7、GlassFish 7.2 GlassFish 默认配置 默认Web控制后台: http://localhost:4848 默认管理密码: GlassFish2默认帐号admin密码adminadmin 。 GlassFish3、4 如果管理员不设置帐号本地会自动登录,但是远程访问会提示配置错误。 Configuration Error Secure Admin must be enabled to access the DAS remotely. 默认端口: 使用Admin的端口 4848。 使用HTTP Instance的端口 8080。 使用JMS的端口 7676。 使用IIOP的端口 3700。 使用HTTP_SSL的端口 8181。 使用IIOP_SSL的端口 3820。 使用IIOP_MUTUALAUTH的端口 3920。 使用JMX_ADMIN的端口 8686。 使用OSGI_SHELL的默认端口 6666。 使用JAVA_DEBUGGER的默认端口 9009。 7.3 GlassFish GetShell![]() Jboss: http://drops.wooyun.org/papers/178 JBoss应用服务器(JBoss AS)是一个被广泛使用的开源Java应用服务器。 它是JBoss企业中间件(JEMS)的一部分,并且经常在大型企业中使用。 因为这个软件是高度模块化和松耦合的,导致了它很很复杂,同时也使它易成为攻击者的目标。 本文从攻击者的角度来看,指出JBoss应用服务器存在的潜在风险,并结合例子如何实现如何在JBoss应用服务器上执行任意代码。 0x01 JBoss概述JBoss应用服务器基于Java企业版1.4,并可以在应用在非常多操作系统中,包括Linux,FreeBSD和Windows中,只要操作系统中安装了Java虚拟机。 ![]() JBoss应用服务架构 Java管理扩展(JMX)Java管理扩展(JMX)是一个监控管理Java应用程序的标准化架构,JMX分为三层: ![]() JMX架构 设备层(Instrumentation Level):主要定义了信息模型。在JMX中,各种管理对象以管理构件的形式存在,需要管理时,向MBean服务器进行注册。该层还定义了通知机制以及一些辅助元数据类。 声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除 |