Mobile and Desktop Processors
Intel® Core™ processors, Intel Atom® processors, tools, and utilities
공지
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
16841 토론

How SLAT distinguish user-mode or super-mode

Zhuzhuzaizai
초급자
3,681 조회수

Hi,

As far as I know, for the code execution, x86 EPT uses XU and X to mark
the execution permission for user- and supervisor-mode linear
addresses, respectively. However, the user- and supervisor-mode
linear addresses are marked by the U/S bit of KPGT(kernel-level page table).

From a security perspective, if an attacker is able to modify KPGT, the page walk in EPT should be able to guarantee permission checks. But the attacker could change the U/Sbit easily if there are some exploits in the kernel.

Is there any other mechanism that allows EPT to distinguish between user-mode and supervisor-mode instead of relying on the unreliable KPGT's U/S bit?

0 포인트
7 응답
David_G_Intel
중재자
3,659 조회수

Hello Zhuzhuzaizai

  

Thank you for posting on the Intel️® communities. To help with your request, we need more information from your system.

Please share with us the model of the Intel product used and the Intel® System Support Utility (Intel® SSU) results 

 

Regards, 

David G 

Intel Customer Support Technician


0 포인트
Zhuzhuzaizai
초급자
3,645 조회수

I think it's an architecture-related question, and all CPUs that support VT-d should face this problem.

As far as I think, permission checking for EPT depends on the kernel's page tables, would that causes some security problems? 

0 포인트
David_G_Intel
중재자
3,639 조회수

To answer your questions in the best possible way we need more information, please provide at least which operating system you are asking for.


Regards, 

David G 

Intel Customer Support Technician


0 포인트
Zhuzhuzaizai
초급자
3,631 조회수

We use Intel Xeon Silver 4210 with 10 cores, 40 threads, and 256GB RAM. The operating system on topis Ubuntu 20.04 with Linux kernel v5.4.61.

0 포인트
Zhuzhuzaizai
초급자
3,616 조회수

Hello? May I get another reply for details?

Thanks a lot.

0 포인트
David_G_Intel
중재자
3,575 조회수

@Zhuzhuzaizai we are still looking into this inquiry, we will provide an update by next Wed 10/6 end of day U.S. time.


Regards, 

David G 

Intel Customer Support Technician


0 포인트
David_G_Intel
중재자
3,548 조회수

Thank you for your patience. Upon further investigation you need to use your operating system's API where it can distinguish which operating system code is running. This is how you can distinguish user mode from super mode. For more details, you need to check with the operating system vendor/developer.

Please keep in mind that this thread will no longer be monitored by Intel. Thank you for your understanding.  


Best regards, 

David G 

Intel Customer Support Technician 


0 포인트
응답