2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

研究人员突破了 Windows RT 的安全系统

  • 2013-01-11
  • 本文字数:1306 字

    阅读完需:约 4 分钟

近日,一位独立开发者发现了一种在运行着 Windows RT 的微软 Surface 上运行未签名桌面应用的方式。该漏洞利用了 Windows 8 的一处内核 Bug,该 Bug 当然也被 WinRT 继承下来了。C.L. Rokr发现该处Bug 会导致“未签名的桌面应用能够运行在Windows RT 上”。InfoQ 采访了Rokr 以了解其研究发现。

InfoQ:你的计算机背景是什么?

Rokr:我是个专业的嵌入式应用开发者。我觉得逆向工程很有意思,但却从来没有找到过关于这方面的好工作。

InfoQ:研究并发现该漏洞花了多长时间?

Rokr:我知道该处 Bug 已经有段时间了,但其用处却很有限。在数据区的任何地址处都会将给定值减 1。没有办法修改代码,因为这些页是只读的。在内核中找到适合的点花了我大约 3 周时间,主要是因为我之前从未如此仔细研究过 Windows。

InfoQ:你这么做的动机是什么?为了解锁设备以运行你需要的应用还是仅仅是好奇?

Rokr:在我发现新的 Visual Studio 有个 ARM 目标时,我就编译了一个示例 Win32 应用。接下来,我就等待着我的 Surface 能够快些到来。在 Reddit 的一次 AMA 讲座时,Surface 团队清楚地表示遗留应用将无法运行在 Windows RT 上,但我相信他们仅仅表示 x86 代码是无法运行在 ARM 机器上,这一点我很清楚。后来,有人提到代码签名,我再一次相信这仅仅是本地安全策略的一部分,用户可以禁用掉它,因为这正是微软的做法。你能够想象得到我第一次在 Surface 上运行示例时的样子,它无法运行。

InfoQ:你说到“颇具讽刺意味的是,Windows 内核的一处漏洞存在了一段时间,并且还被移植到了 ARM 上,就像 Windows 的其他部分一样”。

Rokr:这很奇怪。微软确实希望 Windows 8 与 Windows RT 能有所不同,但最终他们之间的相似性使我能够做到这一点。当然了,静态分析很有帮助,但拥有一个可用的系统(启用内核调试)使得我可以在很短的时间内查明一切重要的东西,无需将我的 Surface 连接到逻辑分析器上(我不确定这是否可能,有些人说 Tegra3 是个堆叠包,上面运行着 RAM)。

InfoQ:在 Windows 8 上这么做有多难?

Rokr:如果 Windows 8 拥有同样的限制,那么过程也一样。我一开始是在 Windows 8 上这么做的,因为可以使用内核调试器限制它,就像微软对 RT 所做的那样,但后来发现不行。

InfoQ:其他人可能觉得这不是什么问题,但微软解决这个问题容易么?只需发布一个“必选”的系统更新就行么?

Rokr:微软会像其他 Bug 那样修复它的,这是一件好事。如果他们没有将 Code Integrity 作为可选,那么我还会发现其他的,如果我找不到,也会有人找到的。

有多家新闻网站报道了微软对于 Rokr 所做的这一切的回应:

微软:这个场景并不是个安全 Bug,并不会对 Windows RT 用户造成威胁。当需要访问本地系统、管理员权限或是调试器时,上面所描述的机制并不是每个用户都会的,也不是合理的行为。此外,Windows Store 是用户在 Windows RT 上安装应用的唯一一种受支持的方式。有一些机制可以扫描安全威胁,并确保来自 Store 的应用是合法的,可以正常获取并使用。 我们对人们的这种创造力以及付出的辛勤努力感到由衷的钦佩。在未来的发布中,我们不保证这些方式还可以使用。

查看英文原文: Researcher Breaches Windows RT’s Security System

2013-01-11 06:111079
用户头像

发布了 88 篇内容, 共 272.5 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

React源码分析3-render阶段(穿插scheduler和reconciler)

goClient1992

React

React Context源码是怎么实现的呢

flyzz177

React

用javascript分类刷leetcode3.动态规划(图文视频讲解)

js2030code

JavaScript LeetCode

前端刷完这12道滑动窗口,就可以出山面试了

js2030code

JavaScript LeetCode

2小时开发《点球射门游戏》,动画演示思路(上),代码已开源

非喵鱼

Java 开源 游戏 12 月 PK 榜 世界杯足球游戏

React源码分析2-深入理解fiber

goClient1992

React

React源码分析1-jsx转换及React.createElement

goClient1992

React

极客时间运维进阶训练营第七周作业

9527

掌握 CORS 跨域请求,读这一篇文章就够了

范家鹏

HTTP CORS 跨域 异步请求 跨域资源共享

做了一份前端面试复习计划,保熟~

loveX001

JavaScript

损失高达3亿美元|如何保护源代码安全?

SEAL安全

12 月 PK 榜 源代码安全 最小权限管理 零信任模型

区块链“入局”证券市场,未来前景有多大?

旺链科技

区块链 产业区块链 证券行业 12 月 PK 榜

React源码解读之React Fiber

flyzz177

React

潦草手写体也能轻松识别,快速提取文字不用愁

HarmonyOS SDK

HMS Core

Git实战(五)| 让工作更高效,搞定Git的分支管理

霍格沃兹测试开发学社

IoT高级设备检索——设备管理运维类

阿里云AIoT

数据库 监控 物联网 传感器 Cloud Native

百度 Android 直播秒开体验优化

百度Geek说

android 百度app 12 月 PK 榜 直播优化

群晖DS218+做maven私服(nexus3)

程序员欣宸

maven 12月月更 群晖

Git实战(四)| Git分支管理实操,搞定在线合并和本地合并

霍格沃兹测试开发学社

算法 KECP 被顶会 EMNLP 收录,极少训练数据就能实现机器阅读理解

阿里云大数据AI技术

自然语言处理 机器学习 12 月 PK 榜 机器阅读

前端面试指南之JS面试题总结

loveX001

JavaScript

KAFKA EAGLE 监控MRS kafka之操作实践

华为云开发者联盟

开发 华为云 12 月 PK 榜

ChatGPT中文版杀疯了,已登录AI模型市场

felix

ReactDOM.render在react源码中执行之后发生了什么?

flyzz177

React

前端面试题(附答案)

loveX001

JavaScript

基于阿里云IoT平台OTA进行APP确认升级的方案——业务架构类

阿里云AIoT

物联网 UED 数据格式

前端工程师leetcode算法面试必备-二分搜索算法(上)

js2030code

JavaScript LeetCode

手把手教你构建数据安全体系,守住安全合规红线

王巍

数据安全

深入理解JS作用域链与执行上下文

loveX001

JavaScript

跨机房ES同步实战

京东科技开发者

迁移 迁移数据 异步多活 Elastic Search 数据库·

研究人员突破了Windows RT的安全系统_语言 & 开发_Jeff Martin_InfoQ精选文章