Mac Forensics

[Mac Forensics] Command Line 기반 조사 방법

도깬리 2023. 9. 26. 04:28

안녕하세요. 도깬리 포렌식스 입니다.

오늘은 Mac에서 명령어 기반 조사방법을 알아 봅시다. 모두 화이팅하세요!!!

 

장점

- Additional Options 제공

일부 옵션은 Command line에서만 가능한 것도 있습니다.

일부 어플리케이션은 Command line에서 추가적인 옵션을 제공하기도 합니다. (: Disk Utilities, Spotlight)

- Finder Limitations 보완

GUI Finder는 전체 파일시스템에 대한 사용자의 접근을 제한합니다.

GUI Finder에서는 숨겨진 파일이 보이지 않으나, Command Line Finder에서는 볼 수 있습니다.

- Root (sudo) 접근

Sudo 명령어를 통해서 System user 또는 Root가 될 수 있습니다.

- Scripts 활용

반복적인 작업은 Scripts로 만들어 자동화 할 수 있습니다.

 

command line 접근방법

- Shell

Command line interface(shell)이라고 부릅니다.

기본 쉘은 bash 쉘입니다.

- Terminal Application

 

Command Line Inspector and other options

 

 

Command Line Basics

 

 

Command String

- Command Name (= Applications)

CommandApplications와 같은 의미입니다.

- Command Options (= Flags)

'- ' 로 시작됩니다.

- Arguments

명령어와 옵션 다음에 위치합니다.

목적이 되는 파일이나 폴더의 경로를 입력합니다.

- Extras

명령어의 기능을 확장하는데 이용됩니다.

) 명령의 결과를 redirecting 하거나 다른 명령어를 포함하는 것

 

 

자주 사용하는 Commands

ls alF

숨겨진 파일 까지 파일 목록을 보여줍니다.

cd

디렉토리를 변경합니다.

pwd

Present Working Directory 현재의 위치를 보여줍니다.

man command

명령어에 대한 매뉴얼을 보여줍니다.

cp

파일을 복사합니다.

rm

파일을 삭제합니다.

mkdir

디렉토리를 생성합니다.

rmdir

디렉토리를 삭제합니다.

<Control> + z

현재의 프로세스를 중지시킵니다.

cat

파일을 읽고 표준 출력으로 보여줍니다.

less

긴 텍스트 파일을 읽습니다.

which

지정된 명령어에 대한 파일의 경로를 보여줍니다.

file

파일의 유형을 결정합니다.

netstat

네트워크 정보를 보여줍니다.

ps ax

실행중인 프로세스 정보를 보여줍니다.

 

특수문자

\ Backslash는 경로나 파일이름 안의 공백 앞에 사용됩니다.

) $ cd /User/smlee/Desktop/Important\ Files

예외적으로    안에서 이름 중간에 공백은 허용됩니다.

) $ cd /User/smlee/Desktop/Important Files

 

 

Recursive Commands

특정 디렉토리에서 부터 모든 폴더 안에 포함된 모든 항목에 대하여 명령을 수행하도록 하는 것을 말합니다.

로컬 시스템의 사용자 디렉토리 안에 있는 파일의 모든 목록을 보여줄려면 다음과 같이 명령어 수행합니다.

ls alF /Users

사용자 디렉토리 뿐만 아니라 그 하위의 모든 디렉토리까지 그 안에 포함되어 있는 파일에 대한 모든 목록을 보여주기 위해서는 다음과 같이 Recursive List 명령어를 사용하여야 합니다.

ls RalF /Users

이렇게 하면 하위의 모든 개체, 숨긴 개체까지도 모두 보여주게 됩니다.

 

 

다른 볼륨으로 이동하기

cd 명령어를 이용하면 사용자는 다른 디렉토리로 이동할 수 있습니다.

pwd 명령어(Present Working Directory)는 자신의 위치를 기억하는데 용이한 명령어입니다.

 

 

SUDO (Root User)

sudo 붙은 명령어는 해당 명령어에 Root 계정 수준의 접근권한을 갖게 합니다.

sudo는 관리자 계정에서 실행되어야 하므로 인증을 필요로 합니다.

sudo s

Root 수준의 접근권한으로 명령어 라인 쉘을 엽니다.

system.log 파일에 모든 sudo 사용량이 기록됩니다.

 

 

Tips & Tricks

- Tab completion

경로 이름, 파일 이름과 명령어를 자동으로 완성합니다.

- Drag & Drop

폴더와 파일을 명령어 라인 쉘로 드래그할 수 있고, 관련된 파일 경로가 보이게 할 수 있습니다.

- Open 명령어

Command Line을 이용하여 Finder에서 디렉토리를 엽니다

- Clear 명령어

Command 쉘을 지우고 정리합니다.

- Control C

프롬프트를 지웁니다.

- Arrow Keys

Up & Down은 이전에 사용하였던 명령어를 스크롤링하거나 재사용하게 합니다.

left & right는 편집을 허용하는데 이용됩니다.

 

 

 

감사합니다. 오늘도 즐거운 하루 되세요.

"좋아요"와 "구독하기"는 힘이 됩니다.

참고문서 : MAC Forensics Training Event 2016 (IACIS)