从密码重置打到Getshell和其它漏洞打包

admin 2023年7月21日01:33:55评论30 views字数 1908阅读6分21秒阅读模式

前言:

前几天是准备上点edusrc的分的所以就准备用手上还没刷的Nday继续上分,然后就有了今天这个案例:

信息收集:

之前在挖某体育学院证书的时候就挖到过一个通过修改html文件更改密码修改步骤的漏洞

从密码重置打到Getshell和其它漏洞打包

所以就准备测绘一下这个资产继续看看能不能上分

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

挑一个打开:

从密码重置打到Getshell和其它漏洞打包

没有背景图了但还是同资产,因为在测试某体育学院的时候是有账户的,所以直接输入那个账户就能进行下一步操作了,但是这个资产无账户,所以我打算去在搜集一下学号 之类的

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

学号这块都是一无所获,然后正准备想其它切入点的时候就突然发现

从密码重置打到Getshell和其它漏洞打包

这块的要求是输入学号后5位,而学号通常是有规律的,所以就去生成字典FUZZ了一下

从密码重置打到Getshell和其它漏洞打包

Python输出从00000~99999字典的程序为:

dictionary = {}

for i in range(100000):

key = str(i).zfill(5)

value = "Value " + key

dictionary[key] = value

with open('dict.txt', 'w') as file:

for key, value in dictionary.items():

file.write(key + '\n')

从密码重置打到Getshell和其它漏洞打包

载入字典后还要设置下时间

从密码重置打到Getshell和其它漏洞打包

最后成功拿到几个账户

从密码重置打到Getshell和其它漏洞打包

EDUSRC不收爆破类漏洞所以这个学号不能算是漏洞,但最后学号总归是出来了

随后直接输入FUZZ出的5位学号把

https://1.test.edu.cn/passworf/find1_html

后的find1_html改为find2_html

从密码重置打到Getshell和其它漏洞打包

直接输入我们要重置的密码更改成功后去登录后台:

从密码重置打到Getshell和其它漏洞打包

持续浏览功能点寻找突破点:

从密码重置打到Getshell和其它漏洞打包

发现一个活动添加点

从密码重置打到Getshell和其它漏洞打包

不存在上传点但是存在描述功能,直接构造xss的payload试试:

<Script>alert("1)</Script>

从密码重置打到Getshell和其它漏洞打包

存储XSS+1

此处的payload:<Script>alert("1)</Script>

采用大小写绕过

随后又发现一个信息上传点:

这几块点是透明没开bp,然后就打算开BP看看能不能拿到些什么突破口

从密码重置打到Getshell和其它漏洞打包

点击这块的【添加简历信息】下面的标题处的第一个点

从密码重置打到Getshell和其它漏洞打包

发现是个信息编辑界面但它这块是跳出个小窗口的所以前面没怎么注意到开了BP抓包时才发现这块点:

从密码重置打到Getshell和其它漏洞打包

点击右侧的修改抓包后:

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

发现id值,直接单引号闭合查看:

从密码重置打到Getshell和其它漏洞打包

浏览器端:

从密码重置打到Getshell和其它漏洞打包

发现执行了sql语句

且发现是GET请求:

从密码重置打到Getshell和其它漏洞打包

所以把这块的路径拉到浏览器直接访问

从密码重置打到Getshell和其它漏洞打包

这样就不用担心防sqlmap表单了,且不用打包数据包更快捷了

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

Sqlmap成功跑出数据!

Sql注入+1

随后继续到【会员注册】处

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

直接在搜索处单引号闭合:

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

成功执行查询语句

从密码重置打到Getshell和其它漏洞打包

F12调出网络又发现也是GET请求方式,复制请求URL直接查看回显

从密码重置打到Getshell和其它漏洞打包

直接sqlmap跑

从密码重置打到Getshell和其它漏洞打包

Sql注入+2

然后点击右上角【管理员】三个字

从密码重置打到Getshell和其它漏洞打包

一开始没发现这三个字还能点击,点击后发现到了信息上传点:

从密码重置打到Getshell和其它漏洞打包

这块可以上传文件先上传个php试试

从密码重置打到Getshell和其它漏洞打包

提示只能上传上面列出的文件类型,正要准备想其它办法绕过的时候突然发现这块允许上传的文件类型中包括pdf,所以直接上传一个pdf-xss试试:

从密码重置打到Getshell和其它漏洞打包

成功上传然后浏览器访问试试:

从密码重置打到Getshell和其它漏洞打包

但浏览器提示没有文件,然后仔细看了一下文件上传回显:

从密码重置打到Getshell和其它漏洞打包

这里的uploadfile/16893293978.pdf的路径是跟在了?value=参数后面的然后这块参数给完后还在后面又跟了个参数:

从密码重置打到Getshell和其它漏洞打包

?file=url=uploadfile/16893293978.pdf,再回到请求包中的参数:

从密码重置打到Getshell和其它漏洞打包

发现此处的有个&field=url的参数尝试把参数改成1

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

浏览器回显不存在"1",所以这块就明了的,参数&field=后面应该接的参数是文件上传后的路径,因为我们这块输入1,不存在1这个文件所以回显Not Found ,明了了这块所以我们那文件试试:

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

放包:

从密码重置打到Getshell和其它漏洞打包

成功触发XSS

存储xss+2

但是这块的任务是getshell所以还是继续尝试文件上传

从密码重置打到Getshell和其它漏洞打包

修改MIME信息且php5分段绕过但还是提示不能上传,传了图片马但是不能解析

从密码重置打到Getshell和其它漏洞打包

这块上传应该是写死了,所以继续找其它突破口,查看参数发现存在"filename"

从密码重置打到Getshell和其它漏洞打包

问题参数啊,迅速添加延时命令试试:

`sleep 7`

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

回显处成功延时:

从密码重置打到Getshell和其它漏洞打包

命令执行成功!进一步探测:

从密码重置打到Getshell和其它漏洞打包

Curl命令探测ngrok.io

从密码重置打到Getshell和其它漏洞打包
从密码重置打到Getshell和其它漏洞打包

成功回显!

命令执行+1,最后相对应的用命令获取shell就行

总结:整体难度适中只不过这次测试后台功能点有点多需要仔细观察测试,后台的信息收集做好了Getshell难度瞬间就变小了。

原创稿件征集

征集原创技术文章中,欢迎投递

投稿邮箱:[email protected]

文章类型:黑客极客技术、信息安全热点安全研究分析安全相关

通过审核并发布能收获200-800元不等的稿酬。

原文始发于微信公众号(合天网安实验室):从密码重置打到Getshell和其它漏洞打包

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年7月21日01:33:55
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   从密码重置打到Getshell和其它漏洞打包https://cn-sec.com/archives/1894427.html

发表评论

匿名网友 填写信息