写点什么

研究人员突破了 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:111071
用户头像

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

关注

评论

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

深入分析JUC之Lock接口

编程江湖

lock锁

几行代码,把zip文件直接破解

你?

复盘和反思一个被全公司邮件通报的漏测

LynnYang

测试 Postman Mock

Apache Kylin PMC 马洪宾:开源,就是一场“螺旋上升”的旅程

腾源会

深入解析Apache Pulsar系列: Broker消息确认的管理

博文视点Broadview

java开发之Redis数据结构

@零度

redis JAVA开发

Flink是如何支持批流一体的

编程江湖

flink

2021 年 6 个GitHub推荐前端项目

devpoint

vite nextjs tauri 1月月更 Tailwind

2022年,你还要做开源软件么?

亚马逊云科技 (Amazon Web Services)

计算

利用物联网技术加速数字化转型

龙智—DevSecOps解决方案

用户文章转载:Windows用户都来看看,这个锅P4不背

龙智—DevSecOps解决方案

perforce P4

vivo 推送平台架构演进

vivo互联网技术

分布式 架构设计 消息推送 平台搭建、

当类的泛型相关时,如何在两个泛型类之间创建类似子类型的关系

阿Q说代码

Java泛型 1月月更 子类型

云图说|图解DGC:基于华为智能数据湖解决方案的一体化数据治理平台

华为云开发者联盟

大数据 数据湖 数据治理 数据服务 数据湖治理中心

Bruce Eckel教你如何爬出 Gradle 的“坑”?

图灵社区

java 编程

全面提升体系化数据管理能力 | OceanBase 发布全新3.X工具家族

OceanBase 数据库

数据库 开源 开发者 OceanBase 社区版 产品发布

编程进阶之路,虽无捷径但有长短

程序人生

1月月更|推荐学java——Spring第一课

逆锋起笔

spring SSM框架 Spring MVC Spring Java Spring项目

netty系列之:不用怀疑,netty中的ByteBuf就是比JAVA中的好用

程序那些事

Netty nio 程序那些事 1月日更

hi 龙蜥小二来了 ,一键@为你答疑解惑

OpenAnolis小助手

Linux 服务

crontab介绍安装及每秒运行

Owen Zhang

Linux crontab

云效产品篇:开启敏捷需求管理 |云效快速入门

阿里云云效

阿里云 DevOps 云原生 需求管理 云效

打造智能全场景,《HarmonyOS Connect系列课》7大BUFF为您助力!

HarmonyOS开发者

AJAX工作原理及其优缺点

编程江湖

60岁代码匠的几篇小作文,解决了大多数程序的迷茫(上)

图灵社区

java 编程

都2022年了,你的前端工具集应该有vueuse

华为云开发者联盟

Vue 前端 API 工具集 vueuse

MySQL性能优化:SQL慢查询优化,索引优化,表优化

Ayue、

MySQL 1月月更

Flink,Spark,Storm,Hadoop框架比较

@零度

flink hadoop spark Storm 大数据开发

龙智搬迁公告

龙智—DevSecOps解决方案

搬迁

高效时代,是时候过渡到自动化测试了

飞算JavaAI开发助手

DevOps 软件开发 自动测试

热烈庆祝龙智高级咨询顾问叶燕秀获得“Atlassian认证专家”称号

龙智—DevSecOps解决方案

Atlassian认证专家 Atlassian认证

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