..

강의 노트 - 가상화, 가상머신

Ch 2. 가상머신에서 악성코드 분석

2024-04-11(목) 보안위협탐지및분석

가상화란

한마디로 가상화는 시스템 자원을 추상화하는 것이다.

가상화(假像化, virtualization)1는 컴퓨터에서 컴퓨터 리소스의 추상화를 일컫는 광범위한 용어이다. “물리적인 컴퓨터 리소스의 특징을 다른 시스템, 응용 프로그램, 최종 사용자들이 리소스와 상호 작용하는 방식으로부터 감추는 기술”로 정의할 수 있다. - 위키백과

클라우드에서의 가상화는 하나의 PC를 여러 대의 PC로, 여러 대의 PC를 하나의 PC로 느껴지게 만들어준다. 우리는 강의 시간에 악성코드를 동적분석 하므로 안전한 환경 구성이 필요하다. 그냥 악성코드를 실행할 경우 시스템 장애가 발생하고 네트워크를 통해 악성코드가 확산되어 제거가 불가능하다!

안전한 환경을 구성하는 방법은 여러 가지가 있는데:

  • 전용 물리 환경 만들기 (완벽하게 격리된 공간 만들기)
  • 격리된 네트워크 만들기
  • 가상머신 이용하기

우리가 사용하는 방법은 가상머신이다.

가상머신이란

가상머신(VM, Virtual Machine)은 모든 하드웨어 시스템에 프로비저닝2한다.

특정 응용 프로그램의 실행은 게스트 OS가 관리하는데, 이때 VM과 호스트 사이에는 하나의 VMM3이 필요하다.

  • 예: 게스트 OS - Linux, 하이퍼바이저(VMM) - Cambridge University의 XEN

오토 스케일링

오토스케일링(Autoscaling)4은 일반적으로 컴퓨팅 리소스 측면에서 시스템이 자동으로 규모를 조절(scale)하는 기능(ability)이다.

용어

  • 수평적 확장: 동일한 가상 환경의 확장
  • 수직적 확장: 가상 환경 사양의 확장

각각이 지니는 장단점은:

수평적 확장 수직적 확장
저비용(하드웨어 컴포넌트 이용) 고비용(특성화된 서버)
IT 자원을 즉시 이용 가능 정상적인 경우 IT 자원을 즉시 이용 가능
자원 복제 및 자동 확장 대개 추가적인 설정이 필요
추가적 IT 자원 필요추 가적 IT 자원 필요 없음
하드웨어 용량에 제약을 받지 않음 최대 하드웨어 용량에 제약을 받음

  1. 가상화 - 위키백과 

  2. 프로비저닝(provisioning)은 사용자가 요청한 IT 자원을 사용할 수 있는 상태로 준비하는 것을 말한다. 서버 자원 프로비저닝, OS 프로비저닝, 소프트웨어 프로비저닝, 스토리지 프로비저닝, 계정 프로비저닝 등이 있다. 수동으로 처리하는 ‘수동 프로비저닝’과 자동화 툴을 이용해 처리하는 ‘자동 프로비저닝’이 있다. 위키백과 

  3. 하이퍼바이저(영어: hypervisor)는 호스트 컴퓨터에서 다수의 운영 체제(operating system)를 동시에 실행하기 위한 논리적 플랫폼(platform)을 말한다. 가상화 머신 모니터 또는 가상화 머신 매니저(영어: virtual machine monitor 또는 virtual machine manager, 줄여서 VMM)라고도 부른다. 위키백과 

  4. 오토스케일링 - CLOUD NATIVE