文件上传,解析漏洞编译器安全(23)文件上传为什么加空格和修改为其他符号(例如换行符)问题

news2024/11/15 21:00:05

apache低版本解析漏洞

这个网站目录里有两个文件,一个是正常的php文件,另一个xx.php.xxx,源码是php源码,命名的文件,而访问中xxx的文件依旧可以执行出php代码的结果,而xxx就能当php文件解析,这就是apache的解析漏洞。要注意的第一个是低版本的apache,符合这个版本就有这个解析漏洞,2.x的版本应该能满足。

这个是后门后缀不理解就向前解析,

 利用的话就是碰到低版本的apache,然后上传有个不被能被识别的后缀,触发它向前解读,成功解析到我们需要的文件,其中的后门代码触发。

apache配置安全漏洞

这个漏洞利用起来有一些鸡肋

 他需要在apache的配置文件里面有这个代码,才能执行出来,他是属于配置上面的安全思路所造成的漏洞,

Vulhub  Apache HTTPD 换行解析漏洞(CVE-2017-15715)靶场

另一个靶场

Nginx越界读取缓存漏洞(CVE-2017-7529)

这个就很简单的漏洞,主要是nginx的版本对应的上就可以用,靶场里面上传图片文件后会返回一个网址,不过这个网址是图片格式的访问,在访问的时候后面加上/xxxphp。直接访问就可以运行为php文件了。就可以执行php的代码了。

符合nginx和iis75,符合这个版本的中间件都可以用。

判断网站有没有漏洞非常简单,

在后满加上/.php 

 报错就是没有,不报错就是有。只需要找一个上传点就可以获取到权限。

Nginx 文件名逻辑漏洞演示

搭建好靶场环境,打开靶场,根据网页提示上传文件,

抓住数据包,然后在正常的图片格式文件后面加上一个空格发送出去,在去访问

 然后这时候去访问复制地址的时候,后面加上.php,抓数据包

 这里为什么要加两个空格,因为根据靶场网页提示要在这里后面加上给空格和换行符,换行符需要在hex里面修改参数为00,变成换行符上传,而如果只写了一个空格,就只有一个空格在hex不能添加符号,所以要添加几个符号就加几个空格然后在hex里面找到满足旁边20(20就是空格),把20修改为想变成的符号即可,然后点发送。因为这里要添加两个符号所以打了两个空格。

 然后点上传,访问网页

 上传执行成功了php代码。

集中常见的web编译器的漏洞

这个编译器我们只讲一两个,就是我们碰到了再去查资料就好,

老师搭建了一个fck的编译器。

正常的存在编译器的网站

这个看到编译器是ued之后也是直接去百度上搜索漏洞,照着用就行。

 老师自己搭建好的网站

网站直接写着fck编译器2.6.3版本呢,直接去网搜,该版本的漏洞,

 找到了漏洞演示,直接复制代码,保存一个php文件,把漏洞代码复制过去,然后放到php的安装目录里面来,在安装目录里面写一个cmb的命令提示符,直接打开命令提示符,利用php对这个文件进行一个执行,

就是在php  php文件名  后面加上网站霉和网站路径,开始执行就行了有些脚本需要加上http有一些不需要,需不需要就两个试试判定一下就行。

输入红框里面的代码,直接回车键执行。

 查看网站根目录有没有上传成功,上传成功了一个php的文件,里面是一句话后门代码。

怎么去判定对方使用上面编译器,进入网站的会员中心或者后台中心里,可以看到使用编译器和版本的情况,可以通过网站扫描,发现编译器的路径也能判断,白引擎黑引擎都能扫,可以去搜白引擎手册,都测测就会了。常见的有Ewebeditor,fckeditor,ckeditor,kindeditor等等,、

知道对方编译器也可以作为测试点,大部分都跟文件上传有关,因为编译器本身就是用来处理文件文字等东西的。编译器太多了一个一个演示不过来,自己去网上找资料。

几种常见的cms文件上传漏洞演示

也是老师自己的网站,cms开源的。演示一下通达服务系统,

通达的一个登陆界面

讲这个的意义,如果识别出对方使用的源码程序名称之后,可以通过网上一些公开漏洞测试,这时候就可以通过右键查看源代码,发现

 通达oa网络只能服务办公系统。

 抓住数据包,然后替换成漏洞网站的东西

 直接上传提交,返回结果立马上传了一个文件上去,后面利用上传的文件做其他的漏洞结合执行相关命令,这就是利用了通达oa的漏洞。

上传漏洞分为三种,一个是解析漏洞,某些能进行理论上面违背的,有解析漏洞,解析漏洞有条件是否有相应的中间件且版本是符合的,你还要进行解析漏洞相关规则,有些基于命名,后缀,把条件达到才能触发图片解析成php。

也可以通过网站,判断出是上面从cms开源,他有没有网上有没有公开的漏洞,去实现。

其他漏洞包括编号漏洞,cve漏洞,cve漏洞不仅仅是网站还有可能是中间件,编译器漏洞就是网站上面调用了第三方编译器,编译器出现上传漏洞,我们就可以利用。

我拿到一个网站第一点的思路,第一步看中间件,因为看中间件就是为了确定他是否存在解析漏洞,解析漏洞对应的版本,可以通过网上查询总结,低版本。配合解析漏洞,一些就可以直接上传解析,有一些上传不允许上传未知后缀名,在利用的时候不行,就只能靠自己去判断。

文件上传点该怎么找,文件上传分为哪几种,第一种就是扫描,scan字典扫描, 上传一个php文件不允许上传,他可能是黑名单,可能是白名单,检测代码,一个一个去筛选,如果黑名单就按照黑名单去上传,如果都绕过不了就是没有上传漏洞,白名单也是同样,到下面来看,就是验证绕过,没办法没有漏洞,这个时候再去搞解析漏洞,解析漏洞也没有,再看是不是网站cms,去网上找资料,如果这里也不行,就去找网站上有没有编译在会员中心,后台中心,白黑引擎去扫,找到编译器,编译器也是通过去网上找资料绕过,绕过编译器也没有,就去看cve有没有爆出来一些文件上传漏洞相关的,出一个刚好对应的nginx的漏洞,符合就可以利用漏洞去测试,如果实在都没有就是没有漏洞,

第一步找上传点,会员中心,扫描也好,第二步就直接验证绕过测试,测试不行在到漏洞修复,没有再去编译器,还是没有下一步看cve报出的有没有文件上传和网站有没有相应符合的条件,在这里插入图片描述

  

 

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

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

相关文章

uvc摄像头驱动uvc设备的注册分析

uvc摄像头驱动uvc设备的注册分析 文章目录 uvc摄像头驱动uvc设备的注册分析uvc_inituvc_probeuvc_register_videouvc_register_chainsuvc_register_termsuvc_register_video uvc_ioctl_opsuvc_fops uvc_init /driver/media/usb/uvc/uvc_driver.c /** UVC 驱动结构体*/ struct…

每日学术速递5.19

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.CV 1.On the Hidden Mystery of OCR in Large Multimodal Models 标题:论大型多模态模型中 OCR 的隐藏奥秘 作者:Yuliang Liu, Zhang Li, Hongliang Li, Wenwen…

计算机图形学-GAMES101-11

显式几何的表示方法 Point Cloud 使用一系列点表示物体的表面。理论上可以表达空间中任何物体。如物体扫描会得到空间中一系列点,但在建模时我们要提取出大量多边形的面。点云对密度要求很高,因此不常使用。 Polygon Mesh 使用三角形表示物体。涉及三…

备份树莓派SD卡 — 保姆级教学

在我们树莓派项目开发的过程中,经常遇到以下问题: 1.自己辛辛苦苦开发出来的项目,害怕内存卡损坏,系统被破坏掉,想做一个备份。 2.自己的树莓派内存卡内存不够了,想将原来卡上的内容放在新的大容量内存卡…

Arm微架构分析系列3——Arm的X计划

1. 引言 前文介绍了Arm公司近几年在移动处理器市场推出的Cortex-A系列处理器。Cortex-A系列处理器每年迭代,性能和能效不断提升,是一款非常成功的产品。但是,Arm并不满足于Cortex-A系列每年的架构小幅度升级,又推出了X计划&#x…

esp32CAM环境安装教程---串口驱动安装

前言 (1)本人安装好arduino 的ESP32环境之后, 发现一直下载不进去程序。一直说Cannot configure port, something went wrong. Original message: PermissionError。 (2)查阅了很多资料,用了各种办法&#…

怎么消除文法的左递归性

除文法的左递归性可以采用以下方法: 直接左递归转换为间接左递归消除间接左递归 举例说明: 直接左递归转换为间接左递归 原文法:A → Aα | β 转换后的文法:A → βA A → αA | ε 例如:S → Sabc | ε 转换后…

4. QT中的事件函数 --- 鼠标事件、键盘事件、定时器事件、绘图事件

1. 说明 在QT的控件或者窗口当中,如果对于当前鼠标或者键盘的功能需要自己定义,可以重写父类当中对应虚函数,主要包括以下几个: //键盘按键按下 virtual void keyPressEvent(QKeyEvent *event); //键盘按键抬起 virtual void ke…

11.1网络编程

多线程 一、基础知识概念相关API二、任务创建一个简单的本地客户端迭代服务器select系统调用并发服务器数据报三、总结四、问题一、基础知识 概念 网络编程中客户端和服务器指的是进程,而不是常提到的机器或者主机。注意三个概念:请求、响应、事务。 网络编程中客户端-服务器…

面向对象的三大特性之继承(C++)

文章目录 继承的概念和定义概念定义定义格式继承关系和访问限定符继承基类成员访问方式的变化 基类和派生类对象赋值转换继承中的作用域派生类的默认成员函数继承与友元继承与静态成员菱形继承与虚拟继承菱形继承虚拟继承 继承的总结与反思继承和组合 继承的概念和定义 概念 继…

微信小程序 nodejs+vue+uniapp付费自习室图书馆教室座位系统-

系统分为用户和管理员角色 管理员的主要功能有: 1.管理员输入账户登陆后台 2.个人中心:管理员修改密码和账户信息 3.用户管理:对注册的用户信息进行添加,删除,修改,查询 4.自习室管理:对系统的自…

由浅入深Netty协议设计与解析

目录 1 为什么需要协议?2 redis 协议举例3 http 协议举例4 自定义协议要素4.1 编解码器4.2 什么时候可以加 Sharable 1 为什么需要协议? TCP/IP 中消息传输基于流的方式,没有边界。 协议的目的就是划定消息的边界,制定通信双方要…

每日学术速递5.18

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.CV 1.Make-A-Protagonist: Generic Video Editing with An Ensemble of Experts 标题:Make-A-Protagonist:与专家合奏的通用视频编辑 作者:Yuyang Z…

云端一体助力体验升级和业务创新

随着音视频和AI技术的发展,在满足用户基础体验和需求情况下,更极致的用户体验和更丰富的互动玩法,成为各个平台打造核心竞争力的关键。LiveVideoStackCon 2022 北京站邀请到火山引擎视频云华南区业务负责人——张培垒,基于节跳动音…

虚幻引擎4利用粒子系统实现物体轨迹描绘

虚幻引擎4利用粒子系统实现物体轨迹描绘 目录 虚幻引擎4利用粒子系统实现物体轨迹描绘前言粒子系统利用粒子系统实现物体轨迹描绘创建粒子系统将粒子系统的产生位置绑定到运动物体上 小结 前言 由于在物体运动时,想要观察其总的运动轨迹,以便对其控制做…

Java实现天气预报功能

如果要实现类似百度天气、手机App这样的天气预报功能该如何实现?首先想到的是百度... 背景: 最近公司做了一个项目,天气预报的功能也做上去了,不仅有实时天气、未来7天预报的功能、还有气象预警的功能。 天气包括基本天气、白天夜…

【K8s】什么是helm?helm的常用指令

文章目录 一、Helm介绍1、背景2、介绍3、核心概念4、chart的基本结构5、helm官网 二、部署Helm1、安装helm客户端2、安装Tiller 三、常用指令1、仓库相关 helm repo2、chart相关3、release相关 四、入门案例1、构建第一个chart2、将chart包发布到Repository3、在 Kubernetes 中…

Nacos之服务注册中心

1.Nacos之服务提供者注册 官方文档 1.1.前期工作 1.1.1.新建Module - api-commons POM <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSc…

区块链商业模式

1. 引言 web2 vs web3&#xff1a; 基于区块链的商业模式有&#xff1a; 1&#xff09;Token Economy-Utility Token商业模式2&#xff09;Blockchain As A Service&#xff08;Baas&#xff09;商业模式3&#xff09;Blockchain-Based Software Products商业模式4&#xf…

【C++修炼之路】30.可变参数模板包装器

每一个不曾起舞的日子都是对生命的辜负 C11之可变参数模板&&包装器 前言一.可变参数模板的首次登场二.参数包展开2.1 递归函数方式展开参数包2.2 逗号表达式展开参数包 三.容器的emplace方法四.包装器4.1 什么是function4.2 function包装器的作用4.3 function的实际用途…