Parche de lanzamiento Magento SUPEE-6482 para corregir el problema a continuación en la edición CE y EE
Para Magento Community Edition:
- Inclusión automática de archivos en la API SOAP de Magento
- Vulnerabilidad de SSRF en el archivo WSDL
Para Magento Enterprise Edition
- Inclusión automática de archivos en la API SOAP de Magento
- Vulnerabilidad de SSRF en el archivo WSDL
- Secuencias de comandos entre sitios utilizando encabezados no validados
XSS en la búsqueda del registro de regalos
Haciendo cambio en clase
Cambios en 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,
cambiar en 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);
}
Ver más en: http://www.amitbera.com/magento-security-patch-supee-6482/