V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
eYsir
V2EX  ›  程序员

他们是怎么知道我关注的事情的,莫非是Cookie?

  •  
  •   eYsir · 2013-09-12 09:56:37 +08:00 · 4466 次点击
    这是一个创建于 4089 天前的主题,其中的信息可能已经有所发展或是发生改变。
    看到一些网站能分析出你现在关注的事情,比如我搜索过电脑,有得网站就能提示关于电脑的信息,我搜索过鼻炎,也能提示一些鼻炎的信息,同网站我可以理解,把搜索过的关键字存在cookie里,下次从cookie里拿关键字然后推荐相关信息,可不同的网站也能达到这样的效果,真的很神奇
    20 条回复    1970-01-01 08:00:00 +08:00
    leiz
        1
    leiz  
       2013-09-12 10:00:42 +08:00
    你碰到的可能是广告联盟,例如google,baidu。
    当你在google和baidu上搜索任意关键字时,搜索引擎会通过各种方式匿名或者有标识地(anonymously or identically)记录你的关键字,然后你在访问任意使用了他们的广告代码的网站里,都会看到他们给你推送的相关广告。
    具体的实现形式很多样,cookie是其中一种。
    PS: 所有的电商也都在做这种事情。
    est
        2
    est  
       2013-09-12 10:01:13 +08:00   ❤️ 1
    A站:
    <script src="http://c.com/1.js">

    B站:
    <script src="http://c.com/1.js">

    C站:
    <script src="http://c.com/1.js">


    解决办法:用noscript。非本域js一律不加载。
    leiz
        3
    leiz  
       2013-09-12 10:02:56 +08:00
    上面写错了一个字,是identifiablely,不是identically
    Showfom
        4
    Showfom  
       2013-09-12 10:05:11 +08:00
    @est 那用非本域放正常的 js 的怎么办
    yushiro
        5
    yushiro  
       2013-09-12 10:07:43 +08:00
    js不影响, 在cookies里面设置“阻止所有第三方cookies”。
    est
        6
    est  
       2013-09-12 10:10:19 +08:00
    @Showfom 这样的网站非常少。把自己经常去的网站白名单即可。

    遇到一两个不能正常访问的网页,可以在noscript里选择性加载哪些js。

    广告js一看都明白。
    Showfom
        7
    Showfom  
       2013-09-12 10:23:33 +08:00
    @est 一般大点的网站都用不同的域名放 js 和 css ,为了避免 cookies 传递。。。
    felix021
        8
    felix021  
       2013-09-12 11:29:26 +08:00
    @Showfom 不只是cookie传递,还有http协议对于同一个域名的并发请求数量限制
    cxh116
        9
    cxh116  
       2013-09-12 11:34:53 +08:00
    你以为不用js就可阻踪追踪了? google 下 "etag 追踪"
    sobigfish
        10
    sobigfish  
       2013-09-12 11:59:42 +08:00
    还有cnzz之类的统计
    eYsir
        11
    eYsir  
    OP
       2013-09-12 12:02:41 +08:00
    @leiz 这个解释比较靠谱,请详细解释。
    另,我是想知道他们怎么做的,不是想阻止他们
    Chrics
        12
    Chrics  
       2013-09-12 12:03:24 +08:00
    百度已经会把自己的cookie卖给各种人。。
    luikore
        13
    luikore  
       2013-09-12 12:17:27 +08:00
    https://github.com/samyk/evercookie 告诉你有多种追踪方法, 不是控制 js/第三方cookie 就能禁掉的, 除此之外还能利用 flash, silverlight, css history knocking, etag, webcache...

    很多大公司都在这么做, 连 facebook 的 "赞" 按钮都会跟踪浏览行为(不管你有没有登录)
    wwqgtxx
        14
    wwqgtxx  
       2013-09-12 12:30:41 +08:00 via Android
    @est 最典型的例子: .gstatic.com

    大量的js都挂在上面,还有.googleapis.com等等怎么办?
    leiz
        15
    leiz  
       2013-09-12 12:46:25 +08:00
    @eYsir 你在访问一个网页的时候,对方可以获得你的部分数据,例如ip,所用的浏览器等等。在你输入搜索关键字,他们会根据你的历史记录来分析和推测你的兴趣点。同时,在你完成一次http请求的过程中,网站是可以在你本地以cookie的形式来记录一些数据,作为以后对你跟踪记录的线索。

    当获得了你的关键字和历史信息(专业的说法叫user profiling,用户建模),可以对你的兴趣点进行推测。推测使用的方法有很多,一般常见的是推荐系统,在搜索领域,会在query extending(查询扩展)的过程中为你的原始关键字添加更多的探测条件。例如你搜,hello,实际上系统可能是使用hello world, hello beauty, hello gay等字符串进行查询,最终结果利用你的历史信息进行计算得到一个权重的分数,排序,返回给你。相似的,广告也是这样,只是在广告栏展示而非搜索结果展示。
    Showfom
        16
    Showfom  
       2013-09-12 12:49:11 +08:00
    @felix021 是的,所以大点的网站都 js 一个域名, css 一个域名,图片一个域名,嗯哼
    phuslu
        17
    phuslu  
       2013-09-12 12:50:37 +08:00
    @Showfom 订阅 adblock 的隐私列表可破。
    est
        18
    est  
       2013-09-12 12:51:51 +08:00
    @wwqgtxx 都说了好多遍了。白名单啊。 *.google.* *.youtube.* *.blogspot.* 白名单不就完了么。如果实在不行就对 .gstatic googleapis 白名单

    当前页面无法正常访问,可以临时启用js。自己用用就明白了。
    zerosyn
        19
    zerosyn  
       2013-09-12 13:06:35 +08:00
    Firefox的Ghostery扩展可以完全暴露出谁在追踪你
    scylla
        20
    scylla  
       2013-09-12 20:33:02 +08:00
    @eYsir

    google chrome 使用插件 Collusion for chrome

    在浏览器里设置阻止第三方 Cookie 和网站数据
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2760 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 11:44 · PVG 19:44 · LAX 03:44 · JFK 06:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.