<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic SGX cannot protect memory in Enclave from being accessed in Intel® Software Guard Extensions (Intel® SGX)</title>
    <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183045#M3612</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;As I know,the core technology of SGX is to protect a memory area from being accessed by external environment, but I test that when I apply for a memory in Enclave,whatever in&amp;nbsp;Real hardware mode or&amp;nbsp;simulator mode, I can still access the memory in Enclave by calling OCALL outgoing address and using memory&amp;nbsp;tools (such as Cheat Engine). And When I destroy the Encalve,the memory pointed&amp;nbsp;by the address is also free.&lt;/P&gt;&lt;P&gt;I used the code sample in this tutorial as a test program :&amp;nbsp;https://software.intel.com/en-us/node/701612&lt;/P&gt;&lt;P&gt;In this tutorial,He explained that the ECALL parameter passing without the user_check flag, the parameter address in non-secure area and the safe area will be different. But these two pointers can be accessed externally (For example, using Cheat Engine), then it's meaningless even if the two addresses are&amp;nbsp;different.&lt;/P&gt;&lt;P&gt;Are there any mistakes in my steps?&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;</description>
    <pubDate>Sun, 07 Apr 2019 06:15:38 GMT</pubDate>
    <dc:creator>Ray1</dc:creator>
    <dc:date>2019-04-07T06:15:38Z</dc:date>
    <item>
      <title>SGX cannot protect memory in Enclave from being accessed</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183045#M3612</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;As I know,the core technology of SGX is to protect a memory area from being accessed by external environment, but I test that when I apply for a memory in Enclave,whatever in&amp;nbsp;Real hardware mode or&amp;nbsp;simulator mode, I can still access the memory in Enclave by calling OCALL outgoing address and using memory&amp;nbsp;tools (such as Cheat Engine). And When I destroy the Encalve,the memory pointed&amp;nbsp;by the address is also free.&lt;/P&gt;&lt;P&gt;I used the code sample in this tutorial as a test program :&amp;nbsp;https://software.intel.com/en-us/node/701612&lt;/P&gt;&lt;P&gt;In this tutorial,He explained that the ECALL parameter passing without the user_check flag, the parameter address in non-secure area and the safe area will be different. But these two pointers can be accessed externally (For example, using Cheat Engine), then it's meaningless even if the two addresses are&amp;nbsp;different.&lt;/P&gt;&lt;P&gt;Are there any mistakes in my steps?&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;</description>
      <pubDate>Sun, 07 Apr 2019 06:15:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183045#M3612</guid>
      <dc:creator>Ray1</dc:creator>
      <dc:date>2019-04-07T06:15:38Z</dc:date>
    </item>
    <item>
      <title>I used the code sample in</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183046#M3613</link>
      <description>&lt;P&gt;.&lt;/P&gt;</description>
      <pubDate>Sun, 07 Apr 2019 06:19:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183046#M3613</guid>
      <dc:creator>Ray1</dc:creator>
      <dc:date>2019-04-07T06:19:00Z</dc:date>
    </item>
    <item>
      <title>In order to prevent an</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183047#M3614</link>
      <description>&lt;P&gt;In order to prevent an enclave from being debugged, in the application, the enclave must be loaded in the non-debug mode.&lt;/P&gt;&lt;P&gt;To load an enclave in debug mode, the debugger flag (the second parameter of sgx_create_enclave) must be TRUE.&lt;/P&gt;&lt;P&gt;To load it in non-debug mode, you need to pass in FALSE.&lt;/P&gt;&lt;P&gt;See &lt;A href="https://software.intel.com/en-us/blogs/2016/01/07/intel-sgx-debug-production-prelease-whats-the-difference"&gt;https://software.intel.com/en-us/blogs/2016/01/07/intel-sgx-debug-production-prelease-whats-the-difference&lt;/A&gt; , &lt;A href="https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/681473"&gt;https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/681473&lt;/A&gt; , &lt;A href="https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/737509"&gt;https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/737509&lt;/A&gt; for more information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Francisco&lt;/P&gt;</description>
      <pubDate>Tue, 09 Apr 2019 18:47:34 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183047#M3614</guid>
      <dc:creator>Francisco_C_Intel</dc:creator>
      <dc:date>2019-04-09T18:47:34Z</dc:date>
    </item>
    <item>
      <title>引文：Francisco C. (Intel) 写道：</title>
      <link>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183048#M3615</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;Francisco C. (Intel) wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In order to prevent an enclave from being debugged, in the application, the enclave must be loaded in the non-debug mode.&lt;/P&gt;&lt;P&gt;To load an enclave in debug mode, the debugger flag (the second parameter of sgx_create_enclave) must be TRUE.&lt;/P&gt;&lt;P&gt;To load it in non-debug mode, you need to pass in FALSE.&lt;/P&gt;&lt;P&gt;See &lt;A href="https://software.intel.com/en-us/blogs/2016/01/07/intel-sgx-debug-production-prelease-whats-the-difference"&gt;https://software.intel.com/en-us/blogs/2016/01/07/intel-sgx-debug-production-prelease-whats-the-difference&lt;/A&gt; , &lt;A href="https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/681473"&gt;https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/681473&lt;/A&gt; , &lt;A href="https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/737509"&gt;https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/737509&lt;/A&gt; for more information.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Francisco&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you so much！&lt;/P&gt;&lt;P&gt;Ray&lt;/P&gt;</description>
      <pubDate>Thu, 11 Apr 2019 00:48:42 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Software-Guard-Extensions/SGX-cannot-protect-memory-in-Enclave-from-being-accessed/m-p/1183048#M3615</guid>
      <dc:creator>Ray1</dc:creator>
      <dc:date>2019-04-11T00:48:42Z</dc:date>
    </item>
  </channel>
</rss>

