首页 > 其他分享 >信呼OA2.6.3文件上传漏洞

信呼OA2.6.3文件上传漏洞

时间:2024-08-01 15:39:04浏览次数:9  
标签:文件 红框 name flow OA2.6 上传 信呼 模板

侵权声明

本文章中的所有内容(包括但不限于文字、图像和其他媒体)仅供教育和参考目的。如果在本文章中使用了任何受版权保护的材料,我们满怀敬意地承认该内容的版权归原作者所有。

如果您是版权持有人,并且认为您的作品被侵犯,请通过以下方式与我们联系: [[email protected]]。我们将在确认后的合理时间内采取适当措施,包括删除相关内容。

感谢您的理解与支持

0x00漏洞poc

上传:

index.php?d=main&m=flow&a=copymode&ajaxbool=true
POST:
id=1&name=a{};phpinfo ();class a

访问:

//地址一
webmain/flow/input/mode_a%7B%7D%3Bphpinfo%20%28%29%3Bclass%20aAction.php
//地址二
webmain/model/flow/2%7B%7D%3Bphpinfo%20%28%29%3Bclass%20aModel.php

0x01漏洞分析

通过poc找到文件上传点
webmain -> main -> flow -> flowAction.php -> copymodeAjax()

copymodeAjax函数上半部分

红框一
获取输入进来的name值并且全部转换成小写
红框二
判断输入进来的name在数据库中是否已经存在,如果已经存在本次上传结束,如果需要上传多次验证debug此时文件需要修改,我的建议是修改calss后面的字母
判断前id参数是否在数据库中存在,即是否存在id号的模板

image

copymodeAjax函数下半部分

红框一
获取本次复制模板的所以文件数量和模板位置
红框二
$from = str_replace('{bh}',$obha,$file);得到正真模板的位置,参数obha是存在模板名,参数file是模板位置的模板

image

$to = str_replace('{bh}',$bhnu,$file);获取存放复制结果的地方,和获取模板是同样的原来
红框三
从模板中获取文件内容
这行代码的目的是在 $fstr 中找出所有的'flow_'.$obha.'ClassModel'模板名,并用 'flow_'.$bhnu.'ClassModel' 替换掉它们,其中的bhnu的值等于name

image

跟进createtxt()函数
第一句就是创建文件。
第二个红框位置是测试文件是否可以创建并打开,如果失败无法写入。

image

两个if判断都是同样的效果,这就相对于将一句话或其他测试语句写入文件达到文件上传的目的。
其他的模板就是完全复制没有修改,这就是为什么有两个访问路径

poc组成(瞎猜版)

name=a{};phpinfo ();class a

我分成三部分
第一部分a{};
认为是为了和前面的class进行闭合,为了使中间的语句起作用和sql注入闭合'分号差不多。
第二部分phpinfo();
危险函数
第三部分class a
试了一下如果将a删除此时calss关键字就不会起作用,此时类名会报错无法正常访问该文件,因为访问会报错。
可以看出该模块是担任前面的那个class的职责

以上内容纯属瞎猜

0x02漏洞复现

1、发送文件上传包

image

2、访问

image

我试了一下getshell没有办法创建文件,可能是修复了

0x03总结

我感觉上传方式很新奇,可能是见识少了
危险函数createtxt()

0x04参考

信呼OA普通用户权限getshell方法 - FreeBuf网络安全行业门户


免责声明

本博客所提供的技术知识和信息仅旨在教育和分享网络安全最佳实践,促进网络安全意识的提升。作者严禁将这些技术和信息用于任何非法或不道德的目的。

使用本博客内容而导致的任何违法行为或后果,作者不承担任何法律责任。所有读者在使用本博客的信息时,应自行承担风险,并确保遵守当地法律法规。

我们鼓励所有读者合法地使用所提供的信息和技术,致力于维护安全和负责任的网络环境。

感谢您的理解与支持。

标签:文件,红框,name,flow,OA2.6,上传,信呼,模板
From: https://www.cnblogs.com/0kooo-yz/p/18336817

相关文章

  • 向版权中心提交代码PDF文件时总是无法上传成功,怎么回事?
    在实际的补正提交的操作中遇到了该问题一开始找不到原因上传了十多遍都不行都是传完之后一闪而过显示红色叉号后来发现初次提交的代码pdf却可以正常上传推测是pdf本身格式差异,不符合系统提交要求本次提交的pdf是用wps的“输出为pdf”功能导出的才想到以前也遇到过wps输出......
  • 方天云智慧平台系统 Upload.ashx 任意文件上传漏洞复现
    0x01产品简介方天云智慧平台系统,作为方天科技公司的重要产品,是一款面向企业全流程的业务管理功能平台,集成了ERP(企业资源规划)、MES(车间执行系统)、APS(先进规划与排程)、PLM(产品生命周期)、CRM(客户关系管理)等多种功能模块,旨在通过云端服务为企业提供数字化、智能化的管理解决方案......
  • 如何在 FastAPI 中同时接收 JSON 数据和文件上传
    我正在开发一个FastAPI项目,我需要在同一请求中接收JSON数据和文件上传。具体来说,我需要在JSON数据中传递整数数组,同时上传文件。这是我的请求正文的样子:标题(字符串)描述(字符串)评论(字符串)due_date(日期)优先级(字符串)signed_to(数组)整......
  • Typora图片即时上传
    Typora图片即时上传声明:以下转载自:博客园markdown上传文件及图片-jaysonteng-博客园(cnblogs.com)使用Typora写博客,图片即时上传,无需第三方图床-EasyBlogImageForTypora-xhznl-博客园(cnblogs.com)感谢此文所引用的文章的作者提供的优质学习资源,如有侵犯,请原......
  • Obsidian中自动上传兰空图床
    Obsidian中自动上传兰空图床前言本文默认读者已经搭建好了一个兰空图床服务本文中的需要修改的参数将表示为{{arg}},修改时请去除双括号在之前编写笔记的时候,需要自己手动上传图片到图床然后获取图片的url插入到笔记中。这种方式比较麻烦,因此笔者尝试寻找自动上传的方法,最终......
  • 使用Python Paramiko创建文件目录并上传文件的终极指南
    哈喽,大家好,我是木头左!前言:为何选择Paramiko?在网络运维和自动化领域,SSH(SecureShell)协议是连接和管理远程服务器的常用手段。而Paramiko是一个用于进行SSH2会话的Python库,它支持加密、认证和文件传输等功能。使用Paramiko,可以方便地实现远程命令执行、文件上传下载等操作。准......
  • github上传遇到的错误
    https://blog.csdn.net/weixin_43629813/article/details/113824388https://blog.csdn.net/zamamiro/article/details/70172900?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-5.baidujs&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPEN......
  • 微信小程序文件上传(唤起文件资源管理器)
    问题在微信小程序开发开发中,可能会遇到需要上传文件的场景,用户需要从手机文件管理器中选择文件,然后上传到服务器.但是微信小程序只支持选择回话中的文件,无法从手机中选择方案我们可以通过小程序的web-view实现.通过html的实现文件上传.代码这个代码是基于微信小程......
  • C#对FTP进行上传下载操作
    privatevoidbt_ftp_Click(objectsender,EventArgse){try{引用WinSCP类//SetupsessionoptionsSessionOptionssessionOptions=newSessionOptions{Protocol=Protocol.Ftp,HostName="ftp域名&q......
  • 上传多个图像时 React 前端和 Flask 后端出现 CORS 策略错误
    实际上,我已经在reactJs中制作了前端,在pythonFlask中制作了后端(使用cnn模型进行一些预测)。当我按照我的请求发送5到6张图像时,它工作正常,但是当我发送10到15张图像和一些时间时令人筋疲力尽,然后它给出了类似的错误,尽管我在下面给出的代码中设置了Cors:192.168.151.24/:1Accesst......