当年的lnk漏洞并非溢出之类,而是lnk从控制面板文件中读取图标这个功能的设计导致,而控制面板文件实际上是DLL,要读取其资源就要先LoadLibrary,这样可以允许执行其DllMain。
微软的解决办法是设置白名单、并防止格式化字符串伪装,但仍然留下了一个字符串截断的问题,因此导致了这个漏洞5年后又被翻了出来。但是,这样的根源在设计而不在实现阶段的漏洞,确实是比较头疼。。。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.