자격증/정보보안기사 - 25년도 1회차 필기,실기 준비중

[정보보안기사-시스템] UNIX/Linux (passwd 파일, group 파일, 패스워드 변경, 입출력 재지정, 파이프/파이프라인 기능, 특수/메타문자)

Nirsa 2025. 1. 5. 21:44
반응형

 

[정보보안기사-시스템] UNIX/Linux (passwd 파일, group 파일, 패스워드 변경, 입출력 재지정, 파이프/파이프라인 기능, 특수/메타문자)


 

A. passwd 파일

  1. 사용자 계정 정보를 저장하는 파일로써 구분자 : 를 기준으로 7개의 필드를 가짐
  2. 경로 : /etc/passwd
  3. 사용자 패스워드의 'x'는 'shadow 패스워드 정책'을 사용한다는 의미로써 패스워드를 설정하지 않았다는 것이 아님
    • /etc/shadow 파일에 암호화된 패스워드를 저장하는 방식
  4. 사용자ID(UID)는 시스템에서 사용자를 고유하게 식별하기 위한 ID
    • 같은 UUID가 서로 다른 계정에 설정될 수 있으며, 이 경우 시스템은 서로 다른 사용자 계정명을 사용하는 같은 사용자로 판단함
    • root 계정의 UID는 0으로 예약되어 있으며, 일반 사용자에게 UID를 0으로 부여하면 root 권한을 가지게 됨
    • 공격자가 root 권한을 탈취하기 위해 일반 사용자 계정의 UID를 0으로 조작하는 공격이 발생할 수 있으므로 주기적으로 부적절하게 UID가 0으로 설정된 계정이 있는지 점검해야 함
  5. 모든 사용자는 하나의 기본 그룹(Primary Group)에 필수적으로 속하며 필요 시 하나 이상의 보조 그룹(Secondary Group)에 속할 수 있음
    • 기본 그룹 : 사용자의 자원 생성 시 자원의 소유 그룹을 결정
    • 보조 그룹 : 기본 그룹 이외에 추가 그룹 권한 필요 시 다른 그룹에 소속될 수 있으며 이를 보조 그룹이라 함
  6. 설명 필드는 사용자 관련 기타 정보가 ㅅ러정됨
  7. 홈디렉토리 필드는 사용자가 로그인 후 위치할 홈 디렉토리(일반적으로 사용자별 홈 디렉토리가 존재)가 설정됨
  8. 로그인 쉘 필드는 사용자가 로그인 후 동학할 쉘 프로그램을 설정하며 기본적으로 bash가 설정됨
    • 쉘(Shell) : 사용자와 커널 간 인터페이스 역할을 하는 프로그램으로써 사용자가 입력한 명령어를 해석하여 커널에 전달하고 그 결과를 출력해줌
    • 필요 시 실행 파일을 설정하여 로그인 완료 후 실행 파일이 동작하게 할 수 있으며, 공격자는 이를 통해 사용자가 로그인 성공 시 악성 쉘이 실행되도록 설정하기도 하여 주기적으로 점검이 필요함

 

 

B. group 파일 및 사용자 패스워드 변경

  1. 그룹 정보를 저장하는 파일로써 구분자 : 를 기준으로 4개의 필드를 가짐
  2. 경로 : /etc/group
  3. id 명령어를 사용하여 사용자 ID 관련 정보(사용자 ID, 기본 그룹 및 보조 그룹 ID)를 확인할 수 있음
    • id 명령어는 Identifiecation의 약자
    • id : 현재 사용자의 ID 관련 정보 출력
    • id 계정명 : 해당 계정의 ID 관련 정보 출력
  4. passwd 명령어로 사용자의 패스워드를 변경할 수 있음
    • 일반 사용자는 자신의 패스워드만 변경이 가능하며, 슈퍼 유저(root)는 자신을 포함하여 모든 계정의 패스워드를 변경할 수 있음
    • passwd : 현재 사용자의 패스워드 변경
    • passwd 사용자명 : 해당 사용자의 패스워드 변경

 

 

C. 입출력 재지정(I/O Redirection) 기능

  1. 명령어를 실행하면 커널에 의해 프로세스가 생성되고 프로세스는 기본적인 입출력을 위한 3개의 파일을 오픈함
    • 표준 입력(STDIN, FD:0) : 키보드로부터 입력을 받기 위한 파일(통신 채널)
    • 표준 출력(STDOUT, FD:1) : 수행 중에 발생한 정상 메시지를 모니터(터미널 화면)로 출력하기 위한 파일(통신 채널)
    • 표준 에러(STRERR, FD:2) : 수행 중에 발생한 에러 메시지를 모니터(터미널 화면)로 출력하기 위한 파일(통신 채널)
  2. 입출력 재지정 기능은 프로세스의 표준 입력, 표준 출력, 표준 에러를 키보드나 모니터(터미널 화면)가 아닌 파일로 재지정하는 기능을 말함
  3. 입력 재지정(Input Redirection) : 표준 입력을 키보드가 아닌 파일에서 읽도록 재지정
  4. 출력 재지정(Output Redirection) : 표준 출력이나 표준 에러를 모니터(터미널 화면)가 아닌 파일로 저장하도록 재지정 
  5. 입력 문법은 아래와 같음
# id > id.dat - id 명령의 표준 출력을 'id.dat' 파일에 overwriter 모드로 재지정
- overwrite 모드(>) : 기존 파일의 내용을 지우고 새롭게 작성
- 파일 번호(FD) 미지정 시 표준 출력(1)을 의미함
# id 1 >> id.dat - id 명령의 표준 출력을 'id.dat' 파일에 append모드로 재지정
- append 모드 (>>) : 기존 파일 내용에 추가하여 작성
# id 2 > id.err - id 명령의 표준 에러를 'id.err' 파일에 overwriter모드로 재지정

 

 

D. 파이프(Pipe) 또는 파이프라인(Pipeline) 기능

  1. 프로세스 간 통신을 위한 기법의 하나로써 프로세스의 표준 출력을 다른 프로세스의 표준 입력으로 전달해주는 기능
  2. 명령어의 실행 결과(표준 출력)를 다른 명령어의 입력(표준 입력)으로 전달하여 처리하도록 하는 기능
# cat a.log | more - cat 명령 결과를 more 명령에 입력하여 화면 단위로 출력
- cat 명령 : 지정한 파일의 내용을 출력
- more 명령 : 파일 내용을 터미널 화면 크기 단위로 출력
# ps -ef | grep tomcat - ps -ef 명령 결과를 ghrep 명령에 입력하여 tomcat 문자열이 포함된 행만 출력
- ps -ef 명령 :  시스템 내 모든 프로세스 정보 출력
- grep  명령 : 지정한 패턴(문자열)이 일치하는 행만 출력

 

 

E. 특수 문자(메타 문자, Meta character)

쉘 명령에서 사전에 정의된 특별한 기능이 있는 문자를 쉘 특수 문자(메타 문자)라고 하며 사전에 정의된 기능으로 동작함

 

반응형