您现在的位置是:首页 > 一次get web shell的经历

一次get web shell的经历

默认 2020-07-11 11:08 2360人围观 来源:原创
shell  
简介几乎安全问题存在于所有暴露在公网上的服务器,一旦IP上公网,会面临各式各样的攻击。因此一定要注意做好一些最基本的安全措施。本文介绍了一次无意中获得一个服务器文件的经历。

 

1、 无意之中发现打开网址 http://www.xxx.com http://xxx.com 居然不一样后者显示的是下图,明显是 phpStudy 。

 

2、 突然就感觉这网站安全很有问题,于是试了试页面底部的 mysql 链接测试,输入默认账号密码 root root 果然可以登录

3、 用 mysql 客户端工具连接,成功连接,立刻将数据库保存一份下来。

 

4、 光有数据库也没用,得想办法拿到代码,先试试找找后台地址登陆吧,于是输入www.xxx.com/admin,页面是这样的,看着很眼熟,这是TP官方出品的OneThink 。

5、 去刚刚拿到的 mysql 里找找账号密码,果然管理员是 administrator,密码是加密过的,不过没关系,我们可以这样

 

6、 登录看看,居然成功了,看着首页的统计数量有点假,应该是测试阶段。

7、有了后台还是得不到代码,按照一般的套路,下面应该找上传文件漏洞,好将我准备的 PHP 打包代码(其实是之前自己服务器被攻击,黑客留下的)上传上去,然后下载到整个网站的代码。找了半天只有图片上传,没想到这一块居然还很严谨,检测了必须是图片上传。没办法,思路接下来转向【图片+隐藏代码】,费了好大劲试了半天终于用 cmd 命令打包了一个 gif 图片,里面藏了一句话木马。图片是这样的:

7、 顺利传到后台,并且能用过 xxx.com/Uploads/xxx.gif 访问了,可是走到这里又中断了,光携带一句话木马,还是没法被执行,除非能将扩展名改成.php。找了半天也没有类似的后台功能。想了好久,感觉这条路是走不通了,后台也只能看一看。思路立刻又回到了 mysql 上,数据库的所有权限都拿到了,能不能从 mysql 下手呢。百度了下,果然有,感觉胜利就在眼前了。图中的目录在当前网站是 C:/WWW

 

 

8、 赶紧用 mysql 客户端连接执行试了试,居然报错。搜了一下,好像为了安全现在 mysql 默认关闭了写文件的权限。完了,这还是走不通。

9、 本着不放弃钻研的精神,又百度了一番:mysql webshell,果然还有另一种方法,原理是将 mysql 的日志文件路径改掉,然后将木马代码通过正常的执行写入到日志文件里。

 

10、 在试了好几次后终于成功了,赶紧访问 xxx.com/phpMyAdmin/10.php,果然页面出来了。

 

11、 点击开始打包,过了一会显示打包成功,直接访问 xxx.com/phpMyAdmin/dabao.zip 下载下来文件,确实所有网站源码都在里面,到这里基本结束了。补充一句,为什么这里有一个 phpMyAdmin 呢,因为虽然我们知道根目录是 C:/WWW,但是 xxx.com 网站显然配置了子目录,但是又不知道是什么子目录,考虑到 phpStudy 默认是有 phpMyAdmin 的,所以试了一下,果然存在。由此我们可以总结,网站一旦放到公网上,一定要注意安全隐患,该改的密码立刻改掉,该关闭的权限立刻关掉(比如本次实验网站如果将 mysql 设为不允许外网连接,那么攻击的可能性就大大降低了)

申明:本帖仅作为安全技术研究使用,大家不得去篡改窃取他人机密数据,本次实验下载实验对象数据前已经确认对方是正在开发中的网站,都是测试数据,作者研究完立刻删除了相关数据。

 

我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=3cn0udci9ym88

文章评论