问题标签 [protected-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
744 浏览

x86 - x86 从实模式 CPL(当前权限级别)切换到保护模式

在 x86 中,在我们设置 PE 位 CR0 后,我们做一个 far JMP 以确保 CS/EIP 被改变。当我查看 x86 程序员手册中的逻辑流程时,对应于这条 far JMP 指令(保护模式),我看到如下内容:

我想确保特权级别为0。假设描述符中的DPL也为0,远JMP中的选择器中的RPL也为0。描述符中的C位为0,因此它是不合格代码段的情况。手册说 CPL 是 CS 中的最后两位。这意味着,在远 JMP 之前,CS 应该包含一个最后两位为 00 的值。所以,当我最初处于实模式时,我是否应该确保 CS 在我之前具有符合此条件的某个值执行远 JMP?如果我换个说法,当我们从实模式切换到保护模式时,CPL 是什么?

0 投票
1 回答
188 浏览

internet-explorer - 如何在IE浏览器插件中录制实时流

我正在为 Win7/Win10/Vista 编写一个 IE 插件(32 位 ActiveX dll)来记录来自一个或多个远程 IP 摄像机的数据。

录制到某些目标目录(主要在 NTFS 分区和/或 USB 设备上)不成功,因为

实际上目标目录下没有这样的文件。禁用IE(11)中的“保护模式”,就不会有这样的问题了。

我读过这篇文章

从 ActiveX 保存文件的技术(保护模式 IE)

和这篇文章

用户帐户控制兼容性的 Windows Vista 应用程序开发要求 https://msdn.microsoft.com/en-us/library/bb530410.aspx

但是我仍然有以下要求:

  1. 该插件保存实时流。首先保存到临时目录然后复制到目标目录不是用户友好的。
  2. 该插件通过按网页按钮来保存快照,并且不想每次都提示烦人的“另存为”对话框;
  3. 由于网络摄像机是 DHCP-ed,我不能简单地将其 IP 添加到“本地 Intranet 区域”以避免“保护模式”。

由于插件有一个安装程序,它被授予管理员权限。在安装过程中可以进行任何修改。

有什么方法可以解决这个问题吗?或者由于安全问题,要求无效?

0 投票
0 回答
140 浏览

assembly - 著名 CPU 上可能存在 CPU 后门

我并不是说这已经发生了。我的问题是,如何确保没有故意设计用作后门的未记录 CPU 指令?非法操作码或指令序列,在执行时会导致例如从用户模式跳转到实模式,这进一步可用于权限提升或从用户模式对物理内存的任意访问。

这可以在紧急情况下用作武器。

此外,为了防止其他人意外或在发现后使用它,他们可以定义一个公钥和一个私有密钥,当它附带存储在某些 CPU 寄存器中的密钥序列时,允许执行该行为和/或一系列堆栈内存值和/或一系列未来指令。我很清楚这听起来像是一个阴谋论!

0 投票
1 回答
51 浏览

x86 - 看不懂 x86 保护模式

为什么发明这种模式?
他们为什么不将总线从 20 位扩大到 32 位并坚持实模式?

0 投票
0 回答
642 浏览

internet-explorer - IE11 Server 2012r2:受信任的站点在增强保护模式上下文中被视为 Internet 站点?

我正在尝试使用 AutoIT 在 Internet Explorer 上自动执行一些任务。我正在使用 AutoIT 的 IE.au3 库。

我为我的机器启用了增强保护模式。我想为特定站点禁用它(和保护模式),并且我使用的是 IE 11。根据 MS 文档 - 增强保护模式必须启用保护模式才能工作。我通过禁用所有区域的保护模式对此进行了测试,并且确实确认了它 - 未启动增强保护模式。所以我想 - 如果我将该站点添加到禁用保护模式的“受信任的站点”区域,则不应启动增强保护模式。

结果:

我得到以下行为: IE 仍然在“沙盒 IE”中打开(意思是,具有完整性级别“AppContainer”的进程 - 增强保护模式仍然启用!)。

然后,如果我关闭 Internet 区域的保护模式 - 那么该站点的增强保护模式确实被禁用,并且我得到一个未沙盒的 IE。

所以我的结论 - IE 将受信任的站点视为 Internet 站点(至少就增强保护模式而言)。我还在以下站点中找到了这方面的证据(可能是错误):http: //blogs.technet.com/b/fdcc/archive/2011/09/22/internet-explorer-s-explicit-security-zone-映射.aspx

关于如何解决这个问题的任何想法?

我还认为我对受信任站点区域的添加可能有问题 - 所以我检查了带点的 URL(例如http://10.10.3.255/mypage)和不带点的 URL(例如http://mysite/mypage) -根据一些 Microsoft 文档 ( https://technet.microsoft.com/en-us/library/dd361896.aspx ) - 前者转换为 Internet 区域,后者转换为 Intranet 区域。但是我发现这两种情况都与 Internet 区域有关。也许我的配置有问题?我尝试添加“10.10.3.255”、“ http://10.10.3.255 ”、“10.10.3.255/*”,但我看不出结果有什么不同

谢谢!

0 投票
0 回答
219 浏览

assembly - 链接描述文件中未提及的部分

如果我没有在我的 likener 脚本中为某些部分提供任何信息,会发生什么情况?它将位于何处?例如,如果我有以下链接器脚本

在我的.S文件中,我还有一些其他部分.section .mysectionmysection结果.o文件中的部分会发生什么?它甚至会被加载到内存中(保护模式)吗?

也很有趣会发生什么.data.bss部分。

UPD 考虑.mysection不包含任何信息。它看起来像这样。

但如果它包含一些东西,它仍然很有趣。

0 投票
1 回答
325 浏览

assembly - 进入 32 位保护模式

我正在开发一个操作系统。从参考资料来看,我必须从 16 位实模式进入 32 位保护模式。在该步骤中,其使用指令为:

但是我的汇编程序说这是非法的,它也使用如下指令:

一些教程使用[bits 32]. 但我两者都用,但没有运气。

我用谷歌搜索了这个,但这次它搞砸了

因此,任何指导都会有所帮助。

谢谢

0 投票
1 回答
227 浏览

assembly - 保护模式下的 64 位寄存器 x86

我想知道在 32 位保护模式下我是否能够在 64 位处理器上使用 64 位寄存器。我自己无法测试,因为我的虚拟机不支持 64 位长模式。我在互联网上的任何地方也找不到这个。我认为这可能是因为 32 位寄存器可以在 16 位实模式下使用。

0 投票
1 回答
1146 浏览

c# - C# - 以编程方式允许在保护模式下设置 Excel 单元格格式

默认情况下,我们从我的服务器生成的 .xlsx 文件将在用户计算机上以保护模式打开。在该模式下,我注意到许多带有公式的单元格不会被激活,因此这些单元格上不会显示任何内容。在编辑模式下一切正常。所以我想问一下是否有任何方法可以以编程方式允许单元格公式在保护模式下工作?我的开发环境是MVC4,使用ExcelCreator 8.0生成excel文件。

*编辑:我主要关心的是用公式显示单元格的值。它们只是一些简单的 SUM() 公式。我注意到第一次打开文件时,这些单元格是空白的。但是当我第一次切换到编辑模式并且没有编辑时,立即保存文件,然后下次我在保护模式下打开它时,这些单元格有一些值要显示。那么我们至少可以对其进行编程以保存这些值而无需先打开编辑模式吗?

0 投票
0 回答
565 浏览

assembly - 汇编比较寄存器的一位

我需要比较寄存器的一位,例如AH等于 0b010010>1<0,
我需要检查第二位(以确保我们谈论的是相同的位,我将这个位放在箭头之间)是 1 还是 0 .

如果这可能有助于我的代码假设在没有操作系统的 PMode 32 位上运行。

我在互联网上发现这可以通过test指令完成,但我没有找到方法。