我所遇到的Evernote的书签 并想知道如何这个工作。

您只需将其拖动到你的书签,并去任何网页,点击书签,它会先问你要登录界面,在,这一切我已经做了,并知道它是如何工作的。

这是我不明白的一点是,在您登录时,他们验证,并允许你提交的东西(在这种情况下,网站网址等)。当完成其置于正在查看消失在网页上的一个小覆盖的书签。

  

当你去到一个新的标签和使用   书签再次你仍然会记录   在!怎么样?

我可以看到他们正在使用的iframe时,他们的书签负荷叠加到页面上 - 但他们设置cookies或东西吗?如果是这样,这是安全的?任何人都可以更改值?或者,他们使用某种私有/公共密钥体系

顺便说一下,我想使用PHP /使用Javascript(JQuery的也许)复制这个书签。我希望如果有人能帮助我理解他们这样做如何或点我到相关教程。

由于所有的任何帮助。

有帮助吗?

解决方案

对于初学者来说,这里的代码的书签执行:

(function(){
    EN_CLIP_HOST = 'http://www.evernote.com';

try{
    var x = document.createElement('SCRIPT');
    x.type='text/javascript';
    x.src = EN_CLIP_HOST + '/public/bookmarkClipper.js?' + (new Date().getTime()/100000);

    document.getElementsByTagName('head')[0].appendChild(x);

} catch(e) {

    location.href = EN_CLIP_HOST + '/clip.action?url=' + encodeURIComponent(location.href) + '&title=' + encodeURIComponent(document.title);
}

})();

它的作用是相对简单的。它试图从Evernote的网站抓住一个脚本,并添加时间戳的请求,以致它总是拉一个新的副本。如果成功,一堆的JavaScript被添加到它建立从所有的Evernote的功能进行曝光,然后在iframe可以使用标准的饼干等,以确保你登录,然后处理您的请求的iframe页面

在catch块是以防万一的动态脚本加载失败,其中原因你是重定向到Evernote的网站,所以(我猜),它可以夹在那里的内容。

要回答的怎么你还在,你仍然登录,因为您的浏览器目前对Evernote的网站(www.evernote.com)的会话cookie记录的具体问题,所以当iframe中打开的第二个站点,这些cookie去用它和Evernote的认识,你登录。使用Cookie是相当多针对网络上的会话的标准,所以他们没有在这里做什么特别的东西,我敢肯定,你可以SO搜索周围基于cookie的会话安全性问题。

主要的一点是iframe的本质就像有一个单独的窗口打开,但它允许一些有限的数据由基准站页面的iframe中传递,因此它知道你在什么网站。

希望有所帮助。

其他提示

他们可能使用的cookies。他们最有可能开辟一个iframe中,使用JavaScript,为PHP页面在其网站上,那么网站寻找一个登录cookie,如果它的存在,网站拉用户信息,并就执行。

只是要小心,你需要一种方法来验证该Cookie不是由用户创建的欺骗网站。我想一个随机字符串存储在cookie中,并在数据库(在用户表)。创建随机字符串无论何时,当用户试图使用书签的用户登录,比较两个字符串,并只允许访问,如果他们是平等的,如果他们都没有,删除cookies,并要求用户登录。这可以确保攻击者不能只是做与用户的ID的cookie,并接管他们的帐户(攻击者需要的随机字符串,生成的每个登录,这将是很难获得).. 此外,设置的Cookie删除当浏览器会话结束..

希望帮助, 最大

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top