안녕하세요. 구독자 님, 토요일 하루동안 하늘에 구멍이 뚫린 것 마냥 비가 하염없이 내렸어요. 그 덕인지 일요일인 오늘은 하늘이 너무 맑습니다. 저도 쾌창한 날씨 속에서 글을 작성해보고자 카페로 나왔네요.
이번 주에 구독자님에게 들려 드릴 주제는 VMware에서 Host와 Guest간의 통신 데이터 훔처보기 인데요. 그럼 VMware는 뭐고, Host와 Guest가 뭔지, 또 이들간에 어떤 교류가 있는지 등 모든 것이 의문이 들거에요. 이와 관련한 내용들은 아래 차례로 풀어두었으니 재밌게 읽어주세요!
목차
1. VMware 란?
2. 가상머신 구조
3. Host와 Guest간의 통신 방법
4. Host와 Guest간의 통신 데이터 훔쳐보기
5. 끝으로
1. VMware란?
VMware는 가상화 기술을 제공하는 소프트웨어 회사로, 가상화 기술은 하드웨어 리소스를 가상으로 만들어 여러 개의 가상 환경을 동시에 운영할 수 있게 합니다. VMware의 주요 제품 중 하나는 VMware Workstation으로, 개인용 컴퓨터에서 여러 개의 가상 머신을 실행할 수 있도록 해줍니다. 또한, 기업용 환경에서는 VMware vSphere와 같은 제품을 사용하여 데이터 센터 가상화 및 클라우드 컴퓨팅을 구축할 수 있습니다.
2. 가상머신 구조
가상머신은 하나의 물리적 컴퓨터에서 독립적으로 실행되는 가상 환경입니다. 이를 가능하게 하는 가상화 소프트웨어는 호스트 컴퓨터에서 여러 개의 게스트 운영 체제를 동시에 실행할 수 있도록 해줍니다. 일반적으로, 가상머신은 가상 하드웨어 (CPU, RAM, 디스크)와 가상 디바이스 (네트워크 카드, 사운드 카드 등)로 구성됩니다. 호스트 운영 체제 위에 설치된 가상화 소프트웨어는 이러한 가상 환경을 관리하고, 각 가상 머신에 리소스를 할당하여 실행합니다.
키워드 간략 설명
- Host Machine: 가상환경을 구동하는 물리 머신을 뜻 함
- Guest Machine: 가상환경 위에서 실행되는 가상 운영체제를 뜻 함
- Virtual Device: Guest 환경 내부에 소프트웨어적으로 구현해 둔 디바이스(CPU, 네트워크, 디스플레이, 램 등)를 뜻함
3. Host와 Guest간의 통신 방법
호스트와 게스트 간의 통신은 다양한 방법으로 이루어질 수 있습니다. 첫 번째 방법은 호스트와 게스트 간의 네트워크를 설정하여 통신하는 것입니다. 이를 위해서는 가상 네트워크를 설정하고, 게스트 운영 체제에 IP 주소를 할당하여 호스트와 통신할 수 있도록 해야 합니다. 두 번째 방법은 공유 폴더를 설정하여 호스트와 게스트 간에 파일을 공유하는 것입니다. 이를 통해 호스트와 게스트 간에 파일을 쉽게 이동하고 공유할 수 있습니다. 마지막으로, 가상화 소프트웨어가 제공하는 특수한 기능을 사용하여 호스트와 게스트 간에 직접적으로 통신할 수도 있습니다.
앞서 설명한 3가지 밥법 중 '마지막'에 설명한 기능을 VMware상에서는 'Backdoor Channel'이라고 합니다. 이 인터페이스를 통해 게스트 머신은 호스트에 요청을 보내고 호스트 측에서 실행하는 등의 작업을 수행할 수 있습니다.
4. Host와 Guest 간의 통신 데이터 훔쳐보기
우선, VMware의 기본적인 기능 중 하나를 짚고 가겠습니다. VMware는 Guest에서 파일/텍스트 등을 복사하면 Host에 쉽게 붙여넣기를 할 수 있어요. 물론, 그 반대로 Host에서 복사하고 Guest에 쉽게 붙여넣기를 할 수도 있죠.
이 과정에서 Host와 Guest는 데이터를 메모리에 담아서 주고받게 되는데요. 이번 챕터에서는 복사+붙여넣기를 할 때마다 Memory Dump하여 출력하는 스크립트를 작성해보겠습니다.
댓글
의견을 남겨주세요