我目前正在研究一个已经修改过的 magento 版本(v 1.6.1)。之前的开发者自己修改了app/core,我升级到1.7怎么办?它将恢复原始应用程序/核心,对吗?(因为我知道每个模组都应该放在 app/local 下)
然后我注意到,通过在电子商务上运行 diff 和一个干净的 1.6.1 安装,开发人员已经应用了这个修改(标有“<”的行是原始内容,“>”是编辑过的内容)
diff app/code/core/Mage/Checkout/controllers/CartController.php
169c169,170
< $params['qty'] = $filter->filter($params['qty']);
---
> #$params['qty'] = $filter->filter($params['qty']);
> $params['qty'] = $params['qty'];
311c312,313
< $params['qty'] = $filter->filter($params['qty']);
---
> #$params['qty'] = $filter->filter($params['qty']);
> $params['qty'] = $params['qty'];
383c385,386
< $cartData[$index]['qty'] = $filter->filter(trim($data['qty']));
---
> //$cartData[$index]['qty'] = $filter->filter(trim($data['qty']));
> $cartData[$index]['qty'] = $data['qty'];
您可能会注意到他们禁用了 $filter->filter 和 trim。
这不会将电子商店暴露给 SQLInjections 或类似的任意代码执行吗? magento 之前是否执行过另一项检查以将此数据存储在数据库中?