apache漏洞

未知扩展名解析漏洞

漏洞原理:Apache对文件名后缀的识别是从后往前进行的,当遇到不认识的后缀时,继续往前,直到识别

影响版本:使用module模式与php结合的所有版本,apache存在未知扩展名解析漏洞;使用fastcig模式与php结合的所有版本,apache不存在此漏洞

module模式,php作为apache的一个模块来运行

php的fpm模式,亦即php作为单独服务来受理apache的请求

利用此漏洞文件名必须携带一个".php"否则会被当做text文档处理

换行解析漏洞CVE-2017-15715

原理:对于正则表达式符\(。\)可以匹配字符串结尾的换行符'\n'或'\r'

影响版本:Apache 2.4.0~2.4.29

上传时在文件后缀加入0x0a(换行)绕过黑名单

nginx漏洞

解析漏洞

把".php"结尾的文件交给fastcgi处理,对于任意文件名,在后面添加任意字符.php就可以将其解析

例:上传sell.jpg 然后访问shell.jpg/xx.php就会把shell.jpg解析成php

IIS解析漏洞

6.x解析漏洞

目录解析漏洞:建立文件夹的名称中以.asp或.asa等作为后缀的文件夹,其目录内任何扩展名的文件都被IIS当作asp可执行文件去解析并执行.

文件解析漏洞:

  1. 在IIS6.0下,分号后面的内容不被解析,如xx.asp;.jpg将会当作xx.asp去解析执行
  2. .asa .cdx .cer也会被当作asp进行解析

7.x解析漏洞

在一个文件路径(/xx.jpg)后面加上/xx.php会将/xx.jpg/xx.php 解析为 php 文件

weblogic:端口7001

war后门文件部署

后台地址:ip:7001/console/login/LoginForm.jsp

原理:

管理员配置疏忽导致后台存在弱口令或默认账号密码(weblogic/Orcle@123),对于上传文件校验不严格

利用:

直接将shell压缩成压缩包,然后修改后缀名为war,选择部署选择war包然后一直下一步,点击保存后上传完成,然后就可以访问webshell,访问目录ip:7001/war包名字/shell名字

修复

  1. 对默认账户密码进行修改
  2. 采用强密码策略
  3. 对上传文件进行校验

反序列化漏洞

原理:

Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令

ssrf漏洞:

影响版本10.0.2 – 10.3.6

该漏洞可以发送任意HTTP请求,进而攻击内网中redis等脆弱组件。redis存在未授权访问漏洞(在访问redis数据库时,无需提供用户名及密码,且具备root权限读写文件)。

tomcat:端口8080

后台地址:http://[Tomcat服务器IP地址]:8080/manager/html

put任意文件上传

影响版本:

7.0.0-7.0.81

原理

Tomcat配置文件/conf/web.xml 配置了可写(readonly=false),导致可以使用PUT方法上传任意文件,攻击者就可以构建恶意代码进行上传然后获取webshell(不允许上传jsp后缀文件,可以使用斜杠等方法绕过)

修复

  1. 升级tomcat版本
  2. 避免启用readonly功能,将false修改问true

远程代码执行

原理

由于JRE将命令行参数传递给Windows的方式存在错误,会导致CGI Servlet受到远程执行代码的攻击

利用条件

  1. 系统为Windows
  2. 启用了CGI Servlet(默认为关闭)
  3. 启用了enableCmdLineArguments

弱口令&&后台getshell

默认密码tomcat/tomcat

支持在后台部署war文件,可以直接将webshell部署到web目录下,若后台管理页面存在弱口令

jboss:端口8080

反序列化

原理:

存在于 Jboss 的 HttpInvoker 组件中的 ReadOnlyAccessFilter过滤器中。该过滤器在没有进行任何安全检查的情况下尝试将来自客户端的数据流进行反序列化,从而导致了攻击者可以在服务器上执行任意代码。

漏洞验证

访问/invoker/readonly,返回50f'z0,说明此页面存在反序列化漏洞

未授权访问漏洞

浏览JBoss的部署管理页面信息,无需输入管理员账号面,可以直接部署上传木马

防御

  1. 对JMX控制页面访问添加访问验证
  2. 进行JMX console安全配置

hw面试常见中间件漏洞的更多相关文章

  1. 常见web中间件漏洞(五)weblogic漏洞

    继续整理有关中间件漏洞思路(仅做简单思路整理,不是复现,复现请参考大佬们的长篇好文,会在文章中列举部分操作) WebLogic是Oracle公司出品的一个application server,确切的说 ...

  2. 常见web中间件漏洞(四)Tomcat漏洞

    这部分好久没写了,继续更新web中间件漏洞思路整理(不复现) ,争取...整理完 前几篇指路链接: nginx: https://www.cnblogs.com/lcxblogs/p/13596239 ...

  3. 中间件漏洞之Nginx

    中间件漏洞之Nginx 我们常见的中间件有IIS.Apache.Nginx,其中Nginx中间件有什么漏洞呢? Nginx 文件名逻辑漏洞(CVE-2013-4547): 漏洞版本: Nginx 0. ...

  4. 中间件漏洞之IIS

    IIS中间件漏洞 我们常见的中间件有IIS.Apache.Nginx,其中IIS中间件有什么漏洞呢? IIS 短文件名漏洞: 漏洞产生的原因是为了兼容MS-DOS程序,windows为文件名较长的文件 ...

  5. 【转】PHP网站常见安全漏洞,及相应防范措施总结

    ---恢复内容开始--- 目前,基于PHP的网站开发已经成为目前网站开发的主流,本文笔者重点从PHP网站攻击与安全防范方面进行探究,旨在减少网站漏洞,希望对大家有所帮助! 一.常见PHP网站安全漏洞 ...

  6. PHP网站常见安全漏洞,及相应防范措施总结

    目前,基于PHP的网站开发已经成为目前网站开发的主流,本文笔者重点从PHP网站攻击与安全防范方面进行探究,旨在减少网站漏洞,希望对大家有所帮助! 一.常见PHP网站安全漏洞 对于PHP的漏洞,目前常见 ...

  7. PHP开发中常见的漏洞及防范

    PHP开发中常见的漏洞及防范 对于PHP的漏洞,目前常见的漏洞有五种.分别是Session文件漏洞.SQL注入漏洞.脚本命令执行漏洞.全局变量漏洞和文件漏洞.这里分别对这些漏洞进行简要的介绍和防范. ...

  8. PHP网站常见安全漏洞 及相应防范措施总结

    一.常见PHP网站安全漏洞 对于PHP的漏洞,目前常见的漏洞有五种.分别是Session文件漏洞.SQL注入漏洞.脚本命令执行漏洞.全局变量漏洞和文件漏洞.这里分别对这些漏洞进行简要的介绍. 1.se ...

  9. JBOSS中间件漏洞总汇复现

    JBOSS中间件漏洞总汇复现 JBoss JMXInvokerServlet 反序列化漏洞 漏洞复现 直接使用docker搭建的漏洞环境. 环境搭建完成后,直接使用工具检测即可:工具下载地址https ...

  10. TomCat中间件漏洞复现总汇

    TomCat中间件漏洞复现 前言 在渗透测试过程中,遇到php的站相对多一点,所以对apache了解的也多一点.TomCat中间件的站了解的比较少一点,这是自己第一次搭建环境测试漏洞,所以在自己摸索的 ...

随机推荐

  1. Linux 硬盘存储和文件系统介绍

    一:硬盘存储 1.存储类型 根据存储的可以将存储分为内存和外存两类. 内存:又叫做主存储器,计算机中所有程序的运行都是在内存中进行. 外存:又叫做辅助存储器,因为内存容量小且断电会丢失所有数据.所以磁 ...

  2. 一个bug重温对JRE和JDK的关系思考

    前几天做一个springboot项目时,导入的JAVA版本是17,然后后面想更贴近下企业中使用的JDK版本就改成了JDK 1,8,然后就编译错误,bug如下 java: java.lang.Unsup ...

  3. flutter widget---->FloatingActionButton

    在Flutter中说起Button,floatingActionButton用的也非常的多.今天我们就来学习一下. Simple Example import 'package:flutter/mat ...

  4. Qt源码阅读(四) 事件循环

    事件系统 文章为本人理解,如有理解不到位之处,烦请各位指正. @ 目录 事件系统 什么是事件循环? 事件是如何产生的? sendEvent postEvent 事件是如何处理的? 事件循环是怎么遍历的 ...

  5. 学习httprunner遇到的问题记录

    今天研究httprunner遇到了几个问题 1.问题1: 最新的版本4.3.0已经舍弃了locusts,har2case这两个东西 导致运行的时候,出现har2case不是内部命令 一开始以为是没有配 ...

  6. LeeCode 1832 找出游戏的获胜者

    LeeCode 1832 题目描述: 共有 n 名小伙伴一起做游戏.小伙伴围成一圈,按顺时针顺序从1到n编号.确切地说,从第 i 名小伙伴顺时针移动一位会到达第 (i+1) 名小伙伴的位置,其中 1 ...

  7. RxJava--create源码分析

    使用示例: Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe( ...

  8. 【Vue项目】尚品汇(四)Search组件开发

    Search模块开发 分析:1)编写静态页面 2)编写api 3)编写vuex三大件 4)组件获取仓库数据,并进行动态展示 1 SearchSelector 1 编写api export const ...

  9. jmeter参数化导致反斜杠(\)被转义

    前情提要:在用jmeter做接口测试时,对请求体进行参数化,执行结果报错.但在不参数化的情况下,执行结果成功,而且参数化后,请求中读取到的参数是正确的(执行失败与执行成功时的参数一致). 问题排查:参 ...

  10. Karmada v1.5发布:多调度组助力成本优化

    摘要:在最新发布的1.5版本中,Karmada 提供了多调度组的能力,利用该能力,用户可以实现将业务优先调度到成本更低的集群,或者在主集群故障时,优先迁移业务到指定的备份集群. 本文分享自华为云社区& ...