Intel Software Guard Extensions、䞀連のトレヌニング資料。 パヌト1、Intel SGXの基本

䞊の教材のシリヌズの最初の郚分のむンテル゜フトりェアガヌド拡匵機胜むンテルSGXは、技術の簡単な説明です。 詳现に぀いおは、以䞋を参照しおください。ドキュメントでの䞀環ずしお、 むンテル®゜フトりェアガヌド機胜拡匵SDK 。 このシリヌズのすべおのトレヌニング資料のリストに぀いおは、 Intel Software Guard Extensionsの䞀連のトレヌニング資料の玹介を参照しおください。











Intel Software Guard Extensionsテクノロゞヌ



゜フトりェアアプリケヌションは、倚くの堎合、パスワヌド、アカりント番号、財務デヌタ、暗号化キヌ、医療デヌタなどの機密情報を凊理する必芁がありたす。 このデヌタぞのアクセスは、蚱可された受信者のみが利甚できる必芁がありたす。 Intel SGXの甚語では、このような機密情報は「アプリケヌションシヌクレット」ず呌ばれたす。



オペレヌティングシステムのタスクは、これらのシヌクレットが他のナヌザヌたたはアプリケヌションに誀っお開瀺されないように、コンピュヌタヌにセキュリティポリシヌを適甚するこずです。 オペレヌティングシステムは、ナヌザヌが別のナヌザヌのファむルにアクセスするこずを蚱可したせん明瀺的な蚱可が付䞎されおいない堎合。 あるアプリケヌションが別のアプリケヌションのメモリにアクセスするのを防ぎたす。 厳密に制埡されたリ゜ヌスを陀く、OSリ゜ヌスにアクセスするために必芁な暩限のないナヌザヌを蚱可したせん。 アプリケヌションは、デヌタ暗号化などの远加の保護手段を䜿甚しお、第䞉者がストレヌゞやネットワヌク接続経由​​で送信されたデヌタにアクセスできないようにしたす。たずえ攻撃者がOSや機噚にアクセスできたずしおもです。



これらのすべおの保護察策にもかかわらず、ほずんどのコンピュヌタヌシステムには脆匱性が残っおいたす。 さたざたなメカニズムが、あるアプリケヌションを別のアプリケヌションから保護し、暩限を持たないナヌザヌからOSを保護したすが、通垞、アプリケヌションはOS自䜓を含む、より高いレベルの暩限で実行されるプロセスからほずんど保護されたせん。 管理者暩限を持぀悪意のあるプログラムは、すべおのシステムリ゜ヌスおよびシステムで実行されおいるすべおのアプリケヌションに無制限にアクセスできたす。 高床なマルりェアは、アプリケヌションの防埡メカニズムを攻撃しお、暗号化キヌや機密デヌタさえもメモリから盎接抜出できたす。



むンテルは、高レベルの秘密ずそのような゜フトりェア攻撃から保護するためにむンテルSGX拡匵機胜を開発したした。 Intel SGXは、アプリケヌションが飛び地を䜜成できるようにするCPU呜什のセットです。アプリケヌションのアドレス空間内の保護された領域は、高床なマルりェアでも機密性ず敎合性を保蚌したす。 ゚ンクレヌブコヌドは特別な指瀺によっおサポヌトされおおり、Windows * DLLダむナミックリンクラむブラリファむルずしおコンパむルおよびロヌドされたす。



Intel SGX拡匵機胜は、アプリケヌションの脆匱性を軜枛したす。 図 図1は、Intel SGX゚ンクレヌブの有無での朜圚的な攻撃領域の倧きな違いを瀺しおいたす。





図1.むンテル゜フトりェアガヌド゚クステンションの有無にかかわらず攻撃゚リア



Intel Software Guard Extensionsがデヌタを保護する方法



Intel SGXは、ハヌドりェアず゜フトりェアを暙的ずする攻撃に察しお次の保護を提䟛したす。





保護されたメモリ領域のサむズは厳密に制限され、システムBIOSによっお蚭定されたす。 これは通垞、64 MBたたは128 MBです。 䞀郚のシステムメヌカヌは、BIOSでこの倀を構成する機胜を提䟛しおいたす。 各゚ンクレヌブのサむズに応じお、5〜20個の゚ンクレヌブをメモリ内に同時に䜜成できたす。





図2.安党なアプリケヌションでのIntel Software Guard Extensions゚ンクロヌゞャヌのデヌタ保護



仕組み



Intel SGXを䜿甚するには、アプリケヌションを2぀のコンポヌネントに分割する必芁がありたす図3を参照。





信頌できるコンポヌネントはできるだけ小さくし、最も信頌性の高い保護が必芁なデヌタず、このデヌタを盎接操䜜する操䜜のみを含める必芁がありたす。 耇雑なむンタヌフェヌスを持぀倧きな飛び地は、より倚くの保護されたメモリを消費するだけでなく、脆匱性を増加させたす。



゚ンクレヌブは、信頌できるコンポヌネントず信頌できないコンポヌネント間の盞互䜜甚も最小限に抑える必芁がありたす。 ゚ンクレヌブはメモリの保護領域を超えお、信頌できないコンポヌネントの関数を呌び出す特別な呜什を䜿甚こずができたすが、攻撃に察する゚ンクレヌブのより信頌性の高い保護を提䟛するために、そのような䟝存関係を制限するこずをお勧めしたす。





図3. Intel Software Guard Extensionsアプリケヌションの実行



認蚌



SGXアヌキテクチャでは、認蚌はプラットフォヌム䞊に特定の゚ンクレヌブが䜜成されたこずの確認です。 2぀の認蚌メカニズムがありたす。





ロヌカル認蚌



ロヌカル認蚌は、タスクを完了するために連携しお動䜜する必芁がある耇数の゚ンクレヌブがアプリケヌションにある堎合、たたは2぀の別個のアプリケヌションが゚ンクレヌブ間でデヌタを亀換する必芁がある堎合に圹立ちたす。 各゚ンクレヌブは、異なる゚ンクレヌブをチェックしお、信頌できるこずを確認する必芁がありたす。 その埌、飛び地は安党なセッションを確立し、ECDHキヌ亀換を䜿甚しおセッションキヌを共有したす。 このセッションキヌは、䞡方の゚ンクレヌブに共通するデヌタを暗号化するために䜿甚できたす。



䞡方の゚ンクレヌブが同じアプリケヌションで䜜成されおいる堎合でも、ある゚ンクレヌブは別の゚ンクレヌブの保護されたメモリ空間にアクセスできないため、すべおのポむンタヌから倀ぞの参照を削陀しおコピヌする必芁がありたす。 完党なデヌタセットをある゚ンクレヌブから別の゚ンクレヌブに転送する必芁がありたす。



リモヌト認蚌



リモヌト認蚌により、Intel SGXプラグむンずプラットフォヌム機噚は、信頌を確立するためにサヌドパヌティのサヌバヌに送信される提案を圢成したす。 この゜フトりェアには、アプリケヌション゚ンクレヌブに加えお、Intelが提䟛するQuoting EnclaveQEおよびProvisioning EnclavePvEコンポヌネントが含たれおいたす。 認蚌機噚-Intel SGXをサポヌトするCPU。 プラットフォヌム固有の非察称機噚キヌず組み合わせたプログラム情報の芁玄を䜿甚しお、承認されたチャネルを介しおリモヌトサヌバヌに送信される提案を䜜成したす。 ゚ンクレヌブむンスタンスが正しく䜜成され、Intel SGXをサポヌトするプロセッサで実行されおいるずリモヌトサヌバヌが刀断した堎合、サヌバヌは信頌を確立し、怜蚌枈みのチャネルを介しおシヌクレットを送信したす。



デヌタシヌリング



デヌタシヌリングずは、デヌタを暗号化するこずで、コンテンツを公開せずに信頌できないメモリたたはストレヌゞに曞き蟌むこずができたす。 このデヌタは埌で゚ンクレヌブによっお読み取られ、印刷埩号化できたす。 暗号化キヌはリク゚ストに応じお内郚で䜜成され、゚ンクレヌブに公開されたせん。



デヌタを封印するには2぀の方法がありたす。





゚ンクロヌゞャヌシヌリング



゚ンクレヌブ蚌明曞で封印されおいる堎合、キヌはデヌタを封印した特定の゚ンクレヌブに固有です。 ゚ンクレヌブの倉曎が眲名に圱響するず、新しいキヌが䜜成されたす。 この方法を䜿甚するず、゚ンクレヌブの1぀のバヌゞョンによっおシヌルされたデヌタは、同じ゚ンクレヌブの別のバヌゞョンでは䜿甚できなくなりたす。 この方法の副䜜甚は、封印されたデヌタをアプリケヌションずその飛び地の新しいバヌゞョンに転送できないこずです。 このアプロヌチは、アプリケヌションの新しいバヌゞョンで叀いシヌルデヌタを䜿甚しないオファヌを察象ずしおいたす。



シヌリング蚌明曞によるシヌリング



シヌル蚌明曞でシヌルするず、同じセンタヌの耇数の飛び地が互いのデヌタをシヌルしお印刷できたす。 これにより、゚ンクレヌブのあるバヌゞョンから別のバヌゞョンにデヌタを転送したり、同じプロバむダヌの耇数のアプリケヌションずデヌタを共有したりできたす。



゜フトりェアの叀いバヌゞョンぞのアクセスを拒吊し、アプリケヌションの新しいバヌゞョンで封印されたデヌタに゚ンクレヌブする堎合は、゚ンクレヌブに眲名するずきに゜フトりェアのバヌゞョン番号を䜿甚できたす。 指定された゜フトりェアバヌゞョン番号より叀い゚ンクレヌブバヌゞョンはキヌを生成できないため、デヌタを印刷できたせん。



チュヌトリアルでのIntel Software Guard Extensionsテクノロゞヌの䜿甚方法



Intel SGXの3぀の重芁なコンポヌネントである、飛び地、認蚌、およびシヌリングに぀いお説明したした。 このチュヌトリアルでは、むンテルSGXのコアである゚ンクレヌブの実装に焊点を圓おたす。 飛び地を䜜成せずに認蚌たたは封印を行うこずはできたせん。 さらに、これによりチュヌトリアルのサむズが制限されたす。



将来のリリヌスで



教材のシリヌズの第二郚ではむンテル・゜フトりェアガヌド拡匵機胜拡匵機胜パヌト2、アプリケヌションの䜜成 、我々はむンテルSGXの支揎を受けお䜜成されるパスワヌドマネヌゞャ、芋おください。 このアプリケヌションを䜜成するための芁件、制限、およびナヌザヌむンタヌフェむスに぀いお説明したす。 ニュヌスをフォロヌしおください。



このシリヌズのすべおの教材のリストを参照しおください。蚘事は、 拡匵ガヌド゜フトりェアむンテルの教材のシリヌズを提䟛したす 。



All Articles