【问题标题】:How to connect securely for get secure cookie如何安全连接以获得安全 cookie
【发布时间】:2019-06-12 07:52:56
【问题描述】:

我想连接并从具有安全 cookie 的网站获取数据。我需要在下一次请求时设置 cookie 以解决验证码,但我在我的项目或提琴手中看不到 cookie。

同站点、安全、httponly 显示在 set-cookie 响应标头中

如何像浏览器一样模拟这个过程?

浏览器会按照它在 cookie 中看到的内容执行什么操作?

我知道在 cURL 上设置 X509 CA 并尝试它,但我在所有测试中都遇到错误:无法识别对等证书颁发者。

我使用 CURLOPT_CAINFO 根据我的请求设置 CA 我尝试使用不同格式的 CA,例如 cer 、 crt 、 pem 我用 openssl 更改它

<؟php
        $headers = array(
            'Host: example.com',
            'Connection: keep-alive',
            'Upgrade-Insecure-Requests: 1',
            'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36',
            'Accept-Language: en-US,en;q=0.9',
        );
        $url='https://example.com/';
        $curl = curl_init();
        curl_setopt_array($curl, array(
            CURLOPT_URL            => $url,
            CURLOPT_RETURNTRANSFER => true,
            CURLOPT_ENCODING       => "",
            CURLOPT_MAXREDIRS      => 30,
            CURLOPT_FRESH_CONNECT      => true,
            CURLOPT_HTTP_VERSION   => CURL_HTTP_VERSION_1_1,
            CURLOPT_CUSTOMREQUEST  => 'GET',
            CURLOPT_HTTPHEADER     => $headers,
            CURLOPT_CONNECTTIMEOUT     => 10,
            CURLOPT_SSL_VERIFYPEER     => true,
            CURLOPT_SSL_VERIFYHOST     => 2,
            CURLOPT_CAINFO     => 'Cert/certificate.crt',
            CURLOPT_VERBOSE     => 1,
            CURLOPT_HEADER     => 1,
        ));
        $response = curl_exec($curl);
        $err      = curl_error($curl);
?>

【问题讨论】:

  • 开始标签在我看来是错误的。

标签: php ssl curl https x509


【解决方案1】:

要使用 curl 设置 cookie,请确保您有这两个选项

$cookiefile = dirname(__FILE__)."/cookie.txt" ; 
curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookiefile);
curl_setopt ($ch, CURLOPT_COOKIEFILE, $cookiefile);

【讨论】:

  • 我想从响应头中获取安全的 cookie。我的 cURL 错误是:无法识别对等证书颁发者。
  • superuser.com/a/1408815 似乎是类似的问题。显然,服务器配置错误导致了您看到的错误。
猜你喜欢
  • 2013-01-19
  • 2013-01-27
  • 2020-11-16
  • 2012-10-06
  • 1970-01-01
  • 2020-05-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多