Facebook SDK for PHP error - CurlException: 35: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure

bluenile picture bluenile · Oct 15, 2014 · Viewed 13.5k times · Source

My app using Facebook SDK for PHP v2.0 stopped working since the past 20 - 24 hours. I keep getting the following error from the base_facebook.php -

CurlException: 35: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure

From reading the other threads on stackoverflow I added the following lines of code to base_facebook.php but none of these help.

$opts[CURLOPT_SSL_VERIFYPEER] = false;
$opts[CURLOPT_SSL_VERIFYHOST] = false;
$opts[CURLOPT_SSLVERSION] = 3;
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'SSLv3');

Any suggestions to the fix the issue would be highly appreciated. Thanks.

Answer

Paiboon Panusbordee picture Paiboon Panusbordee · Oct 16, 2014

It's because SSLv3 vulnerbility here: https://access.redhat.com/articles/1232123 Facebook disabled SSLv3 so, you cannot use it anymore.

If you have php 5.5 or 5.6, try change

$opts[CURLOPT_SSLVERSION] = 3;

to

$opts[CURLOPT_SSLVERSION] = CURL_SSLVERSION_TLSv1;

If you can use it without constant error, it's ok. If you have php version lower than 5.5, just comment these 2 lines out and it will be fine after that.

$opts[CURLOPT_SSLVERSION] = 3;
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'SSLv3');