一次真实渗透测试中代码审计getshell

admin 2023年3月17日11:05:35评论83 views字数 1687阅读5分37秒阅读模式

扫码领资料

获黑客教程

免费&进群

一次真实渗透测试中代码审计getshell
一次真实渗透测试中代码审计getshell

虽说目前互联网

作者:ascii****

原文链接:https://xz.aliyun.com/t/9152

信息搜集:

用dirsearch进行扫描查看目录:

一次真实渗透测试中代码审计getshell
这里发现有git源码泄露,还有一些敏感目录

  • /.login

  • /phpmyadmin

  • /robots.txt

用nmap对端口进行探测

一次真实渗透测试中代码审计getshell

发现开放ssh 22 端口,ftp 21 端口等端口

浏览网站前台发现两个登陆点

登陆点A:

一次真实渗透测试中代码审计getshell

登陆点B:
一次真实渗透测试中代码审计getshell

登陆点A是扫描目录中的/.login,登陆处没有验证码,可以尝试爆破

登陆点B在子域中,对账号密码都有一定的格式要求

寻找注入点

挂上BurpSuite,浏览网站,找参数提交的点

一次真实渗透测试中代码审计getshell

算上之前的登陆一共找到了4个参数提交点

漏洞测试:

各种尝试:

网站存在.git 源码泄露 把网站的源码拖下来

一次真实渗透测试中代码审计getshell

大概的看了一下,应该是一个thinkphp框架改的,然后有一些数据库的信息,但是没什么用。

尝试以利用数据库的信息对登陆点B进行登录,失败。再对ssh和登录点A进行爆破,失败。继续下一个点。

分别对4个点进行SQL注入测试,其中只有1个点发生报错:

一次真实渗透测试中代码审计getshell

应该是thinkphp的框架错误,出现了网站的绝对路径。对网站的所有可能存在漏洞进行了探测,均无结果,只能回去老老实实的审代码。

代码审计:

先看application根据代码中的路由规则访问系统,发现基本都失效了,应该是旧系统源码。硬着头皮看,看看能不能找到数据库的连接密码,从phpmyadmin来getshell。打开application就发现了一个config文件夹:

一次真实渗透测试中代码审计getshell

config.php和database.php,但是都没有数据库的连接密码,无法从phpmyadmin进入数据库。然后就是一顿代码审计,并没有发现什么有用的信息。

再看看assert里面有一个编辑器ckeditor:

一次真实渗透测试中代码审计getshell

进入该目录发现了还有一个kcfinder,这个可以在web端进行访问:

一次真实渗透测试中代码审计getshell

现可以上传.htaccess但是我们上传上去的文件还是不被解析,很奇怪,猜测应该外层还有一个.htaccess文件,使得我们的.htaccess未生效。在本地进行一下测试:

一次真实渗透测试中代码审计getshell

果然在外层存在一个.htaccess,这个地方的上传应该没办法了。

继续代码审计,找到了一个imageuploader:

一次真实渗透测试中代码审计getshell

尝试访问:

一次真实渗透测试中代码审计getshell

这次先开代码在进行测试,免得无用功。在pluginconfig.php发现了一些很有意思的东西。这个点并没有连接数据库,账号秘密直接写到文件中的:

一次真实渗透测试中代码审计getshell

获得了账号密码进行登录,再次发现上传点:

一次真实渗透测试中代码审计getshell

很可惜的是这里的上传点是白名单,无法通过上传进行getshell。一次真实渗透测试中代码审计getshell

继续去代码审计,还是pluginconfig.php发现了一个fwrite函数,并且这个地方并没有什么过滤,可以写入东西到pluginconfig.php文件中(后面才发现这个网上好像有这个洞 https://visat.me/security/cve-2019-19502/,大意了)
一次真实渗透测试中代码审计getshell

$newpath可控,但是被"''"所包裹,如果尝试闭合会被转义, 这个地方可以通过花括号来绕过,构造payload:newpath=${${eval($_POST[123])}}

OK,没有问题,现在在网站上进行写入

一次真实渗透测试中代码审计getshell

写入成功,先在尝试蚁剑进行连接

一次真实渗透测试中代码审计getshell

连接成功,点到为止。

声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权

@

学习更多渗透技能!体验靶场实战练习

一次真实渗透测试中代码审计getshell

hack视频资料及工具

一次真实渗透测试中代码审计getshell

(部分展示)

往期推荐

给第一次做渗透项目的新手总结的一些感悟

「登陆页面」常见的几种渗透思路与总结!

突破口!入职安服后的经验之谈

红队渗透下的入口权限快速获取

攻防演练|红队手段之将蓝队逼到关站!

CNVD 之5000w通用产品的收集(fofa)

自动化挖掘cnvd证书脚本

Xray捡洞中的高频漏洞

实战|通过供应链一举拿下目标后台权限

实战|一次真实的域渗透拿下域控(内网渗透)

看到这里了,点个“赞”、“再看”吧

原文始发于微信公众号(白帽子左一):一次真实渗透测试中代码审计getshell

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年3月17日11:05:35
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   一次真实渗透测试中代码审计getshellhttp://cn-sec.com/archives/1226512.html

发表评论

匿名网友 填写信息