Correctif de publication de Magento SUPEE-6482 pour corriger le problème ci-dessous dans l'édition CE et EE
Pour Magento Community Edition:
- Inclusion de fichiers chargés automatiquement dans l'API SOAP de Magento
- Vulnérabilité SSRF dans le fichier WSDL
Pour Magento Enterprise Edition
- Inclusion de fichiers chargés automatiquement dans l'API SOAP de Magento
- Vulnérabilité SSRF dans le fichier WSDL
- Script intersite utilisant des en-têtes non validés
XSS dans la recherche du registre des cadeaux
Faire du changement en classe
Changements à 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,
changement à 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);
}
Voir plus à: http://www.amitbera.com/magento-security-patch-supee-6482/