显示百度知道匿名【全解密】

我不喜欢抄别人的东西,关于百度知道匿名提问的解决现在网上也有很多,我是最近才发现类似问题。既然决定写点东西,就应该深入一些,而不是照别人的再写一遍。这里我想就这个问题的本质谈谈。

我个人提出的最简单方法:页面右键“查看源代码”——Ctrl+F查找源代码中“askName”,如下图,找到对应字段,查到匿名提问者是“jbpjh0080 ”。使用Ctrl+F查找源代码中“userName”,类似可以找到匿名回答者

 

网上还有一种针对普通用户的书签方法,虽然为方便不懂的用户,不过不好用,写好的js代码容易抄掉,原理和上面类似,就是通过js将页面标签的hidden属性去掉,从而正常出来。

 

用了百度知道这么多年,还不知道原来“匿名用户”根本没匿,但是既然能通过客户端的东西解决,我想肯定是本身的百度知道平台漏洞造成的。看了百度知道页面的源代码之后才知道,原来百度将匿名提问者这一栏用了个简单的hidden隐藏起来了,实在对百度工作人员的慵懒表示汗颜。

类似这个匿名的处理,如果深刻为用户隐私考虑,用户名是否匿名应该是在服务器端处理,如果匿名,就发送“匿名”,如果不匿名,就读取用户名并发送到客户端。但是百度知道的处理却是:将用户名和是否匿名(0或1)读取出来一起发送到客户端(用户浏览器中),然后通过页面内的javascript脚本处理,如果是0不匿名,就将用户名的标签属性正常显示,如果是1匿名,就将用户名的标签属性加一个hidden。也就是说匿名的用户名已经发送给浏览者,只是通过一些途径隐藏了,浏览者稍作留意就能找出来。

这么做也有百度的道理,那就是静态化能很大降低服务器负载,出于服务器性能考虑,但是没有考虑到用户隐私需求。不过反观,其实匿名不匿名也没有多大意思,百度知道上提问题,既然是公开的,提的问题就不会隐私到哪儿去,再者,如果涉及个人隐私的问题,多少人想去找原作者呢?只有技术类问题大家才会找提问者或者解决者来求助,涉及隐私一类,其实没多少人关注谁提出来的。但是关于匿名回答者这个就让很多回答敏感问题的人也犹豫了,有些提问的人不怕丢人,回答者怕羞了。

当然这也不算百度漏洞,这个问题早提出来了,百度还是没有改变,可见在性能和用户方面的权衡。我也相信百度员工的一流,绝对有考虑到这种处理的弊端,而且这种处理也没有安全漏洞(不会威胁服务器或者用户重要数据)。百度知道的态度就是,“我本来就没准备保密这些用户名,看到了就看到了,我也没损失,有本事你通过这‘漏洞’攻击服务器啊”。

浏览量(57) | 此条目发表在原百度博客文章分类目录。将固定链接加入收藏夹。