네트워크

리눅스 KVM 실행 중인지 확인 과정

GEELL 2026. 1. 8. 11:32
728x90
반응형
SMALL

왜 KVM 설정을 확인했나?


상황 정리

PNOS는 Linux 기반 커널이다.

취약점 설명에 KVM / 가상화 기능이 전제 조건으로 등장한다.

보안 점검에서는 항상 이런 질문을 한다.

“리눅스면, 그 기능도 있는 거 아니냐?”

그래서 해야 할 일은 하나다.

“PNOS 커널에 KVM 가상화 기능이 실제로 포함되어 있냐?”

왜 ‘커널 설정’을 확인해야 하나?


Linux에서 기능은 다음 3단계로 나뉜다.

단계 / 의미
① CPU 지원 / 하드웨어가 가능한가
② 커널 설정 / 커널에 기능을 포함했는가
③ 실행 상태 / 실제로 사용 중인가

취약점은 ②번이 있어야만 발생 가능하다.

그래서 우리는
“커널에 KVM 기능이 포함되어 있는지”를 확인했다.

/proc/config.gz 는 무엇인가?

쉽게 말하면
“현재 PNOS가 사용하는 리눅스 커널을 만들 때 선택한 설정표”다.

커널을 빌드할 때 수천 개 옵션을 선택한다.
그 최종 결과를 실행 중인 커널이 그대로 가지고 있다.

그 파일이 /proc/config.gz 다.

이 파일을 보면
어떤 기능이 들어 있고
어떤 기능이 아예 빠졌는지를 정확히 알 수 있다.



왜 zcat 을 사용했나?

/proc/config.gz 는 압축된 파일(.gz)이다.

그래서

zcat /proc/config.gz는

“압축을 풀어서 내용 전체를 보여달라”는 의미다.



왜 grep 을 같이 사용했나?

커널 설정은 수만 줄이다.
전부 보는 건 의미가 없다.

그래서

grep KVM을 사용해서

“KVM 관련된 줄만 골라서 보자”는 목적이다.



각 명령어를 왜 썼는지 설명

HAVE_KVM 확인

zcat /proc/config.gz | grep HAVE_KVM

목적
CPU가 KVM을 지원할 수 있는 구조인지 확인

결과
CONFIG_HAVE_KVM=y

의미
하드웨어 수준에서는 KVM 사용이 가능함

아직 기능이 포함되었다는 뜻은 아니다.



KVM 기능 자체 확인

zcat /proc/config.gz | grep "CONFIG_KVM="

목적
KVM 기능이 커널에 실제로 포함되어 있는지 확인

결과
출력 없음

의미
KVM 기능이 커널에 포함되지 않음



가상화 전체 기능 확인

zcat /proc/config.gz | grep CONFIG_VIRTUALIZATION

목적
KVM은 가상화 기능의 일부이므로
상위 옵션이 켜져 있는지 확인

결과

CONFIG_VIRTUALIZATION is not set

의미
가상화 기능 전체가 커널에서 제외됨

이 과정을 한 줄로 요약하면

PNOS가 리눅스 기반이라 가상화 기능이 있을 가능성을 배제하지 않고,
커널 설정 파일을 직접 확인해
가상화 기능 포함 여부를 검증했다.



왜 이게 보안 점검에서 인정되는가?

보안 점검에서 근거의 신뢰도는 다음 순서다.

추측

관리 메뉴 설정

커널 설정 확인

/proc/config.gz 확인은 최상위 근거다.
제조사 설명보다 강한 증빙이 된다.



최종 결론

PNOS는 Linux 기반이다.
CPU는 가상화 기능을 지원할 수 있다.

하지만
가상화 옵션이 없고
KVM 기능도 없다.

따라서
해당 취약점이 발생할 구조 자체가 없다.

728x90
반응형
LIST