万恶的起源在于一个SQl注入,额废话不多说了继续
至于怎么找到注入的点的经过我也不说了,直接上吧 找到了这个网站的一个注入点,个人来说比较懒,有sql注入直接丢到sqlmap里面跑
并别多个参数存在注入 web server operating system: Windows back-end DBMS: Microsoft SQL Server 2008
当用sqlmap确定有了注入之后,我的第一件事是去—is-dba,查看当前数据库的权限是否最高权限,这里的权限是最高的 web server operating system: Windows back-end DBMS:Microsoft SQL Server 2008 [20:30:54] [INFO]testing if current user is DBA current user isDBA: True
这样就意味着我可以直接交互式写个shell了,直接执行了—os-shell,可以执行命令,我先看了一下这台服务器是否存在外网,结果是在内网 又看了下当前的用户是不是sys权限,果然没那么简单,果真不是sys权限 考虑使用交互式写个shell上去就好了,但是最重要的一个是交互式写shell是需要web的物理路径的,但是我现在却没有物理路径,只能去跑数据库,登进后台看看再打算 都是常用的参数跟命令了,这里就不写参数跟截图了,最后得到的密码是这个 跑出了密码,却没有账号,咋整?当时想着一定会有个admin账户的也肯定是管理员的账户,然后拿着这个密码登陆果真登陆上去了
接下来就各种的查数据什么的,这里也不放出来了,当查询的时候居然报错了,把物理路径给暴露出来了,这回心想爽死我了,有了物理路径也就意味着我能写shell了(报错的图没了,反正就是这个路径) 然后测试了一下能不能写进去,写了个1.txt上去 执行dir D:\Zope-Instance\Extensions\wjwdc查看是上传上去了,文件是写上去了,但是总觉得不对 朋友说这套程序是py框架写的不能直接写shell,现在很少用python+ Microsoft SQL Server写的程序吧?圈子里更是对python语言写的web渗透资料少之又少 查看了一下这台服务器的信息 然后回到后台系统,看看有什么地方有上传点,从系统中找突破口,在信息管理--》下载管理中找到了个上传点,也算是个突破口吧
既然拿不了shell那就直接上传提权吧,刚看服务器信息的时候就看见打的补丁并没有几个,那就直接上传ms15-051的exp直接提权 文件是上传上去了,现在的问题是文件写到数据库了,到底写到哪了,上传的名字有没有被更改,现在陷入找文件的时候 一般来说都在data里面,在里面翻了好久都没有找到那个exe,我不全部截图了,反正是各种翻 然后实在没办法又跑了一遍wjwdc数据库,sql所跑的数据都会有文档记录操作的,在这里面找蛛丝马迹 猜测是存在D:\Zope-Instance\data\wjwdc\resource\attachment\download目录下,有个最新的名为65.exe,对了下时间以及大小,大概确定就是它 当时是蒙了,最后找到了一个更方便的方式去找,不过这个路径有个缺陷就是不能直接读,需要你提供账号密码去登录,我拿登后台的账号密码去登录,进去了 http://xx.xx.xx.xx/wjwdc/resource 并且还有个上传页面 这些只是过程,提醒下次别那么傻去看sqlmap的日志文件了
执行D:\Zope-Instance\data\wjwdc\resource\attachment\download\65.exe “whoami”,完美成功提权。
因为没有外网服务器没有nc去反弹3389回来,可再深入的,点到为止。
请各位大牛指教。
由于比较敏感所以打码了,见谅。
本文只作为自己的笔记存在。 by:幽暗
=============================== 超过10位正式成员同意,转正成功。 管理05
|