2026 주요정보통신기반시설 가이드/Unix(Linux)

[인프라진단] #U-67 로그 디렉터리 소유자 및 권한 설정

굥만둣국 2026. 9. 9. 10:24
반응형

1. 항목 설명

로그 파일의 소유자와 권한이 느슨하면 일반 사용자가 공격 흔적을 삭제·변조하거나 민감한 운영 정보를 읽을 수 있습니다.

판단 기준: 가이드 기준상 로그 파일이 root 소유이고 권한이 644 이하이면 양호, 아니면 취약입니다.

2026 가이드 근거

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

2. 점검 목적

로그를 관리자만 통제하게 하고 비인가 열람·변조를 방지하는 것이 목적입니다.

3. 실습 환경

  • 원본 최초진단 환경: Ubuntu 24.04.4 LTS
  • 원본 이행진단 환경: Ubuntu 24.04.4 LTS
  • 설정 화면 확인 환경: Ubuntu Server 24.04.4 LTS, Linux 6.8.0-138-generic
  • 가상화 환경: VMware Workstation
  • 호스트 이름: u-lab
  • 네트워크: VMware Host-only 격리망, 기본 게이트웨이 없음
  • 원본 진단 실행 ID: 20260903-094131
  • 원본 진단 수집일: 2026-09-03
  • 증적 화면 캡처일: 2026-09-09
  • 화면 수집 방식: VMware Ubuntu VM 콘솔 직접 캡처

최초진단과 이행진단 이미지는 2026-09-03에 실제 수집한 원본 결과를 VM 콘솔에서 열어 캡처했습니다. 원본 수집일과 화면 캡처일은 서로 다르며, 과거 결과를 오늘의 재진단 결과로 표시하지 않았습니다. 취약 상태 구성과 조치에는 격리된 관리 연결을 보조적으로 사용했습니다.

설정 확인 이미지는 캡처일의 VM에서 명령을 실행한 화면입니다. 실습 종료 후 서비스를 중지하거나 임시 설정을 제거한 항목은 당시 이행진단과 현재 상태가 다를 수 있습니다.

4. 취약 상태 구성

별도 통제 로그 /var/log/u67-lab/security.log를 일반 계정 소유 666으로 만들고 해당 계정의 실제 쓰기가 성공하는지 확인했습니다.

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

구성 방법

sudo install -d -o root -g root -m 0755 /var/log/u67-lab
sudo install -o codex -g codex -m 0666 /dev/null /var/log/u67-lab/security.log
sudo -u codex sh -c 'echo test >> /var/log/u67-lab/security.log'

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

sudo stat -c 'owner=%U group=%G mode=%a path=%n' /var/log/u67-lab/security.log

5. 최초진단 결과

  • 원본 진단 판정: 취약
  • 원본 진단 판정 근거: 파일이 codex:codex 666이고 일반 계정의 비인가 쓰기가 실제 성공했습니다.

U-67 최초진단 현황 증적

6. 조치 방법

파일 소유자를 root로 바꾸고 640으로 제한했습니다. 일반 계정 쓰기는 차단되고 승인된 관리자 기록과 rsyslog의 별도 상태 시험은 계속 성공하는지 확인했습니다.

sudo chown root:root /var/log/u67-lab/security.log
sudo chmod 0640 /var/log/u67-lab/security.log
sudo -u codex test -w /var/log/u67-lab/security.log && echo writable || echo blocked

Linux 설정 확인 위치: 통제 로그 파일의 소유자·권한과 비인가/인가 쓰기 시험

현재 화면에서는 통제 로그의 root:root 소유·640 권한과 일반 계정의 쓰기 권한 부재를 읽기 전용으로 확인했습니다. 실제 쓰기 차단·허용과 rsyslog 기록 시험은 2026-09-03 원본 기록이며 이번에 다시 파일에 기록한 것은 아닙니다.

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

7. 이행진단 결과

  • 원본 진단 판정: 양호
  • 원본 진단 판정 근거: root:root 640, 일반 사용자 쓰기 차단, 관리자 기록 성공과 rsyslog 상태 시험 성공을 확인했습니다.

U-67 이행진단 현황 증적

8. 실무 주의사항

Ubuntu의 일반 로그는 rsyslog가 syslog 계정으로 권한을 낮추므로 syslog:adm 0640이 정상 기본값일 수 있습니다. 가이드의 root 기준을 모든 파일에 강제하면 로깅이 중단될 수 있습니다.

컨설턴트 조언

  • 운영체제·로깅 데몬의 공식 권한 모델을 근거로 서비스 계정 예외를 문서화하고, 권한 변경 후 반드시 실제 로그 쓰기를 시험합니다.
  • 운영체제 기본 로깅 계정과 파일 생성 정책을 확인해 기록 중단을 유발하는 일괄 변경을 피합니다.
  • 로그 양, 보존 기간, 저장 공간과 중앙 전송 경로를 함께 설계하고 용량 경보를 설정합니다.
  • 문법 검사에 그치지 말고 시험 이벤트를 발생시켜 목적 파일과 중앙 수집지 도착을 확인합니다.

9. 마무리

이번 실습에서는 실제 최초·이행진단 기록과 VM 콘솔 캡처를 비교했습니다. 운영 환경에서도 변경 후 기능 시험과 정기 재점검을 함께 수행해야 합니다.

반응형