——真正的才智是刚毅的志向。
今天没学多少东西,直到下午在看别人的文章的时候看到了phpstudy0day的关键词,好奇就查了查。其实这个洞有一段时间了,然后就准备google试试还能不能找到有洞的网站,直接google搜phpstudy 探针 2014。结果是这样的 ,我不得不感叹google太强了。
前几页我就不打算看了,基本上已经被日穿了,或者洞补了。所以干脆向后面翻,说实话运气很重要,我刚尝试了第一个网站就成了。
首先,点开网站是这样的:
我们要用到的就是这个MySQL数据库连接检测功能,我们尝试弱口令,也就是默认用户名密码 root root登录试试,如果提示
则说明口令是对的,有机会拿下来,所以接下来就是目录默认的/phpmyadmin利用上面的用户名密码登录
接下来就是之前写过的方法拿shell了,在数据库中利用select into outfile方法写入shell,非常简单过程就不写了,这里面的绝对路径在探针那个页面有。
接下来要说的是后来遇到的一个奇葩的站,刚把这个站拿下来,准备再去试一试其他的站,就遇到了我要说的这个目标站,当我打开网站的时候,并没有显示php探针的页面,而是回显了一个内容为Hello world的页面,我tm.... 完全不慌!
既然是phpstudy的,那在尝试一下phpmyadmin这个目录,没准这个存在呢,结果一试 卧槽,真有。 瞬间我就乐了,心里是想着这个管理员一定是加了个index.php页面但是还是默认的用户名密码,然后就开开心心的去连接他的数据库了,结果提示我1045错误,这。。。。密码不对??本来渗透到这应该就结束了,但是顺手就试了一下其他弱口令,结果,结果我就用123456进去了.....进去了!!这管理员这智商我不想说什么了。。
这就好办了 接下来就是select into outfile写shell了,后来发现我错了,这个管理员还是有点安全意识的,因为outfile被禁止了,那我岂不是搞不定这个网站了! 不存在的,首先我们要是root权限,然后可以在日志中写入shell。 方法如下:
show variables like ‘%general%‘; #查看配置 set global general_log = on; #开启general log 模式 set global general_log_file = ‘C:/phpstudy/www/xx.php‘; #设置日志目录为shell地址 select ‘<?php eval($_POST[cmd]);?>‘ 写入shell
这里当时我还遇到了个问题,因为看不到php探针 所以不知道网站的绝对目录,因为phpstudy安装的时候,在目录下还有个phpinfo.php的文件,访问这个也能查看到绝对路径。(也可以phpmyadmin爆路径等)
挂了个图纯属为了装逼,(谁让我还没到那种大牛的地步,现阶段只能装装逼来鼓励自己了~)剩下的就是菜刀连接了。这个漏洞的原因百度一下有很多,这里就不多说了。
这一条路还有很长很长要走,会的只是冰山一角,希望自己不要自负,踏实前行,共勉!