【问题标题】:Where does RPL come from?RPL 是从哪里来的?
【发布时间】:2012-10-20 07:41:52
【问题描述】:

我从许多不同的网站上阅读过,但我有点困惑,但我不清楚:

每个段寄存器都有可见部分和不可见部分 部分。可见部分称为段选择器 并且有加载段选择器的直接指令。

Requester Privilege Level(RPL):此字段标识权限 级别以提供对数据的受保护访问。

好的,我知道我可以在汇编中使用指令,例如加载选择器,但我不能修改 RPL 对吗?它从何而来? CPU是怎么选的?谢谢

【问题讨论】:

  • 如果你想成为一名黑客,你需要了解在哪里可以找到这样的信息。

标签: assembly protection privilege x86


【解决方案1】:

RPL 实际上只是段选择器的最低 2 位,因此您可以将任何您想要的特权级别(0-3)加载到其中,但如果请求的级别高于(在数字上低于)相应的段,你会得到一个GP故障。这允许程序以低于操作系统授予它的权限轻松访问段,如果这与内存映射 I/O 或其他相关。

【讨论】:

  • 那为什么叫隐形部分呢?谁看不出来?谢谢
  • RPL 是可见部分的一部分。不可见部分保存来自段描述符的信息,并在修改段寄存器时自动从描述符表中加载。它包括 DPL 等等。
  • 嘿,克里斯,你倒过来了:如果段选择器的 RPL在数字上大于段的 DPL,你会得到一个访问段的#GP。 (较小的数字 == 较高的特权)
猜你喜欢
  • 1970-01-01
  • 2018-02-26
  • 2014-02-28
  • 2016-07-23
  • 2019-02-07
  • 1970-01-01
  • 2020-07-31
  • 2013-10-28
  • 2019-11-18
相关资源
最近更新 更多