【小迪安全2023】第59天:服务攻防-中间件安全CVE复现lSApacheTomcatNginx

news2024/11/19 2:40:16
🍬 博主介绍

👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~
✨主攻领域:【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!


目录

0x1 大纲

0x2 知识点

0x3 案例

1、中间件-IIS-短文件&解析&蓝屏等

2、中间件-Nginx-文件解析&命令执行等

3、中间件-Apache-RCE&目录遍历&文件解析等

cve_2021_42013

cve-2017-15715 文件解析

4、中间件-Tomcat-弱口令&文件上传&文件包含等

弱口令

文件上传

文件包含


0x1 大纲

0x2 知识点

中间件及框架列表:

IIS,Apache,Nginx,Tomcat,Docker,Weblogic,JBoos,WebSphere,Jenkins ,GlassFish,Jira,Struts2,Laravel,Solr,Shiro,Thinkphp,Spring,Flask,jQuery等

1、中间件-IIS-短文件&解析&蓝屏等

2、中间件-Nginx-文件解析&命令执行等

3、中间件-Apache-RCE&目录遍历&文件解析等

4、中间件-Tomcat-弱口令&文件上传&文件包含等

#章节内容:
常见中间件的安全测试:
1、配置不当-解析&弱口令
2、安全机制-特定安全漏洞
3、安全机制-弱口令爆破攻击
4、安全应用-框架特定安全漏洞
 
#前置知识:
中间件安全测试流程:
1、判断中间件信息-名称&版本&三方
2、判断中间件问题-配置不当&公开漏洞
3、判断中间件利用-弱口令&EXP&框架漏洞
 
应用服务安全测试流程:见图
1、判断服务开放情况-端口扫描&组合应用等
2、判断服务类型归属-数据库&文件传输&通讯等
3、判断服务利用方式-特定漏洞&未授权&弱口令等

0x3 案例

1、中间件-IIS-短文件&解析&蓝屏等

1、短文件:信息收集
2、文件解析:还有点用
参考前面课程
 
3、HTTP.SYS:蓝屏崩溃(2013年)破坏性漏洞
https://blog.csdn.net/qq_44159028/article/details/112508950
 
4、CVE-2017-7269 条件过老(需要条件过多)
https://blog.csdn.net/Fly_hps/article/details/79568430
 
IIS比较少了,比较老牌的源码,像asp,asp.net这类源码

2、中间件-Nginx-文件解析&命令执行等

该漏洞与nginx、php版本无关,属于用户配置不当造成的解析漏洞

版本信息:

  • Nginx 1.x 最新版
  • PHP 7.x最新版

靶场环境参考:

Vulhub - Docker-Compose file for vulnerability environment

环境搭建:ubantu(IP:10.10.10.130)的docker搭建,

先要进入vulhub指定的靶场漏洞目录下:vulhub/nginx/nginx_parsing_vulnerability。

然后在这个目录下,输入下面的命令启动环境:

docker-compose up -d

成功后,访问改IP地址,如下:

上传一个图片,然后改里面的内容

GIF89a
<?php phpinfo();?>

增加/.php后缀,被解析成PHP文件:

修改代码,然后利用文件解析进行getshell

3、中间件-Apache-RCE&目录遍历&文件解析等

cve_2021_42013

Apache HTTP Server是Apache基金会开源的一款流行的HTTP服务器。Apache官方在2.4.50版本中对2.4.49版本中出现的目录穿越漏洞CVE-2021-41773进行了修复,但这个修复是不完整的,CVE-2021-42013是对补丁的绕过。

攻击者利用这个漏洞,可以读取位于Apache服务器Web目录以外的其他文件,或者读取Web目录中的脚本文件源码,或者在开启了cgi或cgid的服务器上执行任意命令。

这个漏洞可以影响Apache HTTP Server 2.4.49以及2.4.50两个版本。

靶场环境:

Vulfocus 漏洞威胁分析平台

访问靶机的IP地址,如下:

先修改为POST传参,然后该路径:/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh
​echo;whoami

echo;ls /tmp

flag-{bmh39210e08-0fd2-41c4-b579-57ee4e4fbc8a}​

cve-2017-15715 文件解析

CVE-2017-15715 即为换行解析漏洞,此漏洞存在于Apache 2.4.0 - 2.4.29版本中;

在解析PHP时,服务器会将shell.php%0a后缀之后带有空格的文件按照php后缀解析,从而可以绕过服务器的安全策略

我们直接切换到漏洞存在的指定目录下:/vulhub/httpd/CVE-2017-15715,

然后利用docker启动:

docker-compose up -d

漏洞复现参考文章:

https://www.cnblogs.com/cute-puli/p/puli.html

4、中间件-Tomcat-弱口令&文件上传&文件包含等

弱口令

描述:

名称: tomcat-pass-getshell 弱口令

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。

通过弱口令登录后台,部署war包geshell

靶场环境:

Vulfocus 漏洞威胁分析平台

漏洞复现参考文章:

vulhub/tomcat/tomcat8/README.zh-cn.md at master · vulhub/vulhub · GitHub

访问环境IP地址,然后点击manager App,提示我们需要输入账号密码

tomcat:tomcat账号密码登录进去

然后我们这里先利用哥斯拉生成一个jsp的免杀木马,

先把这个.jsp压缩成.zip,然后再改成war包,最后进行上传

添加成功,就可以进行getshell了

文件上传

靶场环境:

Vulfocus 漏洞威胁分析平台

名称: tomcat 文件上传 (CVE-2017-12615)

描述:

Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

攻击者将有可能可通过精心构造的攻击请求数据包向服务器上传包含任意代码的 JSP 的webshell文件,JSP文件中的恶意代码将能被服务器执行,导致服务器上的数据泄露或获取服务器权限。

抓包,然后修改下面的几个地方:

下一步进行getshell

文件包含

漏洞利用工具:

GitHub - sv3nbeast/CVE-2020-1938-Tomact-file_include-file_read: Tomcat的文件包含及文件读取漏洞利用POC

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1629571.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RocketMQ快速入门:namesrv、broker、dashboard的作用及消息发送、消费流程(三)

0. 引言 接触rocketmq之后&#xff0c;大家首当其冲的就会发现需要安装3个组件&#xff1a;namesrv, broker, dashboard&#xff0c;其中dashboard也叫console&#xff0c;为选装。而这几个组件之前的关系是什么呢&#xff0c;消息发送和接收的过程是如何传递的呢&#xff0c;…

如何在 Visual Studio 中通过 NuGet 添加包

在安装之前要先确定Nuget的包源是否有问题。 Visual Studio中怎样更改Nuget程序包源-CSDN博客 1.图形界面安装 打开您的项目&#xff0c;并在解决方案资源管理器中选择您的项目。单击“项目”菜单&#xff0c;然后选择“管理 NuGet 程序包”选项。在“NuGet 包管理器”窗口中…

Swift 中的 Range 运算符

在 Swift 中&#xff0c;Range 运算符是一种强大的工具&#xff0c;用于表示一系列连续的数值或字符。Range 可以用于循环、数组切片、条件语句等场景&#xff0c;为我们提供了方便的方法来处理数据集合。 闭区间运算符 a...b 闭区间运算符 a...b 用于创建一个从起始值到结束…

在虚拟环境中找到Qt Designer

Pyqt5中找到Qt Designer 安装Pyqt5和Qt Designer: pip install pyqt5-tools 假设Python的虚拟环境名为:d2l &#xff0c;虚拟环境在d2l文件夹中 D:\Software\d2l\Lib\site-packages\qt5_applications\Qt\bin 双击Qt designer启动 Pyside2中找到Qt Designer d2l是虚拟环境…

NDK 基础(五)—— C++ 高级特性2

1、左值右值 在 C 中&#xff0c;左值&#xff08;lvalue&#xff09;和右值&#xff08;rvalue&#xff09;是用于描述表达式的术语&#xff0c;它们与赋值操作和内存中对象的生命周期有关。 **左值&#xff08;lvalue&#xff09;**是指可以出现在赋值操作符左侧的表达式&a…

【Vue3+Tres 三维开发】02-Debug

预览 介绍 Debug 这里主要是讲在三维中的调试,同以前threejs中使用的lil-gui类似,TRESJS也提供了一套可视化参数调试的插件。使用方式和之前的组件相似。 使用 通过导入useTweakPane 即可 import { useTweakPane, OrbitControls } from "@tresjs/cientos"const {…

PotatoPie 4.0 实验教程(21) —— FPGA实现摄像头图像二值化(RGB2Gray2Bin)

PotatoPie 4.0开发板教程目录&#xff08;2024/04/21&#xff09; 为什么要进行图像的二值化&#xff1f; 当我们处理图像时&#xff0c;常常需要将其转换为二值图像。这是因为在很多应用中&#xff0c;我们只对图像中的某些特定部分感兴趣&#xff0c;而不需要考虑所有像素的…

机器视觉系统-工业光源什么是同轴光

光路描述&#xff1a;反射光线与镜头平行&#xff0c;称为同轴光。 效果分析&#xff1a;光线经过平面反射后&#xff0c;与光轴平行地进入镜头。此时被测物相当于一面镜子&#xff0c;图像体现的是光源的信息&#xff0c;当“镜子“出现凹凸不平时&#xff0c;将格外地明显。 …

Win32 API 光标隐藏定位和键盘读取等常用函数

Win32 API 光标隐藏定位和键盘读取等常用函数 一、Win32 API二、控制台程序指令modetitlepausecls 三、控制台屏幕上坐标的结构体COORD四、句柄获取函数GetStdHandle五、控制台光标操作1.控制台光标信息结构体CONSOLE_CURSOR_INFO2.得到光标信息函数GetConsoleCursorInfo3. 设置…

会跳舞的网站引导页HTML源码

源码介绍 这套引导页源码非常好看&#xff0c;网址也不会不停的动起来给人一种视觉感很强烈 简单修改一下里面的地址就行看&#xff0c;非常简单&#xff01; 效果预览 源码下载 会跳舞的网站引导页HTML源码

排序FollowUp

FollowUp 插入排序 直接插入排序 时间复杂度:最坏情况下:0(n^2) 最好情况下:0(n)当数据越有序 排序越快 适用于: 待排序序列 已经基本上趋于有序了! 空间复杂度:0(1) 稳定性:稳定的 public static void insertSort(int[] array){for (int i 1; i < array.length; i) {int…

64位整数高低位的数据获取与赋值操作探讨

参考本篇->LOWORD和HIWORD函数_hidword-CSDN博客 一&#xff0c;如何获取一个64位整数的高32位和低32位 原理其实很简单&#xff1a; 解释一些概念 ①十六进制和二进制直接挂钩 一个十六位的十六进制数【0XAABBCCDD12345678】转为二进制的过程是把其中的每个数转为对应的二…

构建中小型企业网络-单臂路由

1.给IP地址配置好对应的IP和网关 2.配置交换机 3.路由配置 在交换机ge0/0/1中配置端口为trunk是可以允许多个vlan通过的&#xff0c;但路由器是不能够配置vlan&#xff0c;而交换机和路由器间连接的只有一根线&#xff0c;一个端口又只能配置一个ip地址&#xff0c;只有一个ip地…

人脸识别概念解析

目录 1. 概述 2. 人脸检测 3. 人脸跟踪 4. 质量评价 5. 活体检测 6. 特征提取 7. 人脸验证 8. 人脸辨识 1. 概述 人脸识别在我们的生活中随处可见&#xff0c;例如在大楼门禁系统中&#xff0c;它取代了传统的门禁卡或密码&#xff0c;提高了进出的便捷性和安全性。在商…

如何通过4G DTU实现现场仪表的分布式采集并发布到MQTT服务器

提供一份资料文档以一个具体的工程案例来讲解&#xff0c;如何通过4G DTU实现现场仪表的分布式采集并发布到MQTT服务器。采用的数据采集模块是有人物联的边缘采集4G DTU&#xff0c;采集多个多功能电表和远传水表的数据&#xff0c;通过MQTT通讯的型式传送给MQTT服务器&#xf…

Elsevier(爱思唯尔)期刊—Latex模板下载、使用、投稿过程

目录 一、Elsevier期刊-Latex模板下载 1. Elsevier 通用latex模板下载&#xff1a;【elsarticle.zip】 2. Elsevier 复杂版式latex模板下载&#xff1a;【els-cas-templates.zip】&#xff0c;有单栏和双栏版本 二、Elsevier期刊-Latex模板使用 1. 通用模板【elsarticle.zi…

【源码】IM即时通讯源码/H5聊天软件/视频通话+语音通话/带文字部署教程

【源码介绍】 IM即时通讯源码/H5聊天软件/视频通话语音通话/带文字部署教程 【源码说明】 测试环境&#xff1a;Linux系统CentOS7.6、宝塔、PHP7.2、MySQL5.6&#xff0c;根目录public&#xff0c;伪静态laravel5&#xff0c;根据情况开启SSL 登录后台看到很熟悉。。原来是…

如何在 Ubuntu 12.04 上使用 Apache 配置 WebDAV 访问

简介 WebDAV 是内置在 HTTP 中的分布式网络编辑实现&#xff0c;允许您轻松共享文件并与他人协作。 我们可以在 Web 服务器中安装此扩展&#xff0c;以允许通过 Web 浏览器远程读写访问本地文件。在本指南中&#xff0c;我们将在带有 Apache Web 服务器的 Ubuntu 12.04 VPS 上…

Mysql--创建数据库

一、创建一个数据库 “db_classes” mysql> create database db_classes; mysql> show databases; -------------------- | Database | -------------------- | db_classes | | information_schema | | mysql | | performance_schema | |…

PeLK: 大卷积核强势回归,高达101 × 101,提出了外围卷积

paper&#xff1a;https://arxiv.org/pdf/2403.07589 code&#xff1a;暂无 目录 0. 摘要 1. 引言 2. 相关工作 2.1. Large Kernel Convolutional Networks 2.2. Peripheral Vision for Machine Learning 3. 密集卷积优于条纹卷积 4. 参数高效的大核卷积神经网络 4.1. …