Magento - PayPal - SSLV3: Czy będzie działać, gdy PayPal przerwie SSL3 3 grudnia?


15

Właśnie otrzymałem wiadomość e-mail z systemu PayPal, w której poinformowano, że z powodu luki w programie Poodle, zaprzestaną obsługi protokołu SSLV3 przy użyciu interfejsu API płatności od 3 grudnia 2014 r.

Chciałem tylko go opublikować i zapytać, czy ktoś wie, czy wpłynie to bezpośrednio na integrację PayPal Payment Pro / Hosted Solution / Express w Magento 1.9.0.1 (najnowszy)?

Jeśli tak - ktoś ma pomysł, jak mogę naprawić standardowe moduły paypal w Magento?

Dzięki!


Istnieje już kilka wątków na ten temat w Stack Overflow. Zasadniczo wystarczy połączyć się z interfejsem API PayPal za pośrednictwem TLS za pomocą cURL - jednak tak się dzieje.
benmarks

Cześć Benmarks .. Poszukałem tego, ale tak naprawdę nie na stronie przepełnienia stosu, tylko część magento. Właśnie próbowałem wyszukać te wątki, aby sprawdzić, czy mogę przeprowadzić więcej testów, ale nie mogę ich znaleźć, czy możesz podać mi linki? Dzięki!
loginid

Odpowiedzi:


2

Jak rozumiem (i popraw mnie, jeśli się mylę), to tak naprawdę Twoja firma hostingowa (jeśli jest na wspólnej platformie) lub ty sam, jeśli na przykład na VPS lub serwerze dedykowanym, który musiałby wyłączyć SSLv3. Twój hosting powinien to zrobić, jeśli jeszcze tego nie zrobił, a jeśli jesteś odpowiedzialny za swój własny serwer, to uważam, że możesz zmodyfikować swój httpd.conf i dodać następujące;

SSLProtocol ALL -SSLv2 -SSLv3

Spowoduje to wyłączenie v2 i v3 i uważam, że TLS jest standardowym połączeniem rezerwowym.

Dzieje się tak, jeśli konfiguracja Apache, więc jeśli używasz czegoś innego, kod może się nieznacznie zmienić, ale mam nadzieję, że to trochę ci pomoże, ale byłbym wdzięczny za informację innych ludzi na ten temat.


Dla twojej informacji możesz sprawdzić, czy twój serwer WWW ma obecnie włączoną obsługę SSLv2 lub SSLv3, korzystając z tej witryny foundeo.com/products/iis-weak-ssl-ciphers/test.cfm
Tony Pollard

Ach! Dzięki za to Tony - myślę, że to ma dla mnie sens teraz. Więc to nie ma nic wspólnego ze sposobem, w jaki Magento jest w ogóle kodowane, ale ma wszystko wspólnego ze sposobem, w jaki firma hostingowa skonfigurowała, który protokół SSL (lub nie używa teraz SSL) jest używany.
loginid

Tony, masz to od początku. Wspomniano o SSLv3 po stronie serwera dla żądań przychodzących, a nie inicjowanych przez serwer żądań wychodzących. Adres e-mail PayPal dotyczy tego ostatniego.
choco-loo,

Tak, prawie się zalogował, firma Symantec wydała również narzędzie sprawdzające. Przeprowadziłem zmianę, którą opisałem powyżej na VPS, który mam i przeszedł teraz obie kontrole, więc nie powinienem mieć żadnych problemów.
Tony Pollard,

choco-loo, jeśli mój serwer inicjuje żądanie wychodzące, ale nie ma włączonego protokołu SSLv3, to czy nie może go użyć poprawnie? Również przeglądarki i bramki płatnicze przestają obsługiwać protokół SSLv3, więc czy to wszystko nie powstrzymuje? Nie wierzę, że Magento i tak używa konkretnego protokołu, ale staram się upewnić, że wszystko jest bezpieczne. Zainteresuj się swoimi przemyśleniami, jeśli masz czas.
Tony Pollard,

1

Upuść ten kod:

<html>
<head>
</head>
<body>
<?php
$url = "ssl://www.sandbox.paypal.com";
$fp = fsockopen ($url, 443);
if (is_resource ($fp)) {
    echo "not affected";
}
else {
    echo "affected";
}
?>
</body>
</html>

w pliku o nazwie paypal-tls-test.php w katalogu głównym witryny Magento. Następnie wskaż swoją przeglądarkę, np . Http://www.yoursite.com/paypal-tls-test.php . Skrypt próbuje nawiązać połączenie z piaskownicą PayPal, która nie obsługuje już protokołu SSLv3. Jeśli połączenie zostanie nawiązane pomyślnie, oznacza to, że wszystko będzie w porządku. Jeśli nie, masz pracę do wykonania. To oczywiście zakłada, że ​​rzeczywisty protokół nie jest gdzieś zakodowany na stałe w Magento (skrypt sprawdza zdolność twojego serwera do nawiązania połączenia).


Ten skrypt mówi mi „nie dotyczy”, a poodlescan.com mówi „Ten serwer obsługuje protokół SSL v3”. => WRAŻLIWY.
PiTheNumber

0

Wszystko w CURL connect. To, co musisz sprawdzić, to czy biblioteka curl po stronie klienta obsługuje TLS (aby można ją było przywrócić).

Utwórz prosty skrypt CURL PHP z następującą definicją, aby wymusić TLS,

curl_setopt($curl_request, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);

Jeśli się powiedzie, nie masz się czym martwić. Jeśli nie, prawdopodobnie będziesz potrzebować ponownej kompilacji libcurl i openssl


0

O ile mi wiadomo, w starożytnej konfiguracji Magento 1.4.1.1 mojego klienta, podstawowa komunikacja Paypal (przez curl) nie wymusza żadnego konkretnego protokołu, więc curl powinien używać TLS, gdy Paypal odrzuca obsługę SSLv3.

Chyba się dowiem 3 grudnia.


Powinien już korzystać z TLS, ALE, jest podatny na MITM, zmuszając go do wycofania z TLS do SSLv3, który jest zepsuty ... W dniu 12/3 strona serwera odmówi przywrócenia do SSL. JEŚLI w ogóle możliwe, chcesz naprawić stronę klienta, aby nie zezwalała teraz na wycofanie, aby zapewnić ochronę, dopóki Paypal nie naprawi ostatecznie swojej strony.
Brian Knoblauch

0

Dodałem następujący wiersz:

curl_setopt ($ curl_request, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);

do testowego skryptu php. Oto wynik po uruchomieniu go za pomocą przeglądarki:

curl_setopt ($ curl_request, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);

czy to jest ok? Czy mogę pracować z moją wersją Curl 7.33.0 i Paypal również po 3 grudnia? Chyba tak!

Pozdrawiam JJ


0

Więc mój menedżer konta paypal dzwoni do mnie dzisiaj i mówi, że moje strony używają ssl 3.0 / pudel i nie będą działać po migracji 3 grudnia

Wskazują mi wszystkie te dokumenty, które w zasadzie mówią, że jeśli mogę zadzwonić do serwera piaskownicy programowania i otrzymać akceptowalną odpowiedź, wszystko powinno być w porządku.

Nie zmieniłem absolutnie niczego w kodzie ani konfiguracji serwera. Testowałem na deweloperskim serwerze piaskownicy i wszystko przebiega idealnie. Magento ver. 1.4.1.0

Czy to oznacza, że ​​wszystko powinno być OK w dniu 3 grudnia?

Uwaga: wszystkie moje strony internetowe nadal przekazują mi poniższe komunikaty, gdy przeglądam stronę https://www.poodlescan.com/

„Ten serwer obsługuje protokół SSL v3”. „Ten serwer obsługuje protokół SSL v2. Naprawdę powinieneś wyłączyć ten protokół”.

Każda pomoc byłaby bardzo mile widziana.


Oznacza to, że Twoja witryna jest już w stanie wykonywać TLS, ale jest podatna na ataki typu man in the middle, które zmuszają cię do korzystania z SSL, a następnie przerywają strumień danych. Twoje rzeczy się nie zniszczą, gdy druga strona zostanie ulepszona, ale nie jesteś też bezpieczny.
Brian Knoblauch

0

Zmodyfikuj plik httpd.conf Apache i dodaj następujący kod:

SSLHonorCipherOrder On
SSLProtocol -All +TLSv1

Możesz to również zrobić za pośrednictwem WHM, jeśli masz VPS lub serwer dedykowany:

Przejdź do Konfiguracja usługi -> Konfiguracja Apache -> Dołącz edytor -> Pre Main Include

i dodaj powyższe dwa wiersze.

Następnie możesz połączyć się z piaskownicą PayPal, aby sprawdzić, czy protokół SSLv3 został wyłączony, lub możesz dodać kod sugerowany przez Randalla Hertzlera w jego odpowiedzi.

Sam to zrobiłem i działa dobrze.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.