安全矩阵

 找回密码
 立即注册
搜索
查看: 2464|回复: 0

某日志设备漏洞挖掘-从后台RCE到前台RCE

[复制链接]

855

主题

862

帖子

2940

积分

金牌会员

Rank: 6Rank: 6

积分
2940
发表于 2021-11-2 19:57:16 | 显示全部楼层 |阅读模式
原文链接:某日志设备漏洞挖掘-从后台RCE到前台RCE



https://forum.butian.net/share/811

:前言????
在某次渗透过程中,客户的内网里遇见了一个日志设备,于是便有了后续的RCE漏洞挖掘(在很久之前挖出来的,文章只是提供一个小思路,目前已经通知厂商进行了完全修复)

二:信息收集????
对于设备我们首先要找到它的使用手册,注意几个功能关键点 (网络连通性,日志查看,系统备份,默认口令)

非常幸运,发现目标是存在系统源码下载的,我们下载后本地审计

找到了Web目录,有了源码我们就可以进行PHP代码审计来挖掘更多漏洞,首先先看一下有没有默认密码

这里发现了一个官方教学帖子里有默认的账号密码,我们去登录试试,毕竟后台漏洞挖掘更加轻松

:漏洞挖掘????没有更改默认密码,成功登陆到了后台,我们继续从功能点入手挖掘后台漏洞, 看代码后发现 command-html.php 文件比较可疑,传入 cmd 参数到 cmdhandle.php

我们查看 cmdhandle.php 文件

这里没有什么过滤就执行了命令,可能是设备的调试页面,我们直接访问测试

权限也挺高的,我们写入 Webshell文件, 成功拿下​


结果过了一段时间再看的时候,连接Webshell


权限就这样没了,不甘心这样,于是继续代码审计尝试挖掘一个前台RCE出来

首先打开代码,先查看配置文件里有什么

这里没有什么关键信息,只能发现一些配置路径和默认的Mysql账号密码,我们再去查看登录认证的方式是什么


可以发现后台功能文件均使用 chksession来认证身份,那我们的目标就需要明确为不存在身份验证的文件
利用命令删除所有包含身份验证的文件
rm -rf $(grep -ril 'chksession()' ./)

删除后文件大幅度减少,就减小了代码审计的时间,通过关键字搜寻命令执行的地方,发现一处完全没有过滤的命令拼接漏洞,username参数为用户可控的参数,并直接拼接到了命令执行部分,导致RCE

传入POST请求
POST /account/sy_addmount.phpusername=|id

成功再次拿下设备,同样的无验证命令拼接还有很多处,在后续也全部都提交给了厂商进行修复

​​

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2025-4-22 23:02 , Processed in 0.014731 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表