小心Windows Live Writer插件偷走你的博客密码

Windows Live Writer是颇受欢迎的博客客户端,除了支持多种博客服务之外,还具备良好的扩展性,允许第三方开发插件来扩展或补充功能,我也为它开发了两个插件:用来补充Slug的SlugHelper和补充图片Exif信息的ExifInfo

但你有没有想过,虽然这些第三方插件的确为我们提供了方便,但它们真的值得信赖吗?

 

最近搬家,没有网络,闲暇时便用“.NET Reflector”来查看Windows Live Writer的内部实现,期望能找到对我开发插件有帮助的API,没想到却发现了令人大吃一惊的东西,Windows Live Writer插件可以轻而易举地窃取你的博客账号和密码!

想知道是怎么做到的吗?只需要随便开发一个插件,添加对“WindowsLive.Writer.BlogClient.dll”的引用和以下的using:

using WindowsLive.Writer.BlogClient;

在适当的位置添加以下代码:

StringBuilder sb = new StringBuilder();
string[] blogIds = BlogSettings.GetBlogIds();
foreach (string blogId in blogIds)
{
BlogSettings blogSetting = BlogSettings.ForBlogId(blogId);
sb.AppendLine("blogname: " + blogSetting.BlogName);
sb.AppendLine("homepage: " + blogSetting.HomepageUrl);
sb.AppendLine("username: " + blogSetting.Credentials.Username);
sb.AppendLine("password: " + blogSetting.Credentials.Password);
sb.AppendLine("===============================================");
}

执行后查看sb.ToString(),你会看到你添加到Windows Live Writer里的所有博客信息,包括博客名称、主页地址、用户名和密码,可怕之处就在于密码是明文的。

如果插件的作者心怀不轨,他完全可以利用这些内容来控制你的博客。所以在使用第三方插件之前,最好能够确定该插件是值得信赖的。

另外,开源的插件也是个不错的选择,你可以检查插件的代码中是否包含泄露隐私的内容,并自行编译使用。

我开发的SlugHelperExifInfo两个插件都是开源项目,欢迎使用。

 

PS:以上代码在版本号为15.4.3001.809的Windows Live Writer中测试成功。

原文发布于coding.windstyle.cn,欢迎访问、订阅并和我交流。

posted on 2010-09-14 08:49 Windie Chai 阅读(1751) 评论(14) 编辑 收藏

评论

#1楼 2010-09-14 08:52 Artech      

这个漏洞很致命!  回复 引用 查看   

#2楼 2010-09-14 08:58 James Li      

在国外,写blog是作为share的目的,很难想像会去盗别人的blog id
然后改成自己的名字。

 回复 引用 查看   

#3楼 2010-09-14 09:03 真名士      

引用Artech:这个漏洞很致命!

刚才看了下,果真如此。。
我刚装上呢,插件要不得!  回复 引用 查看   

#4楼[楼主] 2010-09-14 09:05 Windie Chai      

引用James Li:
在国外,写blog是作为share的目的,很难想像会去盗别人的blog id
然后改成自己的名字。


嗯,虽说在我们看来,盗取博客的管理权没有多大价值,但就怕有些无聊的恶作剧者盗取了管理权,然后把你辛苦多年的文章全部删掉或者以你的名义去发表些什么言论……  回复 引用 查看   

#5楼 2010-09-14 09:37 Jeffrey Zhao      

其实密码用http明文传输就是个大问题,不是么,插件倒真是其次了,当然居然插件可以访问到密码也挺神奇了。
只可惜不知道有哪些网站的MetaWeblog是用https的,上次发现Windows Live Writer在注册表里保存Credentials时倒还是加密的。
 回复 引用 查看   

#6楼 2010-09-14 10:04 Tony Zhou      

爱盗盗吧,本来也没人访问,哈哈哈  回复 引用 查看   

#7楼[楼主] 2010-09-14 10:18 Windie Chai      

@Jeffrey Zhao
对,Windows Live Writer在持久化Credentials时确实加密了,我也“翻”到了加密解密的API,本文写的这部分应该是在此基础上解密出来供上层代码直接使用的,但它不仅是public的,而且没有对调用者做安全验证。
 回复 引用 查看   

#8楼 2010-09-14 12:12 Xproer-松鼠      

Live Write 简直就是个大便。连自家的Word文本的样式都不支持,居然还好意思发布出来,真不知道微软的那群家伙是怎么想的。  回复 引用 查看   

#9楼 2010-09-14 13:19 Leon Weng      

的确是个问题  回复 引用 查看   

#10楼 2010-09-20 19:00 wgxds      

我是hurryrun的用户,费劲力气才找到这里,请问这个软件还有后续版本吗?我看到你以前写的日志说要开发2.0版的  回复 引用 查看   

#11楼 2011-04-28 15:01 take it and go      

这个漏洞很怕啊  回复 引用 查看   

#12楼 2011-05-10 18:27 抽烟的家伙      

引用Windie Chai:
引用James Li:
在国外,写blog是作为share的目的,很难想像会去盗别人的blog id
然后改成自己的名字。


嗯,虽说在我们看来,盗取博客的管理权没有多大价值,但就怕有些无聊的恶作剧者盗取了管理权,然后把你辛苦多年的文章全部删掉或者以你的名义去发表些什么言论……


 回复 引用 查看   

#13楼 2011-05-10 18:28 抽烟的家伙      

· 微软开放WHS 2011免费在线体验
Web开发人员应当收藏的10个网站
 回复 引用 查看   

#14楼 2011-05-10 18:28 抽烟的家伙      

引用Artech:这个漏洞很致命!

 回复 引用 查看   

导航

公告


 

版权声明

本Blog言论均以“现状”提供,没有任何担保,也没有授予任何权利,如需转载,请注明出处。
昵称:Windie Chai
园龄:5年3个月
荣誉:推荐博客
粉丝:85
关注:17

统计

搜索

 

常用链接

我的标签

随笔分类

随笔档案

出版社

专家博客

积分与排名

最新评论

阅读排行榜

评论排行榜