Security Practice Archive

보안 점검과 설정을
기록합니다.

시스템, 클라우드 등 다양한 환경에서 확인한 점검 기준과 설정 과정, 검증 결과를 정리합니다.

categories 글 모아보기
Browse topics

주제별로 빠르게 이동

카테고리를 선택해 관련 글을 모아볼 수 있습니다.

약 1분

[인프라진단] #U-19 /etc/hosts 파일 소유자 및 권한 설정

반응형

1. 항목 설명

/etc/hosts는 DNS보다 먼저 참조될 수 있는 로컬 이름 해석 파일입니다. 비인가자가 수정하면 정상 도메인을 악성 주소로 바꾸거나 내부 서비스 연결을 가로챌 수 있습니다.

판단 기준: /etc/hosts 소유자가 root이고 권한이 644 이하이면 양호, 소유자가 root가 아니거나 권한이 더 넓으면 취약입니다.

2026 가이드 근거

출처: 과학기술정보통신부·한국인터넷진흥원, 「2026 주요정보통신기반시설 기술적 취약점 분석·평가 방법 상세가이드」, U-19, p.45. 본 게시글은 위 가이드의 판단 기준을 참고하여 작성했으며, 진단 결과와 증적은 개인 실습 환경에서 직접 수집했습니다.

2. 점검 목적

로컬 이름 해석 정보를 관리자만 변경하게 하여 통신 우회, 서비스 장애와 내부 주소 변조를 방지하는 것이 목적입니다.

3. 실습 환경

  • 운영체제: Ubuntu Server 24.04.2 LTS
  • 커널: Linux 6.8.0-53-generic
  • 가상화 환경: VMware Workstation
  • 호스트 이름: u-lab
  • 수집 방식: VMware Ubuntu VM 콘솔에서 진단 명령 실행 및 화면 캡처
  • 네트워크: VMware Host-only 격리망, 기본 게이트웨이 없음
  • 실행 ID: 20260904-140603

취약 상태와 조치 상태의 반복 구성에는 격리된 Host-only 관리 연결을 보조적으로 사용했습니다. 단, 판단 명령과 결과는 Ubuntu VM 콘솔에서 직접 확인하고 VMware 콘솔 원본 화면으로 캡처했으며 외부 네트워크 경로는 두지 않았습니다.

4. 취약 상태 구성

/etc/hosts의 소유자를 실습 계정으로 바꾸고 권한을 666으로 넓혔습니다. 파일 내용은 변경하지 않고 메타데이터만 취약하게 구성했습니다.

이 구성은 인터넷과 분리된 실습 VM에서 관리자 권한으로만 수행했습니다.

구성 방법

sudo chown codex:codex /etc/hosts
sudo chmod 0666 /etc/hosts

구성 후 다음 명령으로 실제 상태를 확인했습니다.

stat -c '%n owner=%U group=%G mode=%a' /etc/hosts

5. 최초진단 결과

  • 판정: 취약
  • VM 콘솔 판정 근거: /etc/hosts owner=codex group=codex mode=666으로 일반 사용자가 내용을 변조할 수 있었습니다.

U-19 최초진단 현황 증적

6. 조치 방법

소유자를 root:root, 권한을 644로 복구하고 이름 해석 파일의 기존 내용은 그대로 유지했습니다.

sudo chown root:root /etc/hosts
sudo chmod 0644 /etc/hosts
getent hosts localhost

Linux 설정 확인 위치: /etc/hosts의 소유자·권한·ACL과 구성 관리 원본

U-19 Linux 설정 확인 화면 증적

7. 이행진단 결과

  • 판정: 양호
  • VM 콘솔 판정 근거: /etc/hosts가 root:root, 모드 644로 확인되었습니다.

U-19 이행진단 현황 증적

8. 실무 주의사항

권한만 고칠 때 파일 내용을 덮어쓰면 내부 서비스 이름 해석이 중단될 수 있습니다. cloud-init이나 구성 관리가 파일을 다시 생성하는지도 확인해야 합니다.

컨설턴트 조언

  • 권한 변경 전 현재 내용과 이름 해석 우선순위, 내부 서비스 의존성을 확인합니다.
  • 승인되지 않은 외부 IP, 중복 호스트명과 보안 장비 우회 항목이 없는지도 별도로 검토합니다.
  • cloud-init, DHCP 스크립트와 구성 관리 도구가 소유권이나 내용을 재작성하는지 추적합니다.
  • 변경 후 주요 호스트명과 서비스 엔드포인트를 getent hosts로 확인하고 업무 연결을 시험합니다.

9. 마무리

/etc/hosts는 root 소유 644 이하로 보호하고 내용 무결성과 자동 재생성 경로까지 관리해야 합니다.

반응형