Security Practice Archive

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

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

categories 글 모아보기
Browse topics

주제별로 빠르게 이동

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

약 1분

[인프라진단] #U-09 계정이 존재하지 않는 GID 금지

반응형

1. 항목 설명

계정이나 운영 용도가 없는 그룹이 남아 있으면 해당 GID 소유 파일을 통해 의도하지 않은 권한이 부여되거나, 나중에 같은 GID가 재사용될 때 접근 권한이 잘못 승계될 수 있습니다.

판단 기준: 시스템 관리와 운용에 불필요한 그룹이 제거되어 있으면 양호, 계정과 사용 목적이 없는 불필요한 그룹이 존재하면 취약입니다.

2026 가이드 근거

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

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: 20260903-085839

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

4. 취약 상태 구성

구성원이 없고 어떤 계정의 기본 GID로도 사용되지 않는 실습 그룹 u09unused를 GID 5909로 생성했습니다.

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

구성 방법

sudo groupadd -g 5909 u09unused

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

getent group u09unused
awk -F: '$4 == 5909 {print $1, $4}' /etc/passwd

5. 최초진단 결과

  • 판정: 취약
  • VM 콘솔 판정 근거: u09unused:x:5909: 그룹은 존재하지만 이 GID를 기본 그룹으로 쓰는 계정이 0개였고 운영 목적도 없었습니다.

U-09 최초진단 현황 증적

6. 조치 방법

계정과 파일에서 GID가 사용되지 않음을 확인한 뒤 불필요한 실습 그룹을 삭제했습니다.

sudo groupdel u09unused
getent group u09unused || echo 'u09unused group: not found'

Linux 설정 확인 위치: /etc/group, /etc/gshadow, getent group 결과

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

7. 이행진단 결과

  • 판정: 양호
  • VM 콘솔 판정 근거: u09unused 그룹이 조회되지 않아 불필요 그룹 제거를 확인했습니다.

U-09 이행진단 현황 증적

8. 실무 주의사항

구성원이 비어 있다는 이유만으로 시스템 그룹을 삭제하면 안 됩니다. 패키지 예약 그룹이나 파일의 숫자 GID로만 사용되는 경우가 있기 때문입니다.

컨설턴트 조언

  • getent group으로 로컬과 외부 디렉터리 그룹을 모두 조회하고 사용 목적을 확인합니다.
  • 삭제 전에 해당 GID를 기본 그룹으로 쓰는 계정과 소유 파일·디렉터리를 숫자 GID 기준으로 찾습니다.
  • 패키지나 서비스가 예약한 시스템 그룹인지 패키지 DB와 서비스 설정을 대조합니다.
  • 즉시 삭제할 수 없는 그룹은 소유자와 용도, 예외 종료일을 등록하고 구성원 변경을 모니터링합니다.

9. 마무리

계정과 자산이 참조하지 않는 불필요 그룹은 사용 근거를 확인한 뒤 제거해야 합니다.

반응형