ECShop远程代码执行缝隙安全公告
颁布功夫 2018-09-04缝隙编号和级别
CVE编号:无,,,,,,,危险级别:高危,,,,,,,CVSS分值:官方未评定
影响版本
ECShop 2.x、ECShop 3.x
缝隙概述
ECShop是一款B2C独立网店系统,,,,,,,适合企业及幼我急剧构建个性化网上商店。。。。。系统是基于PHP说话及MySQL数据库构架开发的跨平台开源法式。。。。。该网店系统大量用于幼我网店搭建。。。。。ECShop开发了独有的高效模板引擎(2.15以前版本使用smarty模板引擎),,,,,,,并结合了Dreamweaver的模板和库职能,,,,,,,使得编纂造作模板变得更单一。。。。。用户可凭据自己的需要对ECShop进行定造和扩大。。。。。
该缝隙产生的底子原因在于ECShop系统的user.php文件中,,,,,,,display函数的模板变量可控,,,,,,,导致注入,,,,,,,共同注入可达到远程代码执行的成效。。。。。使得攻击者无需登录等操作,,,,,,,直接能够获得服务器的权限。。。。。攻击者可利用该缝隙直接获取到服务器的最高权限。。。。。该缝隙影响ECShop全系列版本,,,,,,,截至目前,,,,,,,官方尚未颁布关于缝隙的新闻及补丁,,,,,,,现阶段利用该缝隙执行批量化攻击的数量正呈上升趋向。。。。。
缝隙验证
接着,,,,,,,$back_act变量被assign函数挪用,,,,,,,assign函数用于将表部变量传递给模板函数,,,,,,,而后通过display函数将之显示在页面上。。。。。
在/include/cls_template.php文件中找到display函数,,,,,,,该函数中有一个insert_mod函数是关键。。。。。
insert_mod函数在1150行,,,,,,,该函数返回一个动态挪用,,,,,,,凭据PoC的细节,,,,,,,我们能够得知挪用的函数名是insert_ads。。。。。
跟进insert_ads函数,,,,,,,该函数存在于/include/lib_insert.php文件中:
能够从PoC中发现,,,,,,,$arr['id']和$arr['num']这两个变量,,,,,,,都是表部可控的输入点,,,,,,,在机关攻击向量的过程中用于执行SQL语句。。。。。而在函数的最后,,,,,,,挪用了fetch函数,,,,,,,该函数是代码执行中缝隙触发的点。。。。。
首先凭据提醒装置好ECShop环境(2.7.3版本),,,,,,,而后复现该缝隙,,,,,,,通过Brup Suite抓包新增Referer字段以及Payload后,,,,,,,得到响应包,,,,,,,复现该缝隙,,,,,,,在响应页面成功打印出SQL语句。。。。。
而后利用SQL注入缝隙,,,,,,,来复现写入webshell的操作,,,,,,,首先攻击同样是批改Referer字段中的值,,,,,,,参与机关好的PoC,,,,,,,用SQL语句进行号令注入。。。。�???????D芄豢吹阶钪赵诟柯枷绿焐藈ebshell,,,,,,,webshell为1.php文件。。。。。
影响领域
建复建议
一时处置方式能够批改include/lib_insert.php文件中有关缝隙的代码,,,,,,,将$arr[id]和$arr[num]强造将数据转换成整型,,,,,,,$arr[id]和$arr[num]前参与intval限度。。。。。必要批改的处所为:
ECShop 3.6.0建复了以上缝隙,,,,,,,因而建议尽快更新至最新的3.6.0版本。。。。。
http://ringk3y.com/2018/08/31/ecshop2-x%E4%BB%A3%E7%A0%81%E6%89%A7%E8%A1%8C/


京公网安备11010802024551号