阅读:6385回复:27
请教一个问题:Firefox中可以访问到Windows的注册表信息吗?
以前从没想过这个问题。前几天,同事的 Skype 账号,在网上让别人充值。结果别人让他提供 Skype 账号和密码,他就给了,冲完值后,他立刻改了Skype密码,还用新密码登录打了电话,以为这样就安全了。结果过了2天,他再次用Skype打电话时,发现不能登录了,就用Skype的忘记密码方法,让Skype发送一个链接到他的E-Mail中,然后通过这个链接重设密码。结果这2天他试了6次都不成功(24小时内只能用3次)。后来我在帮他处理的过程中发现,可以通过Skype的消费记录找回密码,于是我马上怀疑帮他充值的人黑了他的Skype了。然后我在我的电脑Firefox浏览器中,用英文帮他给Skype的客服写了一个反馈,后来Skype给他回复了一个E-Mail,里面包含了我写反馈时的一些电脑信息,包含浏览器的UserAgent,IP地址,以及我电脑上的Skype版本号。问题来了,Skype的网页,是怎么抓取到我电脑上的Skype版本号的?我的Skype是便携版,直接到磁盘的%ProgramFiles%\Skype下是找不到Skype的,我能想到的,只可能是读取注册表,从注册表中保存的Skype程序位置,再读取Skype程序的版本号。所以,我就想问一下,在Firefox浏览器中,真的可以访问Windows的注册表吗?
另外,提醒一下大家,不要到淘宝网上买Skype的充值!否则,别人可以用他手上的消费记录取得你的Skype账号和密码。刚才同事从TOM-Skype的网上看到,Skype的充值,是可以转移到其他人账号上的。所以,我同事Skype账号上的钱,我可以100%肯定,已经被帮他充值的人转走了。他的Skype账号目前被锁定了,Skype公司要求他提供证据(充值流水号或者用来充值的信用卡账号)才能解锁,但是他没有这些证据。虽然钱不多(不到2欧元,当初是花12元人民币买的2欧元充值),但是教训还是深刻的。另外,他很少用Skype,所以换一个Skype账号对他没有影响。 |
|
1楼#
发布于:2010-11-21 14:48
應該是不支持遠程訪問系統註冊表。
|
|
|
2楼#
发布于:2010-11-21 14:48
|
|
3楼#
发布于:2010-11-21 14:48
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0) Gecko/20101102 Firefox/4.0
这里不是也可以吗? |
|
4楼#
发布于:2010-11-21 14:48
UA, IP 这些能看到是正常的. 有了IP 通过 SKYPE 服务器上的通讯记录, 得到版本一点都不奇怪.
要从浏览器里获得版本信息, 本地的 chrome 脚本可以做到(本地 chrome 脚本持有 firefox主程序 的安全令牌, 可以访问这个令牌授予的任何资源, 借助 ctypes, chrome 脚本可以比 firefox 还要强大!), 网站上的脚本属于 content, 正常是不能的. context 脚本也不能直接和本地文件交互, 不可读写, 更不可能能运行程序. 唯一的方式是用INPUT来让用户授权它读取文件. 这里有个例外: skype 在本地给firefox 装了 插件(plugin), 然后 content 脚本用 plugin 提供的接口获取你机器上的信息.(plugin 的代码持有 plugin-container.exe 的令牌, 并且是二进制代码) |
|
5楼#
发布于:2010-11-21 14:48
可能不是通过浏览器,而是Skype程序本身。你登录Skype,就发送了你的IP地址和版本号,他们跟你浏览器发过来的IP地址进行一个匹配。看起来像是通过浏览器得到了版本号。
呃,楼上已经说过了。 |
|
|
6楼#
发布于:2010-11-21 14:48
同一个IP,还有另外一个同事在用Skype。我估计应该不是用IP来判断的,至少不是单纯用IP来判断。另一个同事用的是WinXP,同事用的是邀游,我用的是Win7 和 Firefox。如果 Skype 登录的时候,同时将 Windows 的版本号也传给 Skype 服务器,那么在浏览器中,根据 UserAgent 判断 Windows,再加上 IP,倒是可以区分我和同事来的。但是如果一个公司有很多人的话,IP 都相同,也有人用 Firefox 的话,那不就是识别不了了。
|
|
7楼#
发布于:2010-11-21 14:48
arch7819:UA, IP 这些能看到是正常的. 有了IP 通过 SKYPE 服务器上的通讯记录, 得到版本一点都不奇怪. 可以确定,Firefox没有Skype的插件,我用的Skype是便携版。 |
|
8楼#
发布于:2010-11-21 14:48
还有一种可能的情况就是你机器上 skype.exe 正在运行,
skype.exe 默认会在本地打开 web 服务端口(我运行tomcat抛异常, 查下去发现它好死不死还开在80上, 简直是找日.), content 脚本也可以用 xhr 向你本地的skype web服务请求数据, 于是就能抓到版本. |
|
9楼#
发布于:2010-11-21 14:48
我想说点别的。。
tom版的skype据传有监控程序,所以还是到墙外下载个原版的安装比较好。 |
|
10楼#
发布于:2010-11-21 14:48
forfirefox:我想说点别的。。 用的不是 TOM 版 Skype,其实我和另外2个同事,现在就在墙外。 |
|
11楼#
发布于:2010-11-21 14:48
|
|
12楼#
发布于:2010-11-21 14:48
客服发过来的版本是你的版本而不是你同事的版本?
我记得你会脚本的喵? 你写个页面丢gae上, 然后上firefox试验下. var wrk = Components.classes["@mozilla.org/windows-registry-key;1"] .createInstance(Components.interfaces.nsIWindowsRegKey); wrk.open(wrk.ROOT_KEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion", wrk.ACCESS_READ); var id = wrk.readStringValue("ProductId"); wrk.close(); alert(id) skype.exe 在运行, 它就会开一些本地端口. 也许 content 的 xhr 不发向 localhost:80, 而发向其他的特定端口. 除此外我想不出其他的方式了.... |
|
13楼#
发布于:2010-11-21 14:48
arch7819:客服发过来的版本是你的版本而不是你同事的版本? 我看了,另外2个同事的Skype版本号,和我的都不一样。那个e-mail里的Skype版本号,就是我电脑上的Skype版本号。上面的代码,我随便找了一个网页测试,第一行就出错了。 |
|
14楼#
发布于:2010-11-21 14:48
你填写反馈表单的时候,Skype程序是否正打开呢?可能是通过某种程序间通信得到的吧。你把那个反馈链接贴出来,也许大家就能看出什么了呢。
|
|
|
上一页
下一页