• Home
  • About
    • Seokmin.Lee photo

      Seokmin.Lee

      Hello, I am a master's student in the Department of Convergence Security (Samsung Advanced Security) at Korea University.After graduation, I am expected as a security developer or researcher member of Samsung SDS.

    • Learn More
    • LinkedIn
    • Github
  • Posts
    • All Tags

[paper]hardware Based solutions for trusted cloud computing

27 Dec 2021

Abstract

  • ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์„ ํ‘œ์ ์œผ๋กœ ํ•˜๋Š” ์œ„ํ˜‘์˜ ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•˜๊ณ  ํŠน๋ณ„ํžˆ ๊ถŒํ•œ์ด ๋ถ€์—ฌ๋œ ์†Œํ”„ํŠธ์›จ์–ด ์ทจ์•ฝ์ ์˜ ์•…์šฉ์œผ๋กœ ์ธํ•ด ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž์˜ ๋ณด์•ˆ ๊ด€๋ฆฌ์ž๋Š” ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์„ ๋ฐฐํฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์ด๋Ÿฌํ•œ ์†”๋ฃจ์…˜์€ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์˜ CISC ๋ฐ RISC ์•„ํ‚คํ…์ฒ˜ ์ œํ’ˆ๊ตฐ์„ ํฌํ•จํ•œ ๊ด‘๋ฒ”์œ„ํ•œ ์ปดํ“จํŒ… ํ”Œ๋žซํผ์— ๋Œ€ํ•ด ๋” ๋‚˜์€ ํ•˜๋“œ์›จ์–ด ์ง€์› ๋ณด์•ˆ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋“ค์˜ ๋ชฉํ‘œ๋Š” ์‹ฌ๊ฐํ•œ ๋ณด์•ˆ ์ทจ์•ฝ์„ฑ์„ ํฌํ•จํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ž…์ฆ๋œ ์šด์˜ ์ฒด์ œ ๋˜๋Š” ํ•˜์ดํผ๋ฐ”์ด์ €์™€ ๊ฐ™์€ ์ผ๋ถ€ ๋†’์€ ๊ถŒํ•œ์˜ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด ๋Œ€์‹  ํ•˜๋“œ์›จ์–ด์— ๋Œ€ํ•œ ์‹ ๋ขฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜์—ฌ ๊ณต๊ฒฉ ํ‘œ๋ฉด์„ ์ค„์ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • ๋”ฐ๋ผ์„œ ์ผ๋ถ€ ๋ณด์•ˆ์— ํšŒ์˜์ ์ธ ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ๋ชจ๋ธ์˜ ์ฑ„ํƒ์„ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค.
  • In this paper, we give cloud users and customers, application developers and security managers a comprehensive overview of four major industrial-scale commercial hardware-based solutions brought by major vendors in the cloud market.
  • ๋ณด์•ˆ, ๊ธฐ๋Šฅ ๋ฐ ๋ฐฐํฌ์˜ ์„ธ ๊ฐ€์ง€ ๋ฒ”์ฃผ์— ๋งž๋Š” 20๊ฐœ ์ด์ƒ์˜ ๊ธฐ์ค€๊ณผ ๊ด€๋ จํ•˜์—ฌ Intel TXT, ARM TrustZone, AMD SEV ๋ฐ Intel SGX ๊ธฐ์ˆ ์„ ์ œ์‹œ, ๋ถ„์„ ๋ฐ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค.
  • ์šฐ๋ฆฌ๋Š” ์ด๋Ÿฌํ•œ ๊ฐ ๊ธฐ์ˆ ์— ๋Œ€ํ•ด ๋…ผ์˜ํ•˜๊ณ  ํŠนํžˆ ๋›ฐ์–ด๋‚œ ์‚ฌ๋ก€๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๋น„๊ต๋Š” IT ๊ด€๋ฆฌ์ž๊ฐ€ ํŠน์ • ๋ณด์•ˆ ์š”๊ตฌ ์‚ฌํ•ญ๊ณผ ๋ฏธ๋ž˜์˜ ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์œ„ํ•ด ์ฑ„ํƒํ•  ๋” ๋‚˜์€ ์‚ฐ์—… ๊ธฐ์ˆ ์— ๋Œ€ํ•ด ์˜ฌ๋ฐ”๋ฅธ ๊ฒฐ์ •์„ ๋‚ด๋ฆฌ๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Introduction

  • ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ๋ฐฐํฌ ๋น„์šฉ ์ ˆ๊ฐ, ๊ฐ€์ƒํ™”๋ฅผ ํ†ตํ•œ VM(๊ฐ€์ƒ ๋จธ์‹ ) ๊ฐ„์˜ ๋ฌผ๋ฆฌ์  ๋ฆฌ์†Œ์Šค ๊ณต์œ , ์œ ์—ฐํ•˜๊ณ  ํƒ„๋ ฅ์ ์ธ ์ฃผ๋ฌธํ˜• ์„œ๋น„์Šค์™€ ๊ฐ™์€ ๋งŽ์€ ์ด์  ๋•๋ถ„์— ์ง€๋‚œ 10๋…„ ๋™์•ˆ ๋„๋ฆฌ ์ฑ„ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋Ÿฌ๋‚˜ ๋ชจ๋“  ์ปดํ“จํŒ… ํ™˜๊ฒฝ์— ์กด์žฌํ•˜๋Š” ๊ธฐ์กด ์œ„ํ˜‘ ์™ธ์—๋„ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ๋ฌผ๋ฆฌ์  ์ฝ”๋กœ์ผ€์ด์…˜ ํŒจ๋Ÿฌ๋‹ค์ž„์œผ๋กœ ์ธํ•ด ๊ณ ๊ฐ์ด ๋™์ผํ•œ ๋ฌผ๋ฆฌ์  ๋ฆฌ์†Œ์Šค๋ฅผ ๊ณต์œ  ์— ๋”ฐ๋ผ ๋งŽ์€ ์ถ”๊ฐ€ ์œ„ํ˜‘์˜ ๋ฌธ์„ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค(Singh, 2014; Zoltn dm Mann, 2017).
  • ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์„ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋Š” ๊ณต๊ฒฉ์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ(DDoS(Distributed Denial of Service) ๋˜๋Š” DoS ๊ณต๊ฒฉ, Man-in-the-Cloud ๊ณต๊ฒฉ(Jabir et al., 2016), ๋ฃจํŠธํ‚ท ๊ณต๊ฒฉ(Modi et al., 2012), ์žฌ์ƒ ์ฝ”๋“œ ๊ณต๊ฒฉ(Hetzelt and Buhren, 2017), ์ฝ”๋“œ ์ฃผ์ž… ๊ณต๊ฒฉ ๋“ฑ), ๊ณ ๊ฐ์€ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋ฅผ ์ฑ„ํƒํ•˜๊ธฐ ์œ„ํ•ด ๋” ๋งŽ์€ ๋ณด์žฅ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ๋”ฐ๋ผ์„œ ์†Œํ”„ํŠธ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜๊ณผ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์˜ ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ์ œํ’ˆ๊ตฐ์œผ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋Š” ์ด๋Ÿฌํ•œ ์œ„ํ˜‘์— ๋Œ€์ฒ˜ํ•˜๊ธฐ ์œ„ํ•ด ๋งŽ์€ ์†”๋ฃจ์…˜์ด ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    1. Software-based solution
      • ํ•œํŽธ์œผ๋กœ ์†Œํ”„ํŠธ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ์‹œ์žฅ์— ๋“ฑ์žฅํ•œ ์ตœ์ดˆ์˜ ๋ณด์•ˆ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค.
      • ๊ทธ๋“ค์€ ์ƒ๋Œ€์ ์œผ๋กœ ๊ตฌํ˜„ํ•˜๊ธฐ ์‰ฝ๊ณ  ์ €๋ ดํ•˜๋ฉฐ ๊ตฌํ˜„์„ ๊ฒ€ํ† ํ•˜๊ณ  ์—…๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
      • ์‹ค์ œ๋กœ, ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ ๋ณด์•ˆ์„ ํ–ฅ์ƒ์‹œํ‚ค์ง€๋งŒ VM์„ ๋ณดํ˜ธํ•˜๊ธฐ์—๋Š” ๋ถˆ์ถฉ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(Szefer and Lee, 2012).
      • TCB(Trust Computing Base)์— ์ˆ˜๋ฐฑ๋งŒ ์ค„์˜ ์ฝ”๋“œ(LOC)๊ฐ€ ์žˆ๋Š” ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ•˜์ดํผ๋ฐ”์ด์ €๊ฐ€ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
      • ์ด๋Š” LOC์˜ ์ˆ˜๊ฐ€ ๋งŽ์„์ˆ˜๋ก ๊ฑฐ๋Œ€ํ•œ ์ฝ”๋“œ์— ์ทจ์•ฝ์ ์ด ์กด์žฌํ•  ํ™•๋ฅ ์ด ์ฆ๊ฐ€ํ•˜๊ณ  ๋ณต์žกํ•œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฒ€์ฆํ•˜๋Š” ์ž‘์—…์ด ์—ฌ์ „ํžˆ ๋งค์šฐ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์— ํฐ ๊ณต๊ฒฉ ํ‘œ๋ฉด์„ ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค(Kaplan et al., 2016).
      • ์ด๋Ÿฌํ•œ ์ทจ์•ฝ์ ์€ ํ•ด์ปค๊ฐ€ ์ฝ”๋“œ ์‚ฝ์ž…, ์ฝ”๋“œ ์žฌ์‚ฌ์šฉ, ํฌํฌ ๋ฐ ๋กค๋ฐฑ, ๊ณต๋ชจ ๋ฐ ๋ฃจํŠธํ‚ท๊ณผ ๊ฐ™์€ ๊ณต๊ฒฉ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ์•…์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
      • ๋˜ํ•œ, ์ตœ๊ทผ ์—ฐ๊ตฌ ๋ณด๊ณ ์„œ์— ๋”ฐ๋ฅด๋ฉด OS(์šด์˜ ์ฒด์ œ), ํ•˜์ดํผ๋ฐ”์ด์ €( Asvija et al., 2019), BIOS ๋ฐ SMM(์‹œ์Šคํ…œ ๊ด€๋ฆฌ ๋ชจ๋“œ) ๊ณ„์ธต์€ ์•Œ๋ ค์ง„ ์ทจ์•ฝ์ ์„ ์•…์šฉํ•˜๊ณ  ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์ธํ”„๋ผ๋ฅผ ์†์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์‰ฝ๊ฒŒ ํ‘œ์ ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    2. Hardware-based solution
      • ๋ฐ˜๋ฉด์— ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ์ „์šฉ IC(์ง‘์  ํšŒ๋กœ) ๋˜๋Š” ํŠน์ˆ˜ ํ•˜๋“œ์›จ์–ด ์•„ํ‚คํ…์ฒ˜๋กœ ๋ณด์•ˆ ์ž‘์—…์„ ์ œ๊ณตํ•˜๋„๋ก ํŠน๋ณ„ํžˆ ์„ค๊ณ„๋œ ์™„์ „ํžˆ ๋ณ„๋„์˜ ํ”„๋กœ์„ธ์„œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
      • ์•”ํ˜ธํ™” ํ‚ค, ์ƒ์ฒด ์ •๋ณด, ์•”ํ˜ธ ๋ฐ ์‹œ์Šคํ…œ ๊ตฌ์„ฑ์˜ ์ค‘์š”ํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ๊ฐ™์€ ๋ฏผ๊ฐํ•œ ์ •๋ณด๋Š” ์— ๋น„ํ•ด ์ƒ๋Œ€์ ์œผ๋กœ ๋œ ๋ณต์žกํ•œ ์‹ค๋ฆฌ์ฝ˜ ๊ตฌํ˜„ ์•”ํ˜ธํ™” ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ, ๋‚œ์ˆ˜ ์ƒ์„ฑ๊ธฐ, ๋ณ€์กฐ ๊ฐ์ง€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋“ฑ ๋•๋ถ„์— ํ•˜๋“œ์›จ์–ด์— ์˜ํ•ด ๋ณดํ˜ธ๋ฉ๋‹ˆ๋‹ค. (๊ฒ€์ฆ ์ž‘์—…์„ ๋น„๊ต์  ์‰ฝ๊ฒŒ ๋งŒ๋“œ๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌํ˜„)
      • ๋”ฐ๋ผ์„œ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด๋Ÿฌํ•œ ๋ณด์•ˆ ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ๋” ์–ด๋ ต๊ณ  ๋น„์šฉ์ด ๋งŽ์ด ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
      • ๋†’์€ ๋น„์šฉ ์™ธ์—๋„, ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ์ตœ์ ํ™”๋œ ์‹œ์Šคํ…œ ์„ฑ๋Šฅ์œผ๋กœ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ, ์ž„๋ฒ ๋””๋“œ ์žฅ์น˜ ๋ฐ ์ฃผ๋ณ€ ์žฅ์น˜์— ๋Œ€ํ•œ ๋ฌด๋‹จ ์•ก์„ธ์Šค์— ๋Œ€ํ•œ ํฐ ๋ณด์•ˆ ์ฆ๊ฑฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
      • ์ตœ๊ทผ ๋ช‡ ๋…„ ๋™์•ˆ ํ•™๊ณ„์™€ ์‚ฐ์—…๊ณ„์—์„œ ์—ฌ๋Ÿฌ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์ด ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
      • ์‚ฐ์—… ๊ทœ๋ชจ์—์„œ TPM(Trust Processor Module), Intel TXT(Trust eXecution Technology), ARM TrustZone, AMD SEV(Secure Execution Virtualization) ๋ฐ Intel SGX(Software Guard eXtention)( Lie and Maniatis, 2017, Mofrad et al., 2018, Pinto ๋ฐ Santos, 2019, Zhang ๋ฐ Zhang, 2016).
      • ์ด๋Ÿฌํ•œ ๋ณด์•ˆ ์†”๋ฃจ์…˜์€ ์ตœ์ข… ์‚ฌ์šฉ์ž๊ฐ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” TEE(์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์‹คํ–‰ ํ™˜๊ฒฝ)๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด CSP(ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž)์—์„œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
      • ํด๋ผ์šฐ๋“œ ํ…Œ๋„ŒํŠธ๊ฐ€ ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธํ•˜๊ณ  VM์˜ ๋ณด์•ˆ์„ ๋ณด์žฅํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์šฐ๋ คํ•˜๊ณ  ์žˆ๊ณ , ์‹œ์žฅ์— ๊ณ ๊ฐ์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฐ์—… ๊ทœ๋ชจ์˜ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ๋ณด์•ˆ ์†”๋ฃจ์…˜์ด ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฐฑ์„œ์—์„œ ์‹ฌ์ธต ๋ถ„์„๊ณผ ํฌ๊ด„์ ์ธ ๋น„๊ต๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.
      • ํด๋ผ์ด์–ธํŠธ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋””์ž์ด๋„ˆ ๋ฐ ๋ณด์•ˆ ์ „๋ฌธ๊ฐ€๊ฐ€ ๋ฏธ๋ž˜์˜ ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์œ„ํ•ด ์ฑ„ํƒํ•  ๊ธฐ์ˆ ์„ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋„๋ก ๊ทธ๋“ค ์‚ฌ์ด์—์„œ ์—ฐ๊ตฌํ•˜์‹ญ์‹œ์˜ค.
      • Intel TXT, ARM TrustZone, AMD SEV ๋ฐ Intel SGX์˜ 4๊ฐ€์ง€ ์‚ฐ์—… ๊ทœ๋ชจ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ๋ณด์•ˆ ์†”๋ฃจ์…˜์„ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค.
      • TPM์€ ์˜ˆ๋ฅผ ๋“ค์–ด Intel TXT์™€ ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ๋Š” ์ „์šฉ ํŠน์ˆ˜ ๋ชฉ์  ์นฉ์œผ๋กœ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์œผ๋กœ ๊ตฌํ˜„๋˜๊ธฐ ๋•Œ๋ฌธ์— ํฌํ•จํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
      • ์šฐ๋ฆฌ๊ฐ€ ์•„๋Š” ํ•œ, ์ด ๋ฐฑ์„œ๋Š” ์ตœ์ข… ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ฃผ์š” ์‚ฐ์—…์šฉ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์‹ ๋ขฐ ์†”๋ฃจ์…˜์— ๋Œ€ํ•œ ํฌ๊ด„์ ์ธ ๊ฐœ์š”์™€ ์ตœ์‹ ์˜ ์ฒ ์ €ํ•œ ๋น„๊ต๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ตœ์ดˆ์˜ ๋ฌธ์„œ์ž…๋‹ˆ๋‹ค.
  • ๋ฐฑ์„œ์˜ ๋‚˜๋จธ์ง€ ๋ถ€๋ถ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
    • ์„น์…˜ 2์—์„œ๋Š” ์—ฐ๊ตฌ๋œ ์†”๋ฃจ์…˜์ด ๋ฐฐํฌ๋  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋˜๋Š” ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ ์„ค์ •๊ณผ ํ•ด๋‹น ์†”๋ฃจ์…˜์ด ๋‹ค๋ฃจ๋Š” ์ผ๋ฐ˜์ ์ธ ๊ณต๊ฒฉ์ž ๋ชจ๋ธ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.
    • ์„น์…˜ 3์—์„œ๋Š” ์œ„์—์„œ ์–ธ๊ธ‰ํ•œ ๊ฐ ์†”๋ฃจ์…˜์— ๋Œ€ํ•œ ๊ฐ„๋žตํ•œ ์„ค๋ช…์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
    • ์„น์…˜ 4์—์„œ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ •์˜ํ•œ ๊ธฐ์ค€์— ๋”ฐ๋ผ ๋น„๊ต์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.
    • ์„น์…˜ 5์—์„œ๋Š” ๊ฐ ์†”๋ฃจ์…˜์ด ํƒ์›”ํ•œ ํŠน์ • ๊ฒฝ์šฐ์— ํŠนํžˆ ์ค‘์ ์„ ๋‘๊ณ  ๋‹ค์–‘ํ•œ ์†”๋ฃจ์…˜์— ๋Œ€ํ•ด ๋…ผ์˜ํ•ฉ๋‹ˆ๋‹ค.
    • ์„น์…˜ 6์—์„œ๋Š” ์šฐ๋ฆฌ์™€ ์œ ์‚ฌํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์„ ๋”ฐ๋ฅด์ง€๋งŒ ๋งŽ์€ ๋‹ค๋ฅธ ์ธก๋ฉด์—์„œ ๋‹ค๋ฅธ ๊ด€๋ จ ์ž‘์—…์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.
    • ์„น์…˜ 7์žฅ์—์„œ๋Š” ๋…ผ๋ฌธ์„ ๋งˆ๋ฌด๋ฆฌ ์ง“๊ณ  ์•ž์œผ๋กœ์˜ ๊ณผ์ œ๋ฅผ ์ œ์‹œํ•œ๋‹ค.

Cloud setup and assumptions

  • ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ๋‹ค์ค‘ ํ…Œ๋„ŒํŠธ ํŠน์„ฑ์œผ๋กœ ์ธํ•ด, ์‚ฌ์šฉ์ž๊ฐ€ ์ž ์žฌ์ ์œผ๋กœ ์†์ƒ๋œ ํด๋ผ์šฐ๋“œ ์†Œํ”„ํŠธ์›จ์–ด ์Šคํƒ ๋ฐ ์•…์˜์ ์ธ ํด๋ผ์šฐ๋“œ ์šด์˜์ž๊ฐ€ ์žˆ๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋ฒ„์—์„œ ์›๊ฒฉ ๊ณ„์‚ฐ์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์•„์›ƒ์†Œ์‹ฑํ•  ๋•Œ ๋ฐ์ดํ„ฐ ๋ณด์•ˆ ๋ฐ ์•ก์„ธ์Šค ์ œ์–ด๋ฅผ ๋ณด์žฅํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต์Šต๋‹ˆ๋‹ค( Gu et al., 2020 ).
  • ๋‚ด๋ถ€ ํ”„๋ผ์ด๋น— ํด๋ผ์šฐ๋“œ์˜ ๊ตฌ์ถ•์€ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ, ํผ๋ธ”๋ฆญ ํด๋ผ์šฐ๋“œ์— ๋น„ํ•ด ์•ˆ์ „ํ•˜์ง€๋งŒ, ์„œ๋ฒ„ ํ•˜๋“œ์›จ์–ด์™€ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด์—์„œ ๋งค๋ฒˆ ์น˜๋ช…์ ์ธ ์ทจ์•ฝ์ ์ด ๋ฐœ๊ฒฌ๋˜์–ด ๋ณด์•ˆ ๋ฌธ์ œ๋Š” ์—ฌ์ „ํžˆ ์˜จ์ „ํ•œ ์ƒํƒœ๋กœ, Meltdown(Lipp et al., 2018), Spectre(Kocher et al., 2019) ๋ฐ RowHammer(Mutlu ๋ฐ Kim, 2019)๋“ฑ์˜ ๊ณต๊ฒฉ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • IaaS(Infrastructure-as-a-Service), PaaS(Platform as-a-Service) ๋˜๋Š” SaaS(Software-as-a-Service) ๋˜๋Š” ๊ธฐํƒ€ ๋ชจ๋“  ์ข…๋ฅ˜์˜ ์„œ๋น„์Šค์— ๋Œ€ํ•œ CSP๋Š” ํด๋ผ์šฐ๋“œ-tenant ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ์— ๋Œ€ํ•œ ๋ชจ๋“  ๊ณตํ†ต ๊ด€์‹ฌ์‚ฌ๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.
  • TCB๊ฐ€ ํฌ๊ณ  ๊ณต๊ฒฉ ํ‘œ๋ฉด์ด ํฐ ์†Œํ”„ํŠธ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ๋Œ€์‹ , ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ TEE๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜๋ณด๋‹ค ๋” ๋งŽ์€ ๋ณด์•ˆ ๋ณด์žฅ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ•˜๋“œ์›จ์–ด ์ง€์› TEE๋Š” ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์—์„œ ์ฒ˜๋ฆฌ๋˜๋„๋ก ๋Ÿฐํƒ€์ž„ ์‹œ ์†Œํ”„ํŠธ์›จ์–ด ์‹คํ–‰์„ ๊ฒฉ๋ฆฌํ•จ์œผ๋กœ์จ ์‹œ์Šคํ…œ ์ˆ˜์ค€์—์„œ ๋ณด์•ˆ ๊ฒฝ๊ณ„๋ฅผ ์ œ๊ณตํ•˜๋Š” ํšจ์œจ์ ์ธ ๋ฐฉ์–ด ๋ฉ”์ปค๋‹ˆ์ฆ˜ ์—ญํ• ์„ ํ•˜๋„๋ก ์„ค๊ณ„๋œ ๋ณด์•ˆ ๊ฒฉ๋ฆฌ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค(Gu et al., 2020 )
  • ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๊ฑฐ๋‚˜ ์ทจ์•ฝํ•œ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์žˆ๋Š” ๊ณต์šฉ ํด๋ผ์šฐ๋“œ ์ œ๊ณต์—…์ฒด์˜ ์ธํ”„๋ผ์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.
  • ์ด๋Ÿฌํ•œ ์†”๋ฃจ์…˜์˜ ํ•˜๋“œ์›จ์–ด์— ๋Œ€ํ•œ ์‹ ๋ขฐ๊ฐ€ ๋ฐ”ํƒ•์ด ๋˜๋ฏ€๋กœ ์ตœ์ข… ์‚ฌ์šฉ์ž์˜ ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ/์ฝ”๋“œ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๋ชจ๋“  ์„œ๋น„์Šค์™€ ํ•จ๊ป˜ ๊ฑฐ์˜ ๋ชจ๋“  ํด๋ผ์šฐ๋“œ ์œ ํ˜•์„ ํฌํ•จํ•˜๋Š” ๋Œ€๊ทœ๋ชจ ํด๋ผ์šฐ๋“œ ๋ชจ๋ธ์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค.
  • ํ›„์ž๋Š” ๊ณต๊ฒฉ์ž ๋ชจ๋ธ์—์„œ ๊ณง ์„ค๋ช…ํ•  ๊ฒƒ์ฒ˜๋Ÿผ ๊ทธ๋“ค์ด ์‚ฌ์šฉ/์กฐ์ž‘ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ œ์™ธํ•˜๊ณ  ์†Œํ”„ํŠธ์›จ์–ด ์Šคํƒ์˜ ๋ชจ๋“  ์ˆ˜์ค€์—์„œ CSP๋ฅผ ์‹ ๋ขฐํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Attacker model

์šฐ๋ฆฌ๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์™„์ „ํžˆ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์„ ๊ฐ€์ง„ ๊ณต๊ฒฉ์ž๋ฅผ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๊ถŒํ•œ ์žˆ๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์กฐ์ž‘ํ•˜๊ณ  ์กฐ์ž‘ํ•˜๊ณ  ์‹œ์Šคํ…œ์— ๋งฌ์›จ์–ด๋ฅผ ์‚ฝ์ž…ํ•˜๊ฑฐ๋‚˜ ์•…์„ฑ ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋ฐฐํฌํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜๋Š” OS, BIOS, SMM ๋ฐ VMM์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

๊ณต๊ฒฉ์ž๋Š” ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฝ์„ ์ˆ˜ ์žˆ๊ณ  ๋ฌผ๋ฆฌ์  ๊ณต๊ฒฉ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ CPU์—์„œ๋Š” ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, ์‹œ์Šคํ…œ์˜ CPU์— ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์ง€๋งŒ ๋ฉ”๋ชจ๋ฆฌ ์ปจํŠธ๋กค๋Ÿฌ ๋˜๋Š” ํ”Œ๋žซํผ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์ƒํ˜ธ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฒ„์Šค๋ฅผ ํฌํ•จํ•œ ํ”Œ๋žซํผ์˜ ๋‹ค๋ฅธ ํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ ์š”์†Œ์—๋Š” ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณต๊ฒฉ์ž๋Š” ๋‚ด๋ถ€์ž์ด๊ฑฐ๋‚˜ ์›๊ฒฉ ๊ณต๊ฒฉ์ž์ผ ์ˆ˜ ์žˆ์ง€๋งŒ ์•”ํ˜ธํ™” ๊ธฐ๋ณธ ์š”์†Œ๋ฅผ ๊นจ๋œจ๋ฆด ์ˆ˜ ์—†๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ชจ๋ธ์—์„œ๋Š” ์„œ๋น„์Šค ๊ฑฐ๋ถ€ ๊ณต๊ฒฉ, ๋ฌผ๋ฆฌ์  ๊ธฐ๋ฐ˜ ๊ณต๊ฒฉ, ๋ถ€์ฑ„๋„ ๋ฐ ํƒ€์ด๋ฐ ๊ณต๊ฒฉ, ๋„คํŠธ์›Œํฌ ๊ธฐ๋ฐ˜ ๊ณต๊ฒฉ์„ ๊ณ ๋ คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค(Atamli-Reineh and Martin, 2017; Kocher et al., 2019; Lipp et al. , 2018, Maene et al., 2018, Mutlu and Kim, 2019, Van Bulck et al., 2018).

Hardware-based solutions

  • ํ˜„์žฌ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ ์‹œ์žฅ์€ Intel๊ณผ AMD๊ฐ€ ๊ฐ๊ฐ ์ œ์กฐํ•œ Xeon ๋ฐ Opteron ๋งˆ์ดํฌ๋กœํ”„๋กœ์„ธ์„œ ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์ฃผ๋„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์ผ๋ถ€์—์„œ๋Š” ARM ํ”„๋กœ์„ธ์„œ์˜ ํฌ๊ธฐ, ์—๋„ˆ์ง€ ํšจ์œจ์„ฑ, ์œ ์—ฐ์„ฑ ๋ฐ ์ €๋ ดํ•œ ๋น„์šฉ์œผ๋กœ ์ธํ•ด ARM์ด ์„œ๋ฒ„์šฉ Intel ๋ฐ AMD ์•„ํ‚คํ…์ฒ˜์˜ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๋Œ€์•ˆ์ด ๋  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ฃผ์žฅํ–ˆ์Šต๋‹ˆ๋‹ค( Pinto and Santos, 2019 ).
  • ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ด ์„น์…˜์—์„œ๋Š” ๋‹ค์Œ ์„น์…˜์—์„œ ๋น„๊ตํ•  ์„ธ ๊ฐ€์ง€ ์ฃผ์š” ๊ณต๊ธ‰์—…์ฒด์˜ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜ ์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.

3.1 Intel TXT (difficult to understand)

image

  • Intel TXT๋Š” ์ด์ „์— LaGrande Technology๋กœ ์•Œ๋ ค์กŒ์Šต๋‹ˆ๋‹ค. 2005๋…„์— ๋ฐœํ‘œ๋˜์—ˆ์œผ๋ฉฐ ๋‚˜์ค‘์— Intel TXT๋กœ ์ด๋ฆ„์ด ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” TCG(Trusted Computing Group)์—์„œ ๊ณต์‹์ ์œผ๋กœ ์ง€์ •ํ•œ ์ „์šฉ ๋งˆ์ดํฌ๋กœ ํ”„๋กœ์„ธ์„œ์ธ TPM ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋žซํผ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค(Maene et al., 2018).
  • TPM์€ ํ•˜๋“œ์›จ์–ด ์žฅ์น˜ ๋‚ด์—์„œ ์•”ํ˜ธํ™” ๊ธฐ๋ณธ ์š”์†Œ์™€ ํ‚ค๋ฅผ ๋ณดํ˜ธํ•˜๊ณ  ํ†ตํ•ฉํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋ฆผ 1๊ณผ ๊ฐ™์ด TXT๋Š” TPM์˜ ๋Œ€์•ˆ์ด ์•„๋‹ˆ์ง€๋งŒ ๊ธฐ๋ณธ ๋ณด์•ˆ ์„œ๋น„์Šค ์ œ๊ณต์— ํฌ๊ฒŒ ์˜์กดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(Cotan et al., 2017; Wojtczuk and Rutkowska, 2009).
  • IOH/PCH(Intel VT-d ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•˜๋Š” I/O Hub for Input/Output ๋ฐ ํ”„๋กœ์„ธ์„œ์šฉ Platform Controller Hub)๋ฅผ ์ง€์›ํ•˜๋Š” ์นฉ์…‹์— ํ†ตํ•ฉ๋˜์–ด ์žˆ์œผ๋ฉฐ ์ž ์žฌ์ ์ธ ๊ฐ€์ƒํ™” ๊ธฐ๋Šฅ์ด ์žˆ๋Š” BIOS ๋ฐ ํ•˜๋‚˜ ์ด์ƒ์˜ Intel Xeon ํ”„๋กœ์„ธ์„œ์™€ ์ƒํ˜ธ ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค. (์ธก์ • ๋ฐ ์ฝ”๋“œ ์ธ์ฆ ๊ธฐ๋Šฅ ํŠน์ง•์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด์„œ)
  • ๊ทธ๋ฆผ 1์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด BIOS์—๋Š” ์‹œ์Šคํ…œ ์‹œ์ž‘(์ธ์ฆ ์ฝ”๋“œ ๋ชจ๋“œ)์„ ์œ„ํ•ด ํ”„๋กœ์„ธ์„œ ๋‚ด์—์„œ ๊ฒฉ๋ฆฌ๋œ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ํ™œ์„ฑํ™”ํ•˜๊ธฐ ์œ„ํ•ด Intel์—์„œ ์ƒ์„ฑํ•˜๊ณ  ์„œ๋ช…ํ•œ ACM(์ธ์ฆ ์ฝ”๋“œ ๋ชจ๋“ˆ)์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์œ„์˜ ํ•˜๋“œ์›จ์–ด ์„ค์ •์„ ๊ธฐ๋ฐ˜์œผ๋กœ MLE(Measured Launch Environment)๊ฐ€ ์ƒ์„ฑ๋˜์–ด ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ํ™•์ธํ•˜๊ณ  ์ฆ๋ช…ํ•ฉ๋‹ˆ๋‹ค.
  • Intel TXT๋Š” ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•˜๋„๋ก ์œ ๋„ํ•˜๋Š” ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด์˜ ์ธก์ • ๋ฐ ์ œ์–ด๋œ ๋ถ€ํŒ…์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค(Intel Corporation, 2017). ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ ์š”์†Œ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ์ฆ๋ช…ํ•˜๊ฑฐ๋‚˜ ๋ฐ˜์ฆํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ณ„ ๋ฌด๊ฒฐ์„ฑ ์ธก์ •์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๋ถ€ํŒ… ์ˆœ์„œ, BIOS, OS, ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์„ฑ ๋ฐ ์ •์ฑ…์˜ ๋ฌด๋‹จ ๋ณ€๊ฒฝ์„ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋˜ํ•œ Intel TXT๋Š” ์‹œ์Šคํ…œ์ด Intel TXT๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ํ˜ธ์ถœํ•˜๊ณ  ์ฝ”๋“œ๊ฐ€ ๋ณดํ˜ธ๋œ ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰๋˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์ฆ๋ช… ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์ด ๊ฐ€์žฅ ์ค‘์š”ํ•œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ๋ฐ ๊ธฐํƒ€ ์‚ฌ์šฉ ์‚ฌ๋ก€์— ํŠนํžˆ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค(Greene, 2013b).
  • Amazon AWS, VMWare vCloud ๋ฐ OpenStack๊ณผ ๊ฐ™์€ ์ฃผ์š” ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • Intel TXT์˜ ํ”„๋กœ์„ธ์„œ์— ๋Œ€ํ•œ ์‹ ๋ขฐ๊ฐ€ ๋ฐ”ํƒ•์ด ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด ์†”๋ฃจ์…˜์€ ์„œ๋ฒ„์˜ ๋ฏผ๊ฐํ•œ ์ •๋ณด์— ๋Œ€ํ•ด ๋” ๋‚˜์€ ๋ณด์•ˆ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ๋‚ด๋ถ€์— ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๊ณ  ์กฐ์ž‘๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ์˜ ์ผ๋ถ€ ์˜์—ญ์„ ์ง€์ •ํ•˜์—ฌ ๊ฒฉ๋ฆฌ๋œ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
  • ๋˜ํ•œ ์•”ํ˜ธํ™” ํ‚ค๋ฅผ ํ•˜๋“œ ๋“œ๋ผ์ด๋ธŒ์— ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋ฐ€๋ด‰ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

3.2 ARM Trust Zone

  • TrustZone์€ ARM ํ”„๋กœ์„ธ์„œ ์•„ํ‚คํ…์ฒ˜์˜ ์„ ํƒ์  ํ•˜๋“œ์›จ์–ด ๋ณด์•ˆ ํ™•์žฅ์œผ๋กœ ์ปดํ“จํ„ฐ ๋ฆฌ์†Œ์Šค๋ฅผ ์ผ๋ฐ˜ ์„ธ๊ณ„ ์™€ ๋ณด์•ˆ ์„ธ๊ณ„ ์˜ ๋‘ ์‹คํ–‰ ์„ธ๊ณ„๋กœ ๋ถ„ํ• ํ•˜์—ฌ ์•ˆ์ „ํ•œ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค(Ngabonziza et al., 2016).
  • TrustZone ๊ธฐ์ˆ ์€ 2002๋…„์— ๋ฐœํ‘œ๋˜์—ˆ์ง€๋งŒ 2009๋…„๊นŒ์ง€ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
  • ARM์€ ์„œ๋ฒ„ ๋ฐ IoT ์žฅ์น˜๋ฅผ ํฌํ•จํ•œ ๊ด‘๋ฒ”์œ„ํ•œ ํ”Œ๋žซํผ์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ARM64 ๋ฐ ARMv8-M ์•„ํ‚คํ…์ฒ˜์— ์ด๋ฅผ ํ†ตํ•ฉํ–ˆ์Šต๋‹ˆ๋‹ค(Li et al., 2019).
  • TrustZone์„ ์‚ฌ์šฉํ•˜๋ฉด ํ”„๋กœ์„ธ์„œ๋Š” ๋‘ ๊ฐ€์ง€ ๊ฐ€๋Šฅํ•œ ๋ณด์•ˆ ์„ธ๊ณ„ ์ค‘ ํ•˜๋‚˜์—์„œ ๋ช…๋ น์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ฆ‰, ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๋Š” ์ผ๋ฐ˜ ์„ธ๊ณ„ ์™€ ๋ณด์•ˆ ์„œ๋น„์Šค๊ฐ€ ์‹คํ–‰๋˜๋Š” ๋ณด์•ˆ ์„ธ๊ณ„ (Cotan et al., 2017).

image

  • ๊ทธ๋ฆผ 2์™€ ๊ฐ™์ด, ์ด ํ”„๋กœ์„ธ์„œ ๋ชจ๋“œ๋“ค์€ ๋…๋ฆฝ์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„๊ณผ ๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๊ถŒํ•œ(privileges)๋ฅผ ๊ฐ–๋Š”๋‹ค.
  • ๋‘ ์„ธ๊ณ„์— ๊ณตํ†ต์ ์œผ๋กœ ์กด์žฌํ•˜๋Š” ์‚ฌ์šฉ์ž ๋ชจ๋“œ(์‚ฌ์šฉ์ž ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋จ)์™€ ๊ถŒํ•œ ๋ชจ๋“œ(์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์‹คํ–‰๋จ) ์™ธ์—๋„ ๊ทธ๋ฆผ 2๋Š” ๋ณด์•ˆ ์„ธ๊ณ„๊ฐ€ ๋ชจ๋‹ˆํ„ฐ ๋ผ๋Š” ์„ธ ๋ฒˆ์งธ ๋ชจ๋“œ์—์„œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์Œ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
  • moniter ๋ชจ๋“œ๋Š” ARM ํ”„๋กœ์„ธ์„œ์˜ ํŠน์ • ๋ถ€๋ถ„์—์„œ ์ง€์›๋˜๋ฉฐ ๋‚ด๋ถ€์—์„œ ์‹คํ–‰๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋Š” ๋‹ค๋ฅธ ๋ชจ๋“  ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.
  • moniter ๋ชจ๋“œ์—์„œ privileged ๋ชจ๋“œ๋กœ ๋˜๋Š” ๊ทธ ๋ฐ˜๋Œ€๋กœ์˜ ์ „ํ™˜์€ ์ผ๋ฐ˜์ ์ธ ํ”„๋กœ์„ธ์„œ ์ธํ„ฐํŽ˜์ด์Šค, ์ฆ‰ ISA(๋ช…๋ น์–ด ์ง‘ํ•ฉ ์•„ํ‚คํ…์ฒ˜)๋ฅผ ํ†ตํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.
  • ARM TrustZone ๋ฐ ํŠน์ • ์กฐ๊ฑด์—์„œ ๋ณด์•ˆ ์„ธ๊ณ„(Privileged Mode)์˜ ์ฝ”๋“œ๋Š” ์ผ๋ฐ˜ ์„ธ๊ณ„(User Mode)์˜ ์ฃผ์†Œ ๊ณต๊ฐ„์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ทธ ๋ฐ˜๋Œ€๋Š” ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • ์ด ๋ฉ”์ปค๋‹ˆ์ฆ˜์€ NS ๋น„ํŠธ๋ผ๊ณ  ํ•˜๋Š” ํ”„๋กœ์„ธ์„œ์˜ ํ•˜๋“œ ์ฝ”๋”ฉ๋œ ๋น„ํŠธ์— ์˜ํ•ด ์ œ์–ด๋ฉ๋‹ˆ๋‹ค.
  • ํ”„๋กœ์„ธ์„œ์˜ ํ˜„์žฌ ์‹คํ–‰ ์„ธ๊ณ„๋ฅผ ์ง€์ •ํ•˜๊ณ  ์ผ๋ถ€ I/O ๋ฒ„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฃผ๋ณ€ ์žฅ์น˜์— ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค(Santos et al., 2014).

image

  • NS ๋น„ํŠธ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋Š” ๊ทธ๋ฆผ 3๊ณผ ๊ฐ™์ด SMC(์‹œ์Šคํ…œ ๋ชจ๋‹ˆํ„ฐ ํ˜ธ์ถœ)์— ์˜ํ•ด ํŠธ๋ฆฌ๊ฑฐ๋˜๋Š” ๋ณด์•ˆ ๋ชจ๋‹ˆํ„ฐ์— ์˜ํ•ด ๋ณดํ˜ธ๋ฉ๋‹ˆ๋‹ค(Gonzalez, 2015).
  • CPU ์ฝ”์–ด ๋‚ด๋ถ€์˜ ์•„๋ž˜์ชฝ ํ™”์‚ดํ‘œ ์„ ์€ SMC๋ฅผ ํ†ตํ•œ ์†Œํ”„ํŠธ์›จ์–ด-ํ•˜๋“œ์›จ์–ด ์ƒํ˜ธ ์ž‘์šฉ์„ ๋‚˜ํƒ€๋‚ด๊ณ  ๋‹ค๋ฅธ ์™ผ์ชฝ ํ™”์‚ดํ‘œ ์„ ์€ ๋ณด์•ˆ ์„ธ๊ณ„ ์ฃผ์†Œ ๊ณต๊ฐ„์—์„œ ์‹คํ–‰๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด์—์„œ ์ผ๋ฐ˜ ์„ธ๊ณ„ ์ฃผ์†Œ ๊ณต๊ฐ„์—์„œ ์‹คํ–‰๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋กœ์˜ ์ง์ ‘ ์•ก์„ธ์Šค๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
  • CPU ์ฝ”์–ด ์™ธ๋ถ€์˜ ๋‹ค๋ฅธ ๋ผ์ธ์€ ์ด๋ฅผ ๋ฉ”๋ชจ๋ฆฌ ๋ฐ I/O ์žฅ์น˜์— ์—ฐ๊ฒฐํ•˜๋Š” ๋‹ค๋ฅธ ๋ฒ„์Šค๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

3.3 AMD SEV

  • AMD SEV๋Š” ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์˜ ์‹ ๋ขฐ ๋ฌธ์ œ๋ฅผ ์ง์ ‘์ ์œผ๋กœ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ•ด๊ฒฐํ•˜๋Š” 4๊ฐ€์ง€ ์—ฐ๊ตฌ ๋ฐ ๋น„๊ต ๊ธฐ์ˆ  ์ค‘ ๊ณ ์œ ํ•œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค.
  • SEV(Secure Encrypted Virtualization) ๊ธฐ๋Šฅ์€ ๊ฐ ๊ฒŒ์ŠคํŠธ VM์— ๋Œ€ํ•œ ๊ณ ์œ  ํ‚ค๋กœ VM์˜ ๋ฉ”๋ชจ๋ฆฌ ๋‚ด์šฉ์„ ํˆฌ๋ช…ํ•˜๊ฒŒ ์•”ํ˜ธํ™”ํ•ฉ๋‹ˆ๋‹ค.

image

  • ๊ทธ๋ฆผ 4์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ๋ฉ”๋ชจ๋ฆฌ ์ปจํŠธ๋กค๋Ÿฌ์—๋Š” ์‹œ์Šคํ…œ์˜ ์—ฌ๋Ÿฌ VM์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ ํ‚ค๋กœ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ณ ์„ฑ๋Šฅ ์•”ํ˜ธํ™” ์—”์ง„(AES-128 ํ•˜๋“œ์›จ์–ด ์•”ํ˜ธํ™” ์—”์ง„)์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ด๋Ÿฌํ•œ ํ‚ค์˜ ๊ด€๋ฆฌ ๋ฐ ํ˜ธ์ŠคํŠธ ํ•˜์ดํผ๋ฐ”์ด์ €์™€ ๊ฒŒ์ŠคํŠธ VM ๋ฉ”๋ชจ๋ฆฌ ๊ฐ„์˜ ๋ณด์•ˆ ๋ฐ์ดํ„ฐ ์ „์†ก์€ AMD ๋ณด์•ˆ ํ”„๋กœ์„ธ์„œ์—์„œ ์‹คํ–‰๋˜๋Š” SEV ํŽŒ์›จ์–ด์— ์˜ํ•ด ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค(Advanced Micro Devices, 2018b).
  • VM์„ ์•”ํ˜ธํ™”ํ•˜๋ฉด ๋ฌผ๋ฆฌ์  ์œ„ํ˜‘, ๋‹ค๋ฅธ VM ์œ„ํ˜‘ ๋˜๋Š” VMM ์ž์ฒด๋กœ๋ถ€ํ„ฐ VM์„ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • SEV๋Š” ํ˜ธ์ŠคํŠธ ์‹œ์Šคํ…œ์˜ ํ•˜์ดํผ๋ฐ”์ด์ € ๋˜๋Š” ๊ด€๋ฆฌ์ž๋ฅผ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์ƒˆ๋กœ์šด ๊ฐ€์ƒํ™” ๋ณด์•ˆ ์†”๋ฃจ์…˜์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
  • AMD SME(๋ณด์•ˆ ๋ฉ”๋ชจ๋ฆฌ ์•”ํ˜ธํ™”)๋Š” ๋ถ€ํŒ… ์‹œ AMD ๋ณด์•ˆ ํ”„๋กœ์„ธ์„œ์— ์˜ํ•ด ์ƒ์„ฑ๋˜๋Š” ๋‹จ์ผ ํ‚ค๋กœ ๋ชจ๋“  ์‹œ์Šคํ…œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์•”ํ˜ธํ™”ํ•ฉ๋‹ˆ๋‹ค( Advanced Micro Devices, 2018a ).
  • AMD-V ๊ธฐ์ˆ  ๊ธฐ๋ฐ˜ SEV๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์— ์‚ฌ์šฉ๋˜์–ด ๊ฐ€์ƒํ™”๋œ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ๋ณด์•ˆ ๋ชจ๋ธ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์†Œํ”„ํŠธ์›จ์–ด ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•˜์ง€ ์•Š์œผ๋ฉฐ ์ „์šฉ ํ•˜๋“œ์›จ์–ด ์—”์ง„ ๋•๋ถ„์— VM์˜ ์•”ํ˜ธํ™”๊ฐ€ ๋น ๋ฅด๊ณ  ํˆฌ๋ช…ํ•˜๊ฒŒ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค(Kaplan et al., 2016).

3.4 Intel SGX

  • Intel SGX๋Š” 2013๋…„ Intel Corporation์—์„œ IA-64 ISA์˜ ํ™•์žฅ์œผ๋กœ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. Skylake ๋งˆ์ดํฌ๋กœ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” 6์„ธ๋Œ€ Intel Core ํ”„๋กœ์„ธ์„œ์™€ ํ•จ๊ป˜ 2015๋…„์— ๋„์ž…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ฃผ์†Œ ๊ณต๊ฐ„์˜ ์ผ๋ถ€๋ฅผ ๋ณดํ˜ธํ•˜๊ณ  Enclave๋ผ๊ณ  ํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆ ๋‚ด์—์„œ ์ฝ”๋“œ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค(Wang et al., 2018).
  • ์ด๊ฒƒ์€ ์‚ฌ์šฉ์ž ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํ•˜๋“œ์›จ์–ด ์ง€์› TEE๋กœ Enclave๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์ƒˆ๋กœ์šด CPU ๋ช…๋ น์–ด ์„ธํŠธ๋ฅผ ๋„์ž…ํ•˜๋Š” ์•„ํ‚คํ…์ฒ˜ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
  • Enclave๋Š” ์ƒ์œ„ ๊ถŒํ•œ ์ฝ”๋“œ(SMM, BIOS, VMM, OS ๋“ฑ)๊ฐ€ ์•„๋‹Œ ์™ธ๋ถ€ ์ฝ”๋“œ์— ์˜ํ•ด ๋ณ€๊ฒฝ๋  ์ˆ˜ ์—†๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฃผ์†Œ ๊ณต๊ฐ„์˜ ๋ณดํ˜ธ ์˜์—ญ์œผ๋กœ ์ •์˜๋ฉ๋‹ˆ๋‹ค( Gonzalez, 2015 ).
  • Intel SGX๋Š” ์™„์ „ํžˆ ์†์ƒ๋œ ํ™˜๊ฒฝ์—์„œ๋„ ๋Ÿฐํƒ€์ž„ ์‹œ ์—”ํด๋ ˆ์ด๋ธŒ ์ฝ”๋“œ ๋ฐ ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ๊ณผ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜๋ฉฐ(Costan et al., 2017; Mofrad et al., 2018), ๊ณต๊ฒฉ์ž๊ฐ€ ์ „์ฒด ๊ณต๊ฒฉ์„ ๋ฐ›์€ ๊ฒฝ์šฐ์—๋„ ๋น„๋ฐ€์€ ๋ณดํ˜ธ๋œ ์ƒํƒœ๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.
  • ํ”Œ๋žซํผ์˜ ์ œ์–ด. ๋ฉ”๋ชจ๋ฆฌ ๋ฒ„์Šค ์Šค๋ˆ„ํ•‘ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ๋ณ€์กฐ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ณ  ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์ฆ๋ช… ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ ์œ ํšจํ•œ ์ฝ”๋“œ ๋ฐ ๋ฐ์ดํ„ฐ ์„œ๋ช…์„ ์ธก์ •ํ•˜๊ณ  ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  • Intel SGX๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํด๋ผ์šฐ๋“œ ํ…Œ๋„ŒํŠธ๋Š” ํ˜ธ๊ธฐ์‹ฌ์ด ๋งŽ๊ฑฐ๋‚˜ ์•…์˜์ ์ธ ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ์™€ IP(์ง€์  ์žฌ์‚ฐ๊ถŒ)๋ฅผ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด CPU ํ•˜๋“œ์›จ์–ด์—๋งŒ ์˜์กดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋˜ํ•œ ์ด ๊ธฐ์ˆ ์€ DRM ์—”ํด๋ ˆ์ด๋ธŒ(๋””์ง€ํ„ธ ๊ถŒํ•œ ๊ด€๋ฆฌ)๋ฅผ ํ†ตํ•ด ์ €์ž‘๊ถŒ์ด ์žˆ๋Š” ์ž๋ฃŒ๋ฅผ ๋ถˆ๋ฒ• ๋ณต์ œ๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธํ•˜๊ณ  ๋น„๋ฐ€, ์•”ํ˜ธ ๊ด€๋ฆฌ์ž ๋ฐ ๋ฉ”์‹ ์ € ๋ณดํ˜ธ, ์•”/๋ณตํ˜ธํ™” ํ‚ค ๋“ฑ๊ณผ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ์ถ”๊ฐ€ ์‚ฌ์šฉ ์‚ฌ๋ก€์—๋„ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

image

  • ๊ทธ๋ฆผ 5๋Š” Intel SGX๊ฐ€ ์‚ฌ์šฉ์ž ๋น„๋ฐ€์„ ๋ณดํ˜ธํ•˜๋Š” ๋ฐฉ๋ฒ•์˜ ์˜ˆ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
  • ์ฒซ์งธ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฝ”๋“œ๊ฐ€ ๋™์ผํ•œ ์ฃผ์†Œ ๊ณต๊ฐ„์—์„œ ๋‘ ๊ฐœ์˜ ๊ฐœ๋ณ„ ์„น์…˜์ธ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์„น์…˜ ๊ณผ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์„น์…˜ ์œผ๋กœ ๋ช…์‹œ์ ์œผ๋กœ ๋ถ„ํ• ๋œ๋‹ค๋Š” ์ ์— ์ฃผ๋ชฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ/์ฝ”๋“œ๋Š” ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์„น์…˜์— ์žˆ์œผ๋ฉฐ SGX ์ฝœ ๊ฒŒ์ดํŠธ๋ฅผ ํ†ตํ•ด ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์„น์…˜ ์—์„œ ์•ก์„ธ์Šค๋ฉ๋‹ˆ๋‹ค.
  • ์ด ํ”„๋กœ์„ธ์Šค์˜ ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” SGX API๋ฅผ ํ†ตํ•ด ํ•˜๋‚˜ ์ด์ƒ์˜ ์—”ํด๋ ˆ์ด๋ธŒ๋ฅผ ์ƒ์„ฑํ•œ ๋‹ค์Œ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • ์ œ์–ด ํ๋ฆ„ ์ „์†ก์˜ ๋ณด์•ˆ์€ Intel SGX ํ•˜๋“œ์›จ์–ด์— ์˜ํ•ด ๋ณด์žฅ๋ฉ๋‹ˆ๋‹ค.
  • ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์„น์…˜ ๋‚ด์—์„œ ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ๋งˆ์นœ ํ›„ ์ œ์–ด ํ๋ฆ„์€ ์‹คํ–‰ ๋ชจ๋“œ ์ „ํ™˜ ์‹œ ํ”„๋กœ์„ธ์„œ ์ƒํƒœ ์ •๋ฆฌ๋ฅผ ๋ณด์žฅํ•˜๋Š” SGX ๋ช…๋ น์„ ํ†ตํ•ด ์ •์ƒ ์‹คํ–‰์œผ๋กœ ๋‹ค์‹œ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.
  • ๋ชจ๋“  ๊ถŒํ•œ ์žˆ๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋Š” ์‹คํ–‰ ์ˆ˜์ค€์ด ๋” ๋†’๋”๋ผ๋„ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์„น์…˜์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • ๊ณง ์ถœ์‹œ๋  ๋ฒ„์ „ SGX v2์—์„œ๋Š” ์ดˆ๊ณผ ๊ตฌ๋…์ด๋ผ๋Š” ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ์—ฌ๋Ÿฌ VM์ด EPC(Enclave Page Cache)๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ฆ‰, ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์„ ๋ช…์‹œ์ ์œผ๋กœ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค( Chakrabarti et al., 2017).
  • ์ธํ…”์€ ๋˜ํ•œ ์ž์ฒด ํ•ต์‹ฌ ์ธํ”„๋ผ๋ฅผ ํ†ตํ•ด ์ธํ…”์˜ ์—„๊ฒฉํ•œ ์—”ํด๋ ˆ์ด๋ธŒ ์„œ๋ช… ์ •์ฑ…์„ ์šฐํšŒํ•  ์ˆ˜ ์žˆ๋„๋ก ์˜คํ”ˆ ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๊ธฐ์ˆ ์„ ๊ณต๊ฐœํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค(Schwarz et al., 2019).
  • Intel SGX ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์‹คํ–‰ ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰๋˜๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์€ ID ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ, ๋ณด์•ˆ ๊ฒ€์ƒ‰ ๋ฐ DRM๊ณผ ๊ฐ™์€ ์ผ๋ถ€ ๋ณด์•ˆ ์˜ต์…˜์œผ๋กœ ๊ฐ•ํ™”๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋˜ํ•œ ๊ฐœ๋ฐœ์ž๋Š” ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ €์žฅํ•ด์•ผ ํ•˜๋Š” ์ผ๋ถ€ ๋ณด์•ˆ ์š”๊ตฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ์—”๋“œํฌ์ธํŠธ ๋ณดํ˜ธ๋ฅผ ๊ฐ•ํ™”ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

4. Compariosn

์ด ์„น์…˜์—์„œ๋Š” Sabt et al.์— ์˜ํ•ด ์ •์˜๋œ ์„ธ ๊ฐ€์ง€ ๋ฒ”์ฃผ์˜ ๋น„๊ต ๊ธฐ์ค€์„ ์ฑ„ํƒํ•ฉ๋‹ˆ๋‹ค. (2015), ์ฆ‰: ๋ณด์•ˆ, ๊ธฐ๋Šฅ ๋ฐ ๋ฐฐํฌ ๊ฐ€๋Šฅ์„ฑ, ๊ฐ ๋ฒ”์ฃผ์˜ ํŠน์ • ์‚ฌ์šฉ์ž ์ง€์ •.

4.1 Criteria definition

  • ๋น„๊ต์—์„œ ์ฑ„ํƒํ•œ ๊ธฐ์ค€์€ ๋‹ค์–‘ํ•œ ์‹คํ–‰ ํ™˜๊ฒฝ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์šฐ๋ฆฌ๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์‚ฌ์šฉ์˜ ๊ด€์ ์—์„œ ์ด ํ•˜์œ„ ์„น์…˜์—์„œ ํ•ด๋‹น ๋˜๋Š” ๊ธฐ์ค€๋“ค์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ๋˜ํ•œ ์—ฌ๊ธฐ์—์„œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ๋‘ ๊ฐ€์ง€ ์ถ”์ƒํ™” ์ˆ˜์ค€๊ณผ ์‹ ๋ขฐ๋ฅผ ์œ„ํ•œ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜ ์‚ฌ์ด์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ๋ฉ€๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋Ÿฌํ•œ ํ”„๋ ˆ์  ํ…Œ์ด์…˜์ด ๋ช…ํ™•ํ•˜์ง€ ์•Š๋‹ค๋Š” ์ ์„ ์ฃผ๋ชฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ/์ฝ”๋“œ๋Š” CSP๋‚˜ ํ•˜๋“œ์›จ์–ด๊ฐ€ ์•„๋‹Œ ์ตœ์ข… ์‚ฌ์šฉ์ž์— ๋Œ€ํ•ด ์ •์˜๋ฉ๋‹ˆ๋‹ค.
  • ๋”ฐ๋ผ์„œ CSP๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์‹ ๋ขฐ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง„ ์›๊ฒฉ VM์—์„œ ์‹คํ–‰๋˜๋Š” ํด๋ผ์šฐ๋“œ ๊ด€๋ฆฌ ์†Œํ”„ํŠธ์›จ์–ด ์Šคํƒ์„ ํ†ตํ•ด ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ์™€ ์ƒํ˜ธ ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ๋˜ํ•œ ๋Œ€์ƒ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๋Š” ๋„๋ฉ”์ธ์€ ์ž์ฒด์ ์œผ๋กœ ๊ถŒํ•œ ์žˆ๋Š” ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด ์Šคํƒ์„ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์›๊ฒฉ VM์— ์œ„์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ด ํ›„์ž๋Š” PaaS๋ฅผ ํ†ตํ•ด ๋™์ผํ•œ CSP ๋˜๋Š” ๋‹ค๋ฅธ CSP์—์„œ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ด ๋ชจ๋“  ์Šคํƒ์€ IaaS๋ฅผ ํ†ตํ•ด ๋Œ€์ƒ ํ•˜๋“œ์›จ์–ด ์œ„์—์„œ ์‹คํ–‰๋˜๋Š” ํ˜ธ์ŠคํŠธ OS ์œ„์—์„œ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ•˜๋“œ์›จ์–ด์—์„œ ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ/์ฝ”๋“œ ์•ก์„ธ์Šค ์˜๋ฏธ๋Š” ์ผ๋ฐ˜ ์‹คํ–‰ ์ปจํ…์ŠคํŠธ์™€ ๋น„๊ตํ•  ๋•Œ ํฌ๊ฒŒ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.
  • ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์ด ์ตœ์ข… ์‚ฌ์šฉ์ž ๊ด€์ ์—์„œ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์— ๋Œ€ํ•œ ์‹ ๋ขฐ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ตœ์ข… ์‚ฌ์šฉ์ž ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ/์ฝ”๋“œ ๋ณดํ˜ธ ์˜๋ฏธ๊ฐ€ ๋‹ค์–‘ํ•œ ํ•ด์„ ๋„๋ฉ”์ธ์˜ ๊ฒฝ๊ณ„๋ฅผ ๋„˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ „์ฒด ํ”„๋ ˆ์  ํ…Œ์ด์…˜์€ ์ด ๋ฐฑ์„œ์˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚ฉ๋‹ˆ๋‹ค.
  • ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์šฐ๋ฆฌ๋Š” ์„น์…˜ 2์—์„œ ์ •์˜ํ•œ ๊ฐ„๋‹จํ•œ ํด๋ผ์šฐ๋“œ ์„ค์ •์— ๋น„์ถ”์–ด ์ด ๊ด€๊ณ„๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ์ด ํ•˜์œ„ ์„น์…˜์—์„œ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

4.1.1 Security criteria

์ด ๋ฒ”์ฃผ๋Š” ์„น์…˜ 2.1์— ์ •์˜๋œ ๊ณต๊ฒฉ์ž ๋ชจ๋ธ์— ๋”ฐ๋ผ ํด๋ผ์šฐ๋“œ์— ๋Œ€ํ•œ ํŠน์ • ๊ณต๊ฒฉ์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. ์‹คํ–‰ ํ™˜๊ฒฝ ๊ฒฉ๋ฆฌ๋ฅผ ์œ„ํ•ด TEE ๋ฉ”์ปค๋‹ˆ์ฆ˜์— ์˜ํ•ด ๊ตฌํ˜„๋œ ๋ณด์•ˆ ๊ธฐ๋Šฅ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

  • Isolation level: ํด๋ผ์šฐ๋“œ ์‹คํ–‰ ํ™˜๊ฒฝ์˜ ๊ฒฉ๋ฆฌ๋Š” ๋‚ด๋ถ€์—์„œ ์‹คํ–‰๋˜๋Š” VM, ํ”„๋กœ์„ธ์Šค ๋ฐ ์Šค๋ ˆ๋“œ๊ฐ€ ์™ธ๋ถ€์˜ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๋ฐ/๋˜๋Š” ํ•˜๋“œ์›จ์–ด ๋ถ€ํ’ˆ์„ ๋ฐฉํ•ดํ•˜์ง€ ์•Š๋Š” ์†์„ฑ์œผ๋กœ ์ •์˜๋ฉ๋‹ˆ๋‹ค. ์™ธ๋ถ€์ธ์˜ ์Šน์ธ๋˜์ง€ ์•Š์€ ์†Œํ”„ํŠธ์›จ์–ด๋Š” ์ด๋ฅผ ์ฝ๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ˆ˜์ •์€ ์—„๊ฒฉํ•œ ํ˜ธ์ถœ ๊ฒŒ์ดํŠธ๋ฅผ ํ†ตํ•ด ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์— ์˜ํ•ด์„œ๋งŒ ์Šน์ธ๋œ ๋ถ€ํ’ˆ์— ๋Œ€ํ•ด ์ œ์–ด๋˜๊ณ  ํ—ˆ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ฒฉ๋ฆฌ ์ˆ˜์ค€์€ ๋ฉ”๋ชจ๋ฆฌ, CPU, ROM ๋“ฑ๊ณผ ๊ฐ™์€ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์— ์˜ํ•ด ๊ฒฉ๋ฆฌ๊ฐ€ ์ˆ˜ํ–‰๋˜๋Š” ์˜์—ญ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ํด๋ผ์šฐ๋“œ ์‚ฌ์šฉ์ž์˜ ๊ด€์ ์—์„œ ์ด๋Ÿฌํ•œ ๋ชจ๋“  ์ˆ˜์ค€์˜ ๊ฒฉ๋ฆฌ๋Š” ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด ๋ฐ ๋“œ๋ผ์ด๋ฒ„ ๋ชจ๋“ˆ์— ์˜ํ•ด ์ˆจ๊ฒจ์ง‘๋‹ˆ๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ, SDK(ํ‘œ์ค€ ๊ฐœ๋ฐœ ํ‚คํŠธ) ๋ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๋•๋ถ„์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์ž์™€ ๋ณด์•ˆ ๊ด€๋ฆฌ์ž์—๊ฒŒ๋„ ํˆฌ๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ OS/VMM ํŽธ์ง‘์ž๋Š” ๋ชจ๋“  ์‹คํ–‰ ๋ชจ๋ธ์ด ํ•œ ์ˆ˜์ค€์—์„œ ๋‹ค๋ฅธ ์ˆ˜์ค€์œผ๋กœ ๋ณ€๊ฒฝ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ ํ•˜๋“œ์›จ์–ด ์†”๋ฃจ์…˜์— ์˜ํ•ด ์„ค์ •๋œ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€์„ ์ฃผ์˜ ๊นŠ๊ฒŒ ๋‹ค๋ฃจ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • Memory confidentiality and integrity protection: ๋ฉ”๋ชจ๋ฆฌ ๊ธฐ๋ฐ€์„ฑ ๋ฐ ๋ฌด๊ฒฐ์„ฑ ๋ณดํ˜ธ: ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ๋ฉ”๋ชจ๋ฆฌ ๋น„๋ฐ€ ์ฝ”๋“œ/๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•˜์—ฌ ๊ธฐ๋ฐ€์„ฑ ๋ณดํ˜ธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ๋ฌด๊ฒฐ์„ฑ ๋ณดํ˜ธ๋Š” ์ด๋Ÿฌํ•œ ์ฝ”๋“œ/๋ฐ์ดํ„ฐ์˜ ๋ฌด๋‹จ ์ˆ˜์ • ๋˜๋Š” ๋ณ€๊ฒฝ ๊ฐ์ง€๋ฅผ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” VM์€ ์ข…์ข… ๊ณ ์œ ํ•œ ํด๋ผ์šฐ๋“œ ํ…Œ๋„ŒํŠธ๊ฐ€ ์†Œ์œ ํ•˜๊ณ  ๊ณต์œ  VM์€ ์Šน์ธ๋œ ๋‹น์‚ฌ์ž๋งŒ ์ˆ˜์ •ํ•˜๋ฉด ๋˜๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์€ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

Isolation level: ย ํด๋ผ์šฐ๋“œ ์‹คํ–‰ ํ™˜๊ฒฝ์˜ isolation ๊ฐ™์€ ๊ฒฝ์šฐ, ๋‚ด๋ถ€์—์„œ ์‹คํ–‰๋˜๋Š” VM, Process, thread๊ฐ€ ์™ธ๋ถ€์˜ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” S/W or H/W parts์— ๊ฐœ์ž…ํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ์—ฌ๋ถ€์— ๋Œ€ํ•œ ๊ฒƒ์ด๋‹ค.์™ธ๋ถ€์—์„œ ์Šน์ธ๋˜์ง€ ์•Š์€ S/W๋Š” ์ด๋ฅผ ์ฝ๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†๊ณ , ์ˆ˜์ •์€ ์—„๊ฒฉํ•œ ํ˜ธ์ถœ ๊ฒŒ์ดํŠธ๋ฅผ ํ†ตํ•ด์„œ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์— ์˜ํ•ด์„œ๋งŒ ์Šน์ธ๋œ ๋ถ€ํ’ˆ์— ๋Œ€ํ•ด ์ œ์–ด๋˜๊ณ  ํ—ˆ์šฉ๋œ๋‹ค. Isolation level์€ H/W ๊ธฐ๋ฐ˜์˜ ์†”๋ฃจ์…˜ (๋ฉ”๋ชจ๋ฆฌ, CPU, ROM ๋“ฑ)์—์„œ isolation์ด ์ˆ˜ํ–‰๋˜๋Š” ์œ„์น˜๋ฅผ ๋งํ•œ๋‹ค. ํด๋ผ์šฐ๋“œ user point ๊ด€์ ์œผ๋กœ๋ถ€ํ„ฐ, ๋ชจ๋“  ์ด๋Ÿฐ isolation ๋ ˆ๋ฒจ์€ System S/W ๊ทธ๋ฆฌ๊ณ  driver module์— ์˜ํ•ด์„œ ์ˆจ๊ฒจ์ง€๊ฒŒ ์‹œํ–‰๋œ๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ, SDK(ํ‘œ์ค€ ๊ฐœ๋ฐœ ํ‚คํŠธ) ๋ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๋•๋ถ„์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์ž์™€ ๋ณด์•ˆ ๊ด€๋ฆฌ์ž์—๊ฒŒ๋„ ํˆฌ๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ OS/VMM ํŽธ์ง‘์ž๋Š” ๋ชจ๋“  ์‹คํ–‰ ๋ชจ๋ธ์ด ํ•œ ์ˆ˜์ค€์—์„œ ๋‹ค๋ฅธ ์ˆ˜์ค€์œผ๋กœ ๋ณ€๊ฒฝ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ ํ•˜๋“œ์›จ์–ด ์†”๋ฃจ์…˜์— ์˜ํ•ด ์„ค์ •๋œ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€์„ ์ฃผ์˜ ๊นŠ๊ฒŒ ๋‹ค๋ฃจ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฉ”๋ชจ๋ฆฌ ๊ธฐ๋ฐ€์„ฑ ๋ฐ ๋ฌด๊ฒฐ์„ฑ ๋ณดํ˜ธ: ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ๋ฉ”๋ชจ๋ฆฌ ๋น„๋ฐ€ ์ฝ”๋“œ/๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•˜์—ฌ ๊ธฐ๋ฐ€์„ฑ ๋ณดํ˜ธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ๋ฌด๊ฒฐ์„ฑ ๋ณดํ˜ธ๋Š” ์ด๋Ÿฌํ•œ ์ฝ”๋“œ/๋ฐ์ดํ„ฐ์˜ ๋ฌด๋‹จ ์ˆ˜์ • ๋˜๋Š” ๋ณ€๊ฒฝ ํƒ์ง€๋ฅผ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” VM์€ ์ข…์ข… ๊ณ ์œ ํ•œ ํด๋ผ์šฐ๋“œ ํ…Œ๋„ŒํŠธ๊ฐ€ ์†Œ์œ ํ•˜๊ณ  ๊ณต์œ  VM์€ ์Šน์ธ๋œ ๋‹น์‚ฌ์ž๋งŒ ์ˆ˜์ •ํ•˜๋ฉด ๋˜๋ฏ€๋กœ ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์€ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ๊ถŒํ•œ์ด ์žˆ๋Š” ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์†์ƒ๋˜์–ด ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ถŒํ•œ์ด ์žˆ๋Š” ์†Œํ”„ํŠธ์›จ์–ด์— ๋Œ€ํ•œ ๋ณดํ˜ธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ 2์ ˆ์—์„œ ์„ค๋ช…ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์˜ ๋Œ€๋ถ€๋ถ„์˜ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด ์Šคํƒ์€ ์ตœ์ข… ์‚ฌ์šฉ์ž๊ฐ€ ์ œ์–ดํ•˜์ง€ ์•Š์œผ๋ฉฐ CSP๋ฅผ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋ฌผ๋ฆฌ์  ๊ณต๊ฒฉ์— ๋Œ€ํ•œ ๋ณดํ˜ธ: ๋ฌผ๋ฆฌ์  ๊ณต๊ฒฉ์€ ๊ณต๊ฒฉ์ž๊ฐ€ ๋‚˜์ค‘์— ๋ถ„์„์„ ์œ„ํ•ด ์ผ๋ถ€ ๋น„๋ฐ€์„ ์–ป๊ธฐ ์œ„ํ•ด ํ”Œ๋žซํผ์—์„œ ์žฅ์น˜๋‚˜ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋Š” ํ•˜๋“œ์›จ์–ด์— ๋Œ€ํ•œ ๋ฌด๋‹จ ๋ฌผ๋ฆฌ์  ์•ก์„ธ์Šค์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ฆฌ์  ๊ณต๊ฒฉ์— ๋Œ€ํ•œ ๋ณดํ˜ธ๋ฅผ ์ œ๊ณตํ•˜๋Š” ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์•”ํ˜ธํ™” ๋ฐฉ๋ฒ•์œผ๋กœ ์ง€์ •๋œ ๊ตฌ์„ฑ ์š”์†Œ์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ๋Š” ์ด๋Ÿฌํ•œ ์œ ํ˜•์˜ ๊ณต๊ฒฉ์œผ๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ํŠนํžˆ ๋ณด์•ˆ ์ˆ˜์ค€์ด ๋†’์€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๊ฒฝ์šฐ ์ด๋Ÿฌํ•œ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์Šค๋ˆ„ํ•‘์€ ์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค. 2.1์— ๋ฌ˜์‚ฌ๋œ attacker model๋“ค์— ๊ด€ํ•˜์—ฌ ์ด๊ฒƒ์€ ๊ณต๊ฒฉ์ž๋“ค์€ ์ฒซ๋ฒˆ์งธ๋กœ trusted cloud infra์— ์ ‘๊ทผ์„ ๊ฐ€์ •ํ•œ๋‹ค. (์‹ ๋ขฐ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด ๋ณดํ˜ธ ๋ฉ”์นด๋‹ˆ์ฆ˜์„ ์šฐํšŒํ•˜๊ณ ) ๊ทธ๋ฆฌ๊ณ  ๊ทธ ํ›„ memory transaction์„ ๊ด€์ฐฐํ•˜๊ธฐ ์œ„ํ•ด ์ฝ”๋“œ๋ฅผ ์ฃผ์ž…ํ•˜๊ณ , bus๋กœ์˜ ์ ‘๊ทผ์„ ๋ฐฉํ•ดํ•˜๋ฉฐ, side-channel๊ณผ timing attack์„ ์‚ฝ์ž…ํ•œ๋‹ค.

๋ณด์•ˆ ์Šคํ† ๋ฆฌ์ง€: ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋Š” ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์œผ๋กœ ๋ณดํ˜ธ๋˜๋Š” ๋ณด์•ˆ ์Šคํ† ๋ฆฌ์ง€์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ์ค€์€ ๊ณต๊ฒฉ์ž ๋ชจ๋ธ์— ๋”ฐ๋ผ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด์— ์˜ํ•ด ๊ตฌํ˜„๋˜๋Š” ๋ณดํ˜ธ๋œ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ณดํ˜ธ๋˜์ง€ ์•Š์€ ๋ฉ”๋ชจ๋ฆฌ๋กœ ํŽ˜์ด์ง€ ์Šค์™€ํ•‘์˜ ์ผ๋ถ€์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณดํ˜ธ๋œ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์ด ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณด์•ˆ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ ์™ธ๋ถ€๋กœ ๋ณต์‚ฌ๋  ๋•Œ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ€์„ฑ๊ณผ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ณด์•ˆ ๋ถ€ํŒ…: ๋ณด์•ˆ ๋ถ€ํŒ…์€ ํ•ด์‹œ๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ์•”ํ˜ธํ™” ์„œ๋ช…๊ณผ ๋น„๊ตํ•˜์—ฌ ๋ถ€ํŒ… ํ”„๋กœ์„ธ์Šค์˜ ๊ฐ ๋‹จ๊ณ„์˜ ๋ฌด๊ฒฐ์„ฑ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. BIOS, SMM ๋“ฑ์„ ํฌํ•จํ•˜์—ฌ TCB ์™ธ๋ถ€์˜ ์†Œํ”„ํŠธ์›จ์–ด ๋˜๋Š” ํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ๋ถ€ํŒ… ์ˆœ์„œ๋ฅผ ๋ฐฉํ•ดํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์€ ์„น์…˜ 2์— ์ •์˜๋œ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ์‹ ๋ขฐ ์ฒด์ธ์˜ ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ๋ฐ์ดํ„ฐ ๋ณ€์กฐ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ณ  ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์กดํ•˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ ๋ณดํ˜ธ: ์บ์‹œ ํƒ€์ด๋ฐ ๊ณต๊ฒฉ์€ ๋ณด์•ˆ์— ์ค‘์š”ํ•œ ์†Œํ”„ํŠธ์›จ์–ด์— ๋Œ€ํ•œ ์‹ฌ๊ฐํ•œ ์œ„ํ˜‘์ž…๋‹ˆ๋‹ค. ๋ถ€์ฑ„๋„ ๊ณต๊ฒฉ์€ CPU ์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์œ ์ถœ๋œ ํƒ€์ด๋ฐ ์ •๋ณด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ํ‚ค ์ž๋ฃŒ์™€ ๊ฐ™์€ ์ค‘์š”ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ƒํƒœ๋ฅผ ๋ณต๊ตฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์บ์‹œ๊ฐ€ ์ตœ์‹  ํ”„๋กœ์„ธ์„œ์˜ ๊ธฐ๋ณธ์ ์ธ ๋ถ€๋ถ„์ด ๋จ์— ๋”ฐ๋ผ ์ด๋Ÿฌํ•œ ์œ ํ˜•์˜ ๋ณดํ˜ธ๋Š” ๋ชจ๋“  ์‹คํ–‰ ํ™˜๊ฒฝ์—์„œ ๊ณ ๋ ค๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์„น์…˜ 2์— ์„ค๋ช…๋œ ํŠน์ • ํด๋ผ์šฐ๋“œ ์„ค์ •์—์„œ๋Š” ๊ณต๊ฒฉ์ž๊ฐ€ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ์— ์•ก์„ธ์Šคํ•˜๊ณ  ๋ชจ๋“  ๊ถŒํ•œ ์ˆ˜์ค€์—์„œ ์ž„์˜์˜ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋ฉ”๋ชจ๋ฆฌ ํ•˜์œ„ ์‹œ์Šคํ…œ์„ ๋ฐฉํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๊ณ ๋ คํ•˜๋Š” ๊ณต๊ฒฉ์ž ๋ชจ๋ธ์€ ์ด๋Ÿฌํ•œ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋ฉ”๋ชจ๋ฆฌ ์•ก์„ธ์Šค ๋ณดํ˜ธ: ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋ณดํ˜ธํ•˜๋Š” ํ•˜๋“œ์›จ์–ด ๊ธฐ๋ฐ˜ ์†”๋ฃจ์…˜์€ ๋ฉ”๋ชจ๋ฆฌ์— ๋Œ€ํ•œ ๋ฌด๋‹จ ์•ก์„ธ์Šค๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ œ๊ณตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์Šน์ธ๋œ ์—”ํ„ฐํ‹ฐ๋งŒ ๋ฉ”๋ชจ๋ฆฌ์˜ ๋น„๋ฐ€ ๋ฐ์ดํ„ฐ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ(์•„๋งˆ๋„ ์ ๋Œ€์ ์ธ) ํด๋ผ์šฐ๋“œ ํ…Œ๋„ŒํŠธ์˜ VM์ด ๋™์ผํ•œ ๋ฌผ๋ฆฌ์  ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์— ํ•จ๊ป˜ ์œ„์น˜ํ•˜๋ฏ€๋กœ ์ด ๋ณดํ˜ธ๋ฅผ ์ ์šฉํ•˜๋ฉด ์ด๋Ÿฌํ•œ ์ œ์–ด ์•ก์„ธ์Šค๋ฅผ ์šฐํšŒํ•˜๋ ค๋Š” ๋งŽ์€ ์œ„ํ˜‘์„ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

4.1.2 Functional criteria

์ด๋Ÿฌํ•œ ๊ธฐ์ค€์€ ์ˆ˜์‹ , ์ž…๋ ฅ, ์ฒ˜๋ฆฌ, ์ถœ๋ ฅ ๋ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์˜ ์ „์ฒด ์‚ฌ์šฉ ์ฃผ๊ธฐ ๋™์•ˆ ๋ฐ์ดํ„ฐ์˜ ๋ฌผ๋ฆฌ์  ๋ณดํ˜ธ๋ฅผ ์ธก์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์ˆ˜๋ช… ์ฃผ๊ธฐ์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ๋ณ€์กฐ ๋ฐฉ์ง€ TEE์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.



๐ŸŒŸpaper-reviewsecuritycloud Share Tweet +1