Magento release patch SUPEE-6482 สำหรับการแก้ไขปัญหาด้านล่างในฉบับ CE & EE
สำหรับ Magento Community Edition:
- การรวมไฟล์อัตโนมัติใน Magento SOAP API
- SSRF ช่องโหว่ในไฟล์ WSDL
สำหรับ Magento Enterprise Edition
- การรวมไฟล์อัตโนมัติใน Magento SOAP API
- SSRF ช่องโหว่ในไฟล์ WSDL
- การเขียนสคริปต์ข้ามไซต์โดยใช้ส่วนหัวที่ไม่ผ่านการอนุมัติ
XSS ในการค้นหาของขวัญรีจิสทรี
ทำการเปลี่ยนแปลงในชั้นเรียน
การเปลี่ยนแปลงที่ Mage_Api_Model_Server_Adapter_Soap
: $urlModel->getUrl('*/*/*');
if ( $withAuth ) {
- $phpAuthUser = $this->getController()->getRequest()->getServer('PHP_AUTH_USER', false);
- $phpAuthPw = $this->getController()->getRequest()->getServer('PHP_AUTH_PW', false);
- $scheme = $this->getController()->getRequest()->getScheme();
+ $phpAuthUser = rawurlencode($this->getController()->getRequest()->getServer('PHP_AUTH_USER', false));
+ $phpAuthPw = rawurlencode($this->getController()->getRequest()->getServer('PHP_AUTH_PW', false));
+ $scheme = rawurlencode($this->getController()->getRequest()->getScheme());
if ($phpAuthUser && $phpAuthPw) {
$wsdlUrl = sprintf("%s://%s:%s@%s", $scheme, $phpAuthUser, $phpAuthPw,
เปลี่ยนที่Mage_Catalog_Model_Product_Api_V2
public function create($type, $set, $sku, $productData, $store = null)
{
- if (!$type || !$set || !$sku) {
+ if (!$type || !$set || !$sku || !is_object($productData)) {
$this->_fault('data_invalid');
}
@@ -243,6 +243,9 @@ class Mage_Catalog_Model_Product_Api_V2 extends Mage_Catalog_Model_Product_Api
*/
protected function _prepareDataForSave ($product, $productData)
{
+ if (!is_object($productData)) {
+ $this->_fault('data_invalid');
+ }
if (property_exists($productData, 'website_ids') && is_array($productData->website_ids)) {
$product->setWebsiteIds($productData->website_ids);
}
ดูเพิ่มเติมได้ที่: http://www.amitbera.com/magento-security-patch-supee-6482/