渗透实战|组合拳从0-1 Getshell过程

科技   2024-12-11 14:34   江苏  

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。本次测试仅供学习使用,如若非法他用,与平台和本文作者无关,需自行负责。

unsetunset前言unsetunset

在一次渗透项目中遇到的一个比较典型的案例,通过sql注入、未授权、任意文件上传组合拳最终getshell,过程也比较有意思,因此记录了下来。在写该文章时,所有漏洞均已提交归属单位并协助完成修复。

unsetunset接口泄漏unsetunset

开局一个登陆框,登陆时也存在加密,弱口令也没办法爆破,没办法只有扫描一波目录。

果然,存在一个help的api接口泄漏。

unsetunset未授权访问unsetunset

获取所有的用户信息?这么贴心吗?访问一下试试

牛逼,假的,只有试试其他接口,看看通过id获取用户信息试一下,一般管理员id都为1

提示用户不存在,并没有未登录等权限相关的提示,说明存在未授权查询用户信息,这里可以通过遍历id来获取用户信息,但是通过尝试并没有遍历到用户信息,猜测userid应该是很长一串的字符串,尝试单引号看是否有报错。

unsetunsetSQL注入unsetunset

舒服了,一个单引号提示异常,两个单引号提示用户不存在,存在注入

sqlmap一把梭,mysql,不是dba。

存在union注入,但是在跑表的时候,不知道怎么回事数据包返回404

不过问题不大,还有一个根据urserid获取用户的任务完成率的接口,同样存在注入,但是是个时间盲注。

但是在sqlmap跑用户信息的时候全是空白,但实际上是有数据的

当时就陷入了沉思,一直没搞懂为什么,看了语句也是正常的,最后想到可以通过userid获取用户信息,可能会有用户名和密码,所以就只跑了userid这一个字段,果然,跑出了几个userid

尝试用这些userid获取信息,发现用户名是中文的,所以sqlmap直接跑跑不出来,需要编码过后才行

这里接口是没有直接返回密码的,使用sqlmap同时跑userid和passwd字段,这样就可以使用userid获取username,这样用户名和密码都有了,但是时间盲注,跑的太慢了,跑了几个passwd都解不出来,这里知道了用户信息的结构,直接通过新增用户接口,添加一个用户。

成功登陆了,但是没有功能点

可能是没添加权限,正好存在获取权限组的接口,访问获取所有RoleId

直接通过编辑用户接口添加所有权限

unsetunsetgetshellunsetunset

既然该系统存在sql注入和未授权,猜测肯定有任意文件上传,要上传shell,肯定要找上传点,所以其他功能直接不用看,这时候首当其冲的就是通知公告功能点,肯定有上传功能

果然,没有任何过滤,直接拿下

目标不出网,iis权限,想办法提个权

服务器是server 2016的,试了好多提权工具都提不了,最后发现可以使用PrinterNotifyPotato.exe提权

直接导出hash,但是hash解不出来,开启受限管理员,pth直接上远程桌面开始翻文件

由于种种原因,内网就不打了,点到为止,下机!

实习/校招/社招



长期持续内推长亭、360、绿盟等安全大厂,已累计内推2000+人
长亭科技25校招投递链接:https://join.chaitin.cn/campus 
内推码:NTAWkpg
或微信扫码投递

25校招持续内推中~~~明年毕业的同学欢迎加我,1对1简历辅导,全程跟踪内推情况

安全服务工程师、安全攻防工程师、安全研发工程师、前后端开发工程师、测试工程师等等,所有岗位均可内推

需要考CISP/CISP-PTE/PMP/OSCP/CISSP等证书也可以加我,市场低价!有折扣!




内推|长亭科技2025届秋招开启,附内推码~


你能拿她学校的shell,但永远拿不了她的shell


渗透实战|记一次简单的Docker逃逸+反编译jar接管云主机


渗透实战|NPS反制之绕过登陆验证


渗透实战|记一次曲折的EDU通杀漏洞挖掘


渗透实战|记一次RCE+heapdump信息泄露引发的血案


免责声明
由于传播、利用本公众号藏剑安全所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号藏剑安全及作者不为承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
好文分享收藏赞一下最美点在看哦

藏剑安全
知识面决定攻击面
 最新文章