POODLE e la sicurezza dei pagamenti
Inviato: lun ott 20, 2014 4:30 pm
A seguito della recente scoperta della vulnerabilità POODLE (https://www.openssl.org/~bodo/ssl-poodle.pdf), i sistemi di pagamento online, a partire da Paypal, hanno comunicato che a breve impediranno l'utilizzo del protocollo SSL v3 (v3 significa versione 3, che è appunto quella vulnerabile, tutte le versioni successive del protocollo non sono affette da questo problema) durante le transazioni.
Questo comporta che tutti i sistemi di interfacciamento ai gestori dei pagamenti che facciano uso di questo protocollo smetteranno di funzionare.
In Zen Cart, alcuni dei plugin di pagamento facevano uso di questo protocollo nel senso che nel codice si forza l'uso della versione 3, ma fortunatamente da PHP5, PHP è in grado di negoziare automaticamente la versione migliore del protocollo, quindi la soluzione è semplice e consiste nel modificare il codice rimuovendo la forzatura dell'utilizzo della versione 3, senza specificare altro. In tal modo verrà utilizzata la versione migliore possibile.
SOLUZIONE
Cercare in tutti i files php la seguente stringa
si troveranno risultati come
o simili.
E' sufficiente commentare la riga in questione, con //
Es:
In paypal_curl.php, la riga, come detto, è leggermente diversa, quindi si avrà:
Files della distribuzione che presentano questo problema:
/includes/modules/payment/paypal/paypal_curl.php
/includes/modules/payment/authorizenet_aim.php
/includes/modules/payment/authorizenet_echeck.php
/includes/modules/payment/paypaldp.php
/includes/modules/payment/linkpoint_api/class.linkpoint_api.php
Potreste avere altri files che presentano questo problema se avete installato dei plugin che forzino l'uso della versione 3 di SSL. In tal caso dovrete procedere in modo analogo. In caso per questi moduli si verifichino errori di funzionamento in seguito al commento della riga che forza l'uso della versione 3, contattate lo sviluppatore del plugin per avere assistenza.
Questo comporta che tutti i sistemi di interfacciamento ai gestori dei pagamenti che facciano uso di questo protocollo smetteranno di funzionare.
In Zen Cart, alcuni dei plugin di pagamento facevano uso di questo protocollo nel senso che nel codice si forza l'uso della versione 3, ma fortunatamente da PHP5, PHP è in grado di negoziare automaticamente la versione migliore del protocollo, quindi la soluzione è semplice e consiste nel modificare il codice rimuovendo la forzatura dell'utilizzo della versione 3, senza specificare altro. In tal modo verrà utilizzata la versione migliore possibile.
SOLUZIONE
Cercare in tutti i files php la seguente stringa
- Codice: Seleziona tutto
CURLOPT_SSLVERSION
si troveranno risultati come
- Codice: Seleziona tutto
curl_setopt($ch, CURLOPT_SSLVERSION, 3);
o simili.
E' sufficiente commentare la riga in questione, con //
Es:
- Codice: Seleziona tutto
// curl_setopt($ch, CURLOPT_SSLVERSION, 3);
In paypal_curl.php, la riga, come detto, è leggermente diversa, quindi si avrà:
- Codice: Seleziona tutto
// CURLOPT_SSLVERSION => 3
Files della distribuzione che presentano questo problema:
/includes/modules/payment/paypal/paypal_curl.php
/includes/modules/payment/authorizenet_aim.php
/includes/modules/payment/authorizenet_echeck.php
/includes/modules/payment/paypaldp.php
/includes/modules/payment/linkpoint_api/class.linkpoint_api.php
Potreste avere altri files che presentano questo problema se avete installato dei plugin che forzino l'uso della versione 3 di SSL. In tal caso dovrete procedere in modo analogo. In caso per questi moduli si verifichino errori di funzionamento in seguito al commento della riga che forza l'uso della versione 3, contattate lo sviluppatore del plugin per avere assistenza.