当前位置: 首页 > 专利查询>微软公司专利>正文

低特权调试信道制造技术

技术编号:7284153 阅读:190 留言:0更新日期:2012-04-20 06:05
基于浏览器的调试器应用程序被配置成调试第二基于浏览器的应用程序。调用信道中继器模块以在调试器应用程序和第二应用程序之间建立双向通信信道。通过信道中继器模块从第二应用程序传输开始指示。第二应用程序进入被阻止等待状态。对第二应用程序执行调试操作。通过信道中继器模块,将调试请求消息传输到第二应用程序,以导致第二应用程序从被阻止等待状态转换到运行状态,并执行由调试请求消息指示的调试动作。通过信道中继器模块,从第二应用程序接收对调试请求消息的响应。第二应用程序从运行状态转换到被阻止等待状态。

【技术实现步骤摘要】
【国外来华专利技术】低特权调试信道背景调试器是允许程序员监视程序的执行的工具。调试器可以停止正被调试的程序的执行、重新启动程序的执行、在程序中设置断点,和/或访问或改变存储器中的值。调试器可以允许程序被一步一步地运行(叫做“步进”),当遇到断点时停止在代码的特定行(中断),并且可以在程序处于断点或当程序正在运行时允许检查变量的值(检查)。当程序正在运行时,除观察和报告程序状态之外,一些调试器也可以修改程序状态。因此,调试器会非常有用的。通常为调试器进程提供了相对高级别的特权,以使得它们被允许以此方式对程序进行调试。然而,使得调试器对于查找错误有用的此相同功能还能使调试器成为有用的软件破解工具,其可以被用来违反安全性,包括检索敏感信息、逃避拷贝保护、规避数字权限管理等等。由此,必须仔细地管理向调试器进程提供的特权级别。例如,在某些情况下,可能需要使用在客户机计算机上运行的基于浏览器应用程序来调试服务器上的应用程序。然而,在客户机计算机上运行的应用程序通常没有足够的特权来调试服务器上的应用程序。如果在客户机上运行的应用程序具有足够的特权来调试服务器上的应用程序,则将会出现很大的安全性问题。为将基于客户机的基于浏览器的应用程序的特权级别提高到调试基于服务器的应用程序的足够的级别,通常必须在客户机计算机处安装启用软件(enabling software)。例如,被配置成提高基于客户机计算机的应用程序的特权的调试DLL (动态链接库),或其他形式的调试API (应用程序编程接口),可能需要被安装在客户机计算机处。这样的API可能对于许多应用程序不可用。为获取对这样的API的访问,应用程序可能需要用户通过普通.MSI (Microsoft hstaller (安装器)) 或通过引用ActiveX控件来安装更具特权的调试堆栈(例如,Microsoft ICorDebug),或者可能需要执行其他复杂的进程。概述提供本
技术实现思路
以便以简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本
技术实现思路
并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。提供了用于使基于浏览器的调试器应用程序能调试基于浏览器的被调试应用程序而无需要求提升特权的方法、系统,以及计算机程序产品。在一种实现中,提供了基于浏览器的调试器应用程序调试第二基于浏览器的应用程序的方法。调用信道中继器模块以在第一基于浏览器的应用程序和第二基于浏览器的应用程序之间建立双向通信信道。通过信道中继器模块从第二基于浏览器的应用程序传输开始指示。第二基于浏览器的应用程序进入被阻止等待状态。可以对第二基于浏览器的应用程序执行一个或多个调试操作。例如,调试请求消息可以通过信道中继器模块传输到第二基于浏览器的应用程序以导致第二基于浏览器的应用程序从被阻止等待状态转换到运行状态,并执行由调试请求消息指示的调试动作。可以通过信道中继器模块,从第二基于浏览器的应用程序接收对调试请求消息的响应。第二基于浏览器的应用程序从运行状态转换到被阻止等待状态。在另一种实现中,提供了基于浏览器的调试器应用程序。基于浏览器的调试器应用程序包括信道建立器模块、调试启动模块,以及调试器模块。信道建立器模块被配置成调用信道中继器模块以在基于浏览器的应用程序和第二基于浏览器的应用程序之间建立双向通信信道。调试启动模块被配置成通过信道中继器模块从第二基于浏览器的应用程序接收开始指示。调试器模块被配置成对第二基于浏览器的应用程序执行一个或多个调试操作。调试器模块包括调试指令传输模块和调试响应接收器模块。调试指令传输模块被配置成通过信道中继器模块,向第二基于浏览器的应用程序传输调试请求消息。调试请求消息被配置成导致第二基于浏览器的应用程序从被阻止等待状态转换到运行状态。第二基于浏览器的应用程序执行由调试请求消息指示的调试动作。调试响应接收器模块被配置成通过信道中继器模块,从第二基于浏览器的应用程序接收对调试请求消息的响应。第二基于浏览器的应用程序从运行状态转换到被阻止等待状态。此处还描述了供调试器应用程序调试被调试应用程序的计算机程序产品。此外,此处还描述了用于被调试应用程序、信道中继器模块,并用于如此处所描述的更进一步的实施例的方法、系统,以及计算机程序产品。下面将参考各个附图,详细描述本专利技术的进一步特点和优点,以及本专利技术的各实施例的结构和操作。值得注意的是,本专利技术不仅限于此处所描述的特定实施例。这样的实施例只是出于例示的目的。基于此处所包含的原理,另外的实施例对那些相关领域技术人员是显而易见的。附图简述结合到本说明书并构成本说明书的一部分的附图示出了本专利技术,且与描述一起, 进一步用于说明本专利技术的原理,并允许那些精通相关的技术人员实施和使用本专利技术。附图说明图1示出了其中可以实现本专利技术的实施例的示例客户机-服务器通信系统的框图。图2示出了根据本专利技术的示例实施例的调试系统的框图。图3示出了根据示例实施例的调试器应用程序的框图。图4示出了根据示例实施例的被调试应用程序的框图。图5示出了根据示例实施例的提供用于执行调试的调试器应用程序的过程的流程图。图6和7示出了根据示例实施例的调试系统的框图。图8示出了根据示例实施例的调试系统的框图。图9-12示出了根据示例实施例的提供用于启动对被调试应用程序的调试的过程的流程图。图13-16示出了根据示例实施例的提供用于由调试器应用程序执行对被调试应用程序的调试的过程的流程图。图17-19示出了根据示例实施例的提供用于终止调试的过程的流程图。图20示出了根据示例实施例的用于配置低特权调试流水线的流程图。图21A和21B示出了根据示例实施例的用于客户机-客户机低特权调试的示例系统的框图。图22示出了可以被用来实现本专利技术的各实施例的示例计算机的框图。通过下面的结合附图对本专利技术进行的详细说明,本专利技术的特点和优点将变得更加显而易见,在附图形中,类似的附图标记在整个说明书中标识对应的元素。在附图中,相同的附图标记一般指示相同的、功能上类似的和/或在结构上类似的元素。元素首先在其中出现的附图由对应的附图标记中最左边的数字来指示。详细描述I.引言本说明书公开了包括本专利技术的特征的一个或多个实施例。所公开的实施例只例示了本专利技术。本专利技术的范围不仅限于所公开的实施例。本专利技术由所附的权利要求进行定义。说明书中对“一个实施例”、“实施例”、“示例实施例”等等的引用表示所描述的实施例可包括特定特征、结构或特性,但是,每一个实施例可以不一定包括该特定特征、结构, 或特征。此外,这样的短语不一定是指同一实施例。此外,当结合实施例描述特定特征、结构或特性时,假定在本领域技术人员的知识范围内,可以与其他实施例一起实施这样的特征、 结构或特性,无论是否被显式地描述。II.调试器和特权许多现代处理器体系结构具有允许操作系统以不同的特权级别运行的CPU模式。 例如,访问资源的进程、资源和指令被用特权级别进行标记。当一个进程试图使用资源或试图执行有特权的指令时,处理器确定该进程是否具有执行此项操作的许可,并准许或者拒绝该操作。这可防止用户进程损坏操作系统或在机器上运行的其他进程。可能存在各种数目的特权级别。例如,某些处理器支持两个特权级别,如用户(低特权)和超级用户(高特权)。其他处本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:C·P·贾泽斯基
申请(专利权)人:微软公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术