chrome-extension:抓取网址标签下的所有跨域Cookie?

时间:2015-03-14 23:39:35

标签: javascript cookies google-chrome-extension

我只能使用相同的域抓取cookie,但是当您在chrome dev工具中查看cookie时,您可以在右侧的同一个url树选项卡下看到一堆具有不同域值的cookie,如下所示。例如,圈出的cookie来自不同的域,但显示在developer.chrome.com下。

enter image description here

我的问题是如何从该域名标签中提取不同域名的所有Cookie?

    chrome.cookies.getAll({'url': "http://developer.chrome.com"}, function (cookies) {
        if (cookies) {
            console.log(cookies); //will only pull cookies with domain value developer.chrome.com
        }
    });

3 个答案:

答案 0 :(得分:2)

您可以通过访问document.cookie来阅读所有Cookie并进行相应的解析。

查看示例here

答案 1 :(得分:2)

您需要检查在选项卡上发出的请求,以查看哪些请求跨域Cookie。

要访问网络API,您需要制作DevTools扩展程序[info]

从那里你需要提出以下要求:

chrome.devtools.network.getHAR()

这将记录关于正在进行的网络请求的json。 在那个json中,您可以访问cookie对象。 json基于HAR规范。 [info]

答案 2 :(得分:0)

除非您尝试访问其cookie的Web应用程序未设置document.cookie标志,否则

HttpOnly不会授予您从脚本访问cookie的权限。

此外,除非存在XSS或类似漏洞,否则您无法发出cross-domain Cookie请求。

上面提到的Chrome扩展程序似乎能够检查所有浏览器流量(跨域)并从该流量中提取Cookie,尽管我自己还没有尝试过,所以在这一点上可能是错误的。