长尾关键词除了反向渗透技术外,大部分都出现在文章页面上,有的出现在文章标题中,有的出现在正文中。因此,在定位长尾关键词时,要最大限度地注意文章内容页面的包含情况。搜索引擎本身的产品,以占我国国内搜索引擎市长/市场份额70%的百度为例,百度有几个重要的自己的产品,其权重非常高。在关键词搜索结果中,排名往往占据主页。包括百度知道、百度贴吧、百度百科、百度文库、百度经验、百度照片、百度地图重要发明
百度阅读器是微软和安卓平台上的一种网络阅读器,个人用户在向效劳器传输数据时举行加密,就算加密了也很轻易被解密。阅读器更新时大概很轻易地被中心进击者运用,实行恣意代码。
安卓版本的百度阅读器传输的个人可辨认数据,包括用户的GPS坐标、搜刮内容和接见时的URL,这些内容都是没有举行加密的。不仅云云,在传输用户的IMEI和四周无线网络列表时也只是运用了简朴、易于破解的加密。
Windows版的百度阅读器在传输个人可辨认数据点的时刻也没有举行加密,或者是举行了简朴的加密。这些数据包括了用户的搜刮词、硬盘序列号模子、MAC网络地点、URL和接见汗青,另有CPU型号。
无论是Windows版照样安卓版的百度,都没有运用代码署名来庇护软件更新,进步其平安性,也就是说,更新途径上随意一个歹意进击者都能够让该运用程序下载实行恣意代码,这是一个严重的平安风险。
微软版本的百度阅读器有一个功用:能够将一个请求转向特定的网站,这就许可用户能够接见一些在中国被墙的网站。
对百度的环球版本举行剖析以后发明,数据泄漏是因为百度同享了它的软件开发东西包(SDK),这影响了数百个由百度和谷歌运用市肆的第三方共同开发的运用程序,以及中国某个普遍运用的运用市肆里的数千个运用。
引见
百度阅读器是由中国最大的科技公司百度公司开发的,向Windows和安卓平台免费供应。它供应的功用不仅仅是平常阅读器的功用,包括了视频音频下载东西和内置的种子下载。
本篇报告针对百度阅读器在操纵历程当中是怎样治理和传输用户数据做出了细致的剖析。报告指出,Windows和安卓版本的百度阅读器都有着肯定的平安隐患,都有大概泄漏个人用户数据,包括用户地舆位置、硬件标示符、四周的无线网络、网页阅读数据和搜刮词。这些数据的传输在两种版本的阅读器中都没有举行加密或是举行了简朴的加密,这也就是说,任何进击者都能够经由历程手机途径并举行肯定的解密手腕来取得此类数据。别的,两种版本的运用都没有运用数字署名来庇护其软件更新,这就意味着歹意进击者能够让阅读器下载并实行恣意代码。
这份报告是我们之前事情的连续,在此之前我们已检察了在亚洲盛行的挪动运用程序的平安和隐私状况。我们之前的研究报告就发明UC阅读器有着类似的问题,这个阅读器是由中国电子商务巨子阿里巴巴公司开发的。那份报告记录了UC阅读器关于用户的敏感信息没有举行加密传输,这些信息包括了IMSI、IMEI、安卓ID、无线网络MAC地点、地舆定位数据和用户的搜刮查询。UC阅读器的平安问题是在 Edward Snowden 泄漏出来的文件中肯定的,该构造是五眼谍报同盟,包括了加拿大、美国、英国、澳大利亚和新西兰的谍报机构,他们就是运用这些破绽来辨认用户的。
在过去的事情中,我们已剖析了热点的第三方软件的自动更新机制。我们发明进击者运用百度阅读器自动更新机制来举行长途代码实行的破绽和那些第三方软件的破绽非常类似。
别的,我们也对TOM-Skype和新浪UC信息平台的关键字检察举行了视察,不仅云云,我们还对亚洲盛行的手机谈天运用程序举行了比较剖析,比方微信、LINE和Kakao Talk。
我们还宣布了一份关于挪动通讯隐私平安问题的概述,标题叫做《 The Many Identifiers in Our Pockets》。关于本篇报告中的一些手艺问题来讲,那份概述中关于挪动手艺标示符的申明是个很好的背景引见。别的,我们还在 OpenEffect上宣布了一篇关于健身追踪器上隐私和平安问题的剖析。
负责任的表露和关照
我们在2015年10月26日向百度关照了我们的发明和我们宣布这份报告的企图。我们示意不会依据国际关于表露破绽的通例在登载前45天关照。百度最初示意会在2016年1月24日宣布的更新中处理我们所肯定的问题。然则百度发明这些平安问题已影响了其他的产物,所以他们请求我们推晚到2016年2月14日以后再宣布。为了给百度充足的时候来修复一切破绽,我们赞同了。
在这以后,百度示意他们会在2月14日宣布Windows和安卓客户端的更新版本。为了肯定他们真的处理了问题,我们对两种更新版本举行了剖析。剖析结果在报告末端部份的“更新:对百度最新版本的剖析”。
我们在2月16日向百度的国际通讯主任发送了一封关于百度阅读器平安隐私问题的电子邮件,22日我们收到了复兴。
在本报告的末端附录有我们和百度关于这些平安问题谈判的一切函件。
百度阅读器:简朴背景引见
百度阅读器是由中国互联网巨子百度公司专为Windows和安卓系统研发的阅读器。初次宣布是在2011年,重要基于谷歌Chromium,它具有大批功用,包括集成的视频音频下载东西、内置种子下载和鼠标手势支撑。该阅读器是百度供应的许多效劳之一,其他另有搜刮引擎、大规模的广告平台和百度百科(类似于维基百科)。依据“中国互联网视察”的视察,到2015年,百度阅读器的网民渗入率达到了29.2%。
作为中国占主导地位的高科技公司之一,加上没有来自被屏障的谷歌搜刮引擎的协作压力,百度已成为了中国最经常使用的搜刮引擎。在世界范围网页接见量排名的Alexa名单上,百度排名第四,在中国排名第一。公司2014年的收入是79.6亿美金。
2014年7月,百度和互联网流量治理公司CloudFlare建立了协作,该公司总部设在美国。两者杀青协作,运用百度公司的数据中心和CloudFlare的流量治理效劳来供应中国网站的接见速率。这项效劳被称为百度云加速,重要针对愿望加速在中国效力低下、检察严苛的网络中运转速率的企业。本报告的第二部份将引见了百度阅读器的另一个功用,即对境外特定网站的流量举行代办来进步机能。
手艺剖析
我们运用逆向工程手艺剖析了两种版本的百度阅读器。为了剖析程序行动,我们运用了机械码、字节码反汇编程序、反编译器和调试器,包括了JD、JADX和IDA。我们还运用了 tcpdump和Wireshark来捕捉剖析网络流量。
剖析分为三部份。第一部份引见了两种版本的中文版百度阅读器是怎样向百度效劳器发送未加密或是易破解个人信息的。第二部份形貌了百度阅读器Windows中文版的一种迥殊功用,即对境外特定网站的流量举行代办来进步机能。第三部份议论了中文版和环球版共有的破绽,以及有若干破绽是因为百度软件开发东西包的运用,在其他百度或是第三方运用中都能够找到该东西包。
“易破解”的加密
报告中,在谈到百度阅读器运用的加密的时刻我们会用到“易破解”这个短语。在这里,我们来议论一下我们所说的这句话,以及怎样准确实行百度阅读器的加密术。
当我们说加密术是“易破解”的时刻,并不是说加密自身的算法是有瑕玷或是不平安的(只管有时刻百度阅读器运用的算法的确是如许)。相反的,我们的意义是该算法运用不当。望文生义,百度阅读器的剖析师能够运用该算法编写一个解密东西。
加密数据有两种基础要领:对称加密或是非对称加密。对称加密(如图一所示)比拟于非对称加密的长处是加密速率快。瑕玷就是只需你晓得运用的算法和某个键,你就可以破解恣意的暗码。运用简朴的算法,做到这点轻而易举。当加密术只运用了对称算法的时刻,只需对程序略加剖析就可以够写出一个破解东西来。
像RSA如许的非对称算法(如图二所示)就是被开发来处理这一问题的。虽然这类算法显著慢于对称算法,但上风就是用于解密的密钥差别于加密密钥。这两个密钥必需是数学相干的,经由历程算法设想生成一个密钥对,然则从加密密钥到解密密钥的派生历程要经由历程庞杂的盘算。这就意味着一个程序能够运用一个硬编码的加密密钥,然则解密密钥只能保存在收件人那边。虽然数据吸收方能够运用保密的解密密钥,但数据仍有大概被盗取,只需解密密钥存在于程序当中,第三方就有大概写出破解东西。
为了改良机能劣势的非对称加密,通常会运用连系了以下手艺的对称加密。要想对数据举行加密,会随机生成一对对称密钥来加密数据。然后会运用非对称密钥来加密随机生成的加密密钥。以后被非对称加密的对称密钥和被对称加密的数据会一同发送给收件人。收件人能够运用私家的解密密钥来解密对称密钥,然后再用它来解密数据。因为只要加密密钥是被非对称加密的,其存储空间远小于全部数据,所以这项手艺要远快于非对称加密一切数据,因此是连系了两种加密手艺的长处。这是网络上运用的加密术的基础手艺,比方SSL。
我们之所以说百度阅读器的加密是易破解的,是因为它运用的加密完全是硬编码编写的对称密钥。运用这类方法加密的通讯很轻易被破解。我们发起百度或是任何愿望经由历程互联网平安发送敏感信息的人运用一个着名而且卓有成效的协议来运用非对称加密手艺(比方SSL),也不要试图克己加密协议。SSL是经得起磨练的协议,处理了许多非专业译电员以为不大概处理的平安问题。
第一部份:个人信息的不平安传送
安卓版本
我们剖析了6.2.18.0版本的阅读器,这是从 http://mb.baidu.com/ 下载的。关于不平安的个人信息传送,我们照样发明了一些隐私平安问题。表1总结了经由历程该运用网络加密或易加密传送的个人数据。
关于安卓版本的网络传输个人数据功用,我们发明了以下几个平安瑕玷:
A.启动时泄漏敏感数据
在运用程序启动时,我们视察到百度阅读器向https://hmma.baidu.com/app.gif 发送的HTTP POST 请求。这个HTTP请求的正文是一个紧缩的JSON文件。该文件包括了电话和用户的多种细节,有的是纯文本,有的是加密的。
JSON文件中未加密的字段有:
o:用户操纵系统(比方,安卓)
n:百度阅读器版本
w, h:屏幕像素
Gl:GPS位置和近来更新时候
有的字段是用硬编码ASCII编码键的AES+ECB举行加密的
h9YLQoINGWyOBYYk
然后再用Base64编码。这些字段有:
Dd:IMEI编号
Ii:包括手机IMEI编号倒序的字串符和安卓软件版本信息的MD5哈希值
Wl2:范围内一切无线网络列表以及它们的MAC地点和信号强度。
依据硬编码键学问,这些字段很轻易被破解。用于解密这些字段的python剧本源代码在这。
B.键入地点栏时泄漏敏感数据和地点栏内容
和其他阅读器一样,用户能够在百度阅读器地点栏中输入文原本接见一个给定的URL或是实行搜刮。以这类要领在地点栏中输入文本时,该文本是不举行加密的,只是作为一个有多个GET参数的HTTP请求接见下面的URL:http://uil.cbs.baidu.com/sug/rich
比方说,在地点栏中键入如许的文本“some address bar contents”:http://uil.cbs.baidu.com/sug/rich?wd=some+address+bar+contents&ua=I4Ly8_OLL8_lPvC0tpwbqkrywN0sCFzKkhF6q9pvANIr5wj0_hHQNgCcvCgnhvId_OXNiyJuvNvrCUdsB&cuid=ga2Pfgal2u0ca28Yg8vkugu0-uYBiSiAlP2Nf_8ZS88Pa28g_a2q8_aq28_qa28qA&cfrom=1200a&from=1200a&crp=0&it=0&ctv=2&st=00000000&nw=3g&cen=ua_cuid
这些GET参数包括:
Wd:地点栏内容
Ua:屏幕分辨率、手机型号、安卓版本和百度版本
Cuid:安卓版本信息的md5哈希值和手机IMEI号倒序的字符串
Wd参数值的发送没有加密;ua和cuid参数值的加密很不范例,运用的是很轻易被破解的算法,以下所述。UTF8编码的每一个32字节都被诠释为一个小端字节序列整数,然后轮回移位字节到右三位,以及运用硬编码0x2D382324的XOR。末了,生成的32位字段会和下面的自定义64个字符字母举行base64编码:
qogjOuCRNkfil5p4SQ3LAmxGKZTdesvB6z_YPahMI9t80rJyHW1DEwFbc7nUVX2-
典范的base64字母表是如许的:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
运用这些算法和自定义字母表,就可以够很轻易地破解这些字段,解密这些字段的python剧本的源代码在这里。这类算法由百度阅读器的本机代码在libchiperencoder_v1_3_1_browser中实行(chiper多是拼写毛病,实为cipher)。
C.手机包括了每一个页面视图中的敏感数据
在阅读器阅读了某个页面后,会有一个GET请求被发送到这个URL:http://t5.baidu.com/kw
这个 HTTP Referer 标题包括了接见过网页的完全URL,而且没有加密。即便是经由历程HTTPS举行了通例加密,报告发明实在并没有加密。其 etag GET 参数值是运用有ASCII编码的五位字节密钥的RC4举行加密的:HR2ER
举行加密时,标签包括了许多其他的参数,比方说cuid(含有手机IMEI的倒序值)和许多时候信息(加载网页所需时候和步骤,包括DNS查找、建立链接和加载DOM)。
D.软件更新的不平安搜检
当运用想要搜检更新时,就会发送一个HTTP请求给这个URL:
http://uil.cbs.baidu.com/update
这项请求含有多项GEL参数,包括上一节提到的被加密的ua和cuid参数。效劳器以一种未加密,然则被zlib紧缩的自定义二进制花样举行相应。假如有可用的更新,效劳器会在相应中包括对更新的形貌以及一个APK的URL。百度阅读器会显现这个形貌,并讯问用户是不是须要举行升级。假如用户确认升级,APK文件会举行下载并自动翻开,经由历程典范的安卓用户装置或升级运用的界面举行提醒。(如图三)
百度没有用任何的数字署名考证APK文件,所以中心进击者就可以够经由历程发送迥殊编写的相应来实行有用进击。中心进击者能够发送恣意URL给恣意的APK文件,然后这个文件和相干形貌照样会被显现给用户。假如APK文件具有的数字署名和当前装置的运用不符,那末安卓系统不会许可这类文件来升级运用。所以不能用这类手艺来用恣意的APK文件替代百度阅读器。然则依旧能够用一个差别的歹意APK文件(运用百度阅读器的称号和标识)诳骗用户装置一个新的运用程序(如图三所示)。
七款ASO优化工具分享 ASO114可检测关键词
请再记住一个核心——关键词。有了这两个大前提,我们再来谈谈如何快点到第一页。我们都知道SEO的基础,但要想做得更好,就要知道一些技巧。要想知道如何优化关键词排名,必须掌握关键词优化技术,才能进一步提高网站排名。
微软版本
我们剖析了 7.6.100.2089 版本的微软版百度阅读器,这是从 http://liulanqi.baidu.com/ 下载的。这类版本也照样有一些隐私平安破绽。表2 总结了经由历程该运用网络加密或易加密传送的个人数据。
关于微软版本的网络传输个人数据功用,我们发明了以下几个平安瑕玷:
A.输入地点栏时泄漏地点栏内容
和安卓版本类似,当用户在地点栏输入文原本搜刮时,该文本会以HTTP GET请求的情势不加密地发送给这个URL:http://uil.cbs.baidu.com/sug/rich ,地点栏内容会存储在wd参数值中。
B.以一种易破解的协议和百度效劳器通讯
我们还视察到,在运用程序启动和阅读时,百度阅读器会向 *.br.baidu.comdomain的各子域发送多个HTTP POST请求。这些POST请求的主体一直坚持以这类特定的情势:标题加上加密的有用负载。标题是没加密的两个字符串。第一个是阅读器的GUID,这是这些参数的哈希值:
1、硬盘序列号
2、硬盘型号
3、硬盘掌握器版本
4、网络MAC地点
5、BDM字符串
再加上#字符,比方md5(“VBf952409b-973833b1#VBOXHARDDISK#1.0#080027f2c8cf#BDM”).
第二个字符串是阅读器的SupplyID,是HKEY_LOCAL_MACHINE\SOFTWARE\Baidu\BaiduBrowser\SupplyID的检索值。这多是与阅读器版本相干的注册表。
加密的有用负载,在解密时包括运用谷歌协议缓冲区(也称为protobuf)的序列化数据。这类数据是用一种改编的TEA暗码举行加密的,我们称为MTEA。百度用MTEA运用的暗码形式块是CBC的一种非规范修正,叫做MCBC。(见图四)
为了加密解密一切的protobuf信息,百度阅读器运用含有以下硬编码ASCII密钥的MTEA+MCBC:vb%,J^d@2B1l’Abn。运用的都是零字节初始化向量。用于解密这些请求的python剧本源代码在这里。
C.手机里含有每一个阅读界面信息,包括硬件序列号
我们解密了阅读器发出的protobuf请求,发明如许的请求(我们称作Page Report请求)会发送用户阅读的每一个界面,包括HTTP和HTTPS界面,另有界面和用户的以下信息:
1、界面的完全URL
2、界面的HTTP状况代码
3、界面的HTML标题
4、阅读器存储网络跟踪器的域名(名叫BAIDUID)以及跟踪器的内容(百度运用这个称号的网络跟踪器)
5、机械的CPU型号
6、机械的硬盘序列号
7、文件系统序列号
8、机械的网络MAC地点
9、阅读器的GUID
D.对软件更新的不平安检察
当阅读器要查找更新时,会发出一个protobuf请求,我们称之为 Update Info 请求,这是为了取得百度阅读器的最新版本。加密的相应会包括最新宣布的版本号、升级的形貌、升级到最新版本的URL和文件的md5哈希值。这个可实行文件没有遭到任何数字署名的庇护,只在加密的请求中有md5哈希值。经由历程加密并发送protobuf相应,任何的中心进击者都能够向任何的可实行文件和其md5哈希值中发送URL,如许会致使阅读器下载实行恣意代码。
E.更新域列表中的网站会触发代办
阅读器启动时,它会发送一个我们称之为代办信息请求的protobuf请求。在解密该请求时,包括了差别资本的版本号码,这些资本和百度自动代办的境外网站有关,这在本文的第二部份有详细的诠释。假如效劳器肯定这些资本中有须要更新的部份,protobuf相应中会包括资本的最新版本或是最新版本的链接,一同的另有新版本的MD5哈希值和用于解密的密钥。
第二部份:外洋网站代办
中国的网络用户面临的是世界上最严厉的互联网检察轨制之一。在中国最著名的检察轨制多是”长城防火墙“,这是一种网页过滤的综合系统,阻挠中国境内对制止接见内容的接见。因为这类系统限定中国网络用户对境外网页内容的接见,许多用户都在追求要领来躲避这类检察。个中一种要领就是运用国际代办,它会掩饰和重定位网络流一直回避搜检。
除了中国检察轨制划定关于信息的接见限定,长城防火墙还会在跨境传输时表现出显著的低效和慢速。代办效劳器能够绕开这些网络瓶颈来进步机能。
我们关于百度阅读器Windows版的剖析表明,该软件有一个功用,能够自动将请求代办到境外某些网站。百度在其网站中宣扬了这类效劳,并形貌了潜伏的机能革新。(见下图)
除了能够进步机能,我们还发明这类代办能够许可接见一些被制止的网站,比方www.wordpress.com。
kv_auth 资本
该资本包括了差别代办效劳器的信息。假如阅读器版本没有更新,那末在代办请求的相应中会包括新版本。资本中含有代办域的md5哈希值,每一个哈希值含有用户名和暗码salt,这会用于盘算取得代办的用户名和暗码,这会在以后举行诠释。
现在的列表含有13个条目;然则,因为只要哈希值,所以我们还不能用这个列表请求代办的完全目次。
fg_pac 资本
该资本包括了测试代办网站的规范。一样的,假如阅读器不是最新版本,在代办信息请求的相应中也会包括新版本的下载文件,以及该文件的md5哈希值和加密密钥。现在供应的URL是http://dlsw.br.baidu.com/odin/201509/808996d05fb8fbb43ab4db44a5429058.e。
我们有上述文件的解密版本,以及用来解密的剧本源代码。值得注意的是,因为在URL的文件名是文件内容的md5哈希值,对该文件的任何更新版本都不会是同一个URL,所以不能用上面的URL来跟踪更新。
解密时,此文件是一个代办效劳器自动设置或是PAC文件,内里是JAVA代码,用来肯定哪些是代办网站的,或是详细运用谁人代办,以及是不是用HTTP或是HTTPS与该代办效劳器举行通讯。
kv_report 资本
该资本用于肯定是不是接见会向百度发送分外信息的代办网站。一样的,最新的版本会包括在相应中。此资本还包括域的列表,假如检察的网页和个中之一婚配,阅读器会别的发送一个加密的protobuf请求。我们在前面形貌过网页的请求,这些请求包括:
1、网页的完全URL
2、网页的HTTP援用字段
3、网站的IP地点
4、用来指向网页的HTTP重定向列表
5、网页DNS查询时候、TCP连接时候、SSL连接时候以及完全的请求时候
6、是不是运用了代办网站
剖析
我们编写了一个python剧本,该剧本会举行有身份考证的代办并下载恣意URL请求。起首,我们用它来测试百度是不是会接见 fg_pac文件以外的网站。我们发明两个代办效劳器都显现出页面毛病,表明接见受掌握。我们用一个中国VPS对Alexa前100万排行榜举行了测试,发明了46个没有出现在fg_pac文件的分外域能够经由历程这两个代办效劳器接见。
第三部份:其他百度产物和第三方运用中的破绽
为了肯定百度阅读器中敏感信息的泄漏是不是会经由历程同享的代码机制等体式格局感染到其他的百度产物,我们举行了开端视察。百度为微软和安卓两种版本的阅读器都开发了环球版,关于该版本的详细剖析在下面。我们发明安卓版本阅读器中泄漏敏感信息的这个破绽作为剖析软件开发东西包(SDK)的一部份不仅存在于百度其他安卓产物中,还存在在大批的第三方运用中。
结论
许多情况下,挪动装备会在不向用户供应任何关照的情况下生成、网络和传输品种繁多的个人标示符和用户数据。关于这一主题,我们题为《The Many Identifiers in Our Pockets》的叙述重点引见了与网络传输标示符有关的风险。
本篇报告中提到的问题引起了人们关于百度阅读器用户个人隐私平安的普遍关注。大批的标示符和数据点都是运用易破解的加密术举行传输的。
假如个人数据不运用准确的加密手腕传输,很有大概致使用户数据遭到看管。个中大概包括用户的ISP、无线网络运转商等。更恐怖的是,中心进击者解密你举行加密的通讯,这类阻拦会暴露你的地舆位置等信息。假如用户运用这类运用程序举行含有敏感信息的通讯,那末如许的信息泄漏将会是致命的。
人们关于百度网络存储用户数据的体式格局也产生了肯定的质疑。向百度如许供应网络效劳的大公司,须要遵照中国执法来庇护数据的。网络公司通常是网络这些数据来举行更有用的一样平常效劳的,那为何百度阅读器会网络传输云云大批的敏感数据点?这还不得而知。
除了会泄漏用户敏感信息以外,两种版本的阅读器都没有运用代码署名,这许可进击者强迫运用程序下载实行恣意代码。
与百度的谈判
我们在2016年2月16日像百度发送了函件,示知百度我们肯定的分外平安破绽,而且申明我们会公然他们的复兴。
百度在2月22日做出了相干回应。
所有行业都侧重于优化SEO关键字排名,但不是网站关键字出现的位置非常重要,必须按从上到下、从左到右的顺序随机出现。新网站被定义为几乎没有权重的网站,因为它是一个全新的域名。面对这种情况,将关键词优化到主页时需要注意的事项如下:(威廉莎士比亚,《Northern Exposure》(美国电视剧),《Northern Exposure》(北方电视剧))。
5个神奇转折点 改变我的创业生涯
本网站部分素材来源网络,如有侵犯,请联系删除!作者:wesipy,如若转载,请注明出处:http://www.kpxlt.com/archives/26669