본문 바로가기
디지털 포렌식

디지털 포렌식 5

by 윤라경 2024. 10. 23.

[2024.10.23]

 

01. 주기적으로 실행되는 파일 확인

 

# crontab -l

 

 

설정하지 않으면 이 상태로 출력된다

 

 

02. 현재 통신 중인 서비스 확인

 

# netstat -an

# netstat -antp

 

 

LISTEN은 포트를 열고 통신을 기다리는 상태,

ESTABLISHED는 연결되어 통신 중인 상태를 뜻한다

 

 

03. 파일의 무결성 확인

 

# rpm -V 서비스/패키지명

# rpm -V vsftpd

S.5....T.  c /etc/vsftpd/vsftpd.conf

 

 

임의로 환경 설정 파일을 수정한다

 

 

파일의 변동이 있을 때는 나타나지 않지만

파일을 수정하고 나서 비트 수가 추가되면 해당 파일이 나오게 된다

 

 

04. 현재 실행 중인 프로세스 확인

 

# ps -aux

# top

# pstree

 

 

httpd를 활성화시키고 ps 명령어와 -aux 옵션을 통해

실행 중인 프로세스를 모두 출력한다 

 

 

활성화 후 올라온 데이터들이 휘발성 데이터일 수도 있다

 

 

실시간으로 사용 중인 프로세스들을 top 명령어로 확인할 수도 있다

cpu의 사용량을 볼 때 top 명령어를 주로 사용한다

 

 

리눅스에서 가장 중요한 시스템에 systemd다

현재 실행 중인 프로세스를 트리 구조로 확인할 때 pstree를 사용한다

 

 

arp 명령어의 경우 ARP(주소 해석 프로토콜) 캐시를 확인하는 명령어다

 

 

nslookup의 경우 특정 사이트의 DNS를 확인할 때 사용한다

 

 

파일 하나를 생성하여 내용 수정 전과 후의 해시 값도 확인할 수 있으며

 

 

sha256sum과 sha512sum으로 각각의 파일이나 데이터의 해시 값을 생성할 수 있다

 

 

nmap으로 50번 서버의 열려 있는 포트도 확인할 수 있다 

 

 

현재 250번 서버인 kali linux에서 ftp를 실행하고

 

 

50번 서버인 rocky linux에서 ps를 실행했을 때

현재 vsftpd로 보이는 줄에서 ftp가 실행 중인 것을 알 수 있다 

 

 

이 명령은 지정된 IP 주소의 80번 포트에 대한 스텔스 스캔을 실행하여,

해당 포트가 열려 있는지(또는 닫혀 있는지) 확인한다

 

 

현재 알 수 있는 것은 [FIN, PSH, URG]은 패킷에 설정된 TCP 플래그다

 

<요약>

 

FIN: 연결을 종료하고 싶다는 뜻입니다.

PSH: 수신 측에 데이터가 즉시 처리되어야 한다는 뜻입니다.

URG: 긴급 데이터가 포함되어 있다는 뜻입니다.

 

결론적으로 이 패킷은 TCP 스텔스 스캔에서 보내진 것으로,

여러 플래그(FIN, PSH, URG)가 설정되어 있다

이는 목표 시스템이 특정 응답을 통해

해당 포트가 열려 있는지 또는 닫혀 있는지를 확인하기 위한 것이다

 

 

 

nmap -sU 명령어는 Nmap을 사용하여 UDP 스캔을 수행하는 옵션이다

 

 

실행 후 파일을 저장하고 Wireshark로 다시 확인하는 과정이다

포트가 열려 있을 때는 무응답, 닫혀 있을 때는 UDP는 ICMP를 패킷 정보를 알 수 있다

 

 

-O 옵션의 경우 운영 체제를 확인하는 옵션이다

 

 

05. 포트 오픈 여부 확인

 

# nmap -sT 192.168.217.100

 

 

06. 특정 사용자의 열린 파일 출력

 

#lsof -u test

 

 

특정 사용자의 열린 파일을 출력하기 위해

임의로 test 계정으로 로그인한다

 

 

그런 다음 file1을 실행하면 결과 값이 출력된다

 

 

현재 lsof -u test 명령어를 이용해 확인 시

마지막 줄에서 file1이 열려 있다는 걸 알려 주는 표시가 나타난다 

 

 

07. 특정 파일을 사용하는 프로세스 출력

 

# lsof /etc/httpd/logs/access_log

 

 

특정 파일만 사용하는 프로세스도 출력이 가능하다

현재 열려 있는 파일 중에서 httpd의 access_log 파일을 확인하면

아래와 같이 열려 있는 파일이라는 것을 알 수 있다 

 

 

이번에는 test 계정으로의 로그인 없이 root 디렉터리에서 file1을 바로 실행한다

 

 

위치가 home 디렉터리에 있을 때는 출력이 되지 않지만,

root 디렉터리로 이동 후 home 디렉터리를 지정하면 열려 있는 파일이 나온다 

 

 

이번에는 home 디렉터리가 아닌 d1 디렉터리로 이동 후

 

 

file1을 열어 놓는다

 

 

그렇게 되면 타입이 디렉터리를 지정하고 있는 것을 확인할 수 있다

 

 

09. 특정 프로그램(프로세스)가 사용하는 포트

 

# lsof -i TCP:22

# lsof -i TCP:10-80

 

 

ps 명령어를 사용해도 되지만 lsof 명령어가

더 간결하게 나오는 것을 확인하기 위해 먼저 실행시켰다

 

 

바로 이어서 lsof로 특정 포트를 지정하면

이런 식으로 한눈에 알아보기 쉽게 나타난다

 

 

스코프도 지정할 수 있다

하지만 되도록이면 모의 해킹에서는 자동화를 사용하지 않는 게 좋다

왜냐하면 시스템에 부하를 주기 때문에 단일로 사용하는 쪽이 좋다

 

 

10. IPv4/IPv6만 출력

 

# lsof -i 4

# lsof -i 6

 

 

IPv4에서 사용하는 포트 출력

 

 

IPv6에서 사용하는 포트 출력

 

 

11. 특정 프로토콜만 출력

 

# lsof -i TCP

# lsof -i UDP

 

 

TCP 사용 프로토콜 출력

 

 

UCP 사용 프로토콜 출력

 

 

다음으로 tcpdump를 실행 후에 ftp를 실행하면 왼쪽 화면과 같이 탐지하게 된다

 

 

탐지 내용을 확인하기 위해 따로 파일로 저장하는 명령을 사용하여 실행한다

 

 

이번에도 ftp를 접속하여 기록을 남기고 종료한다

 

 

이번에는 -w 옵션을 넣어 두 번째 파일로 저장한다

-w 옵션의 경우 텍스트 표준 출력을 진행한다

 

 

파일 목록을 살펴보면 저장한 파일들이 나와 있다

 

 

왼쪽은 처음 저장한 tcpdump 파일로 해시 값으로 출력되어 나온다

오른쪽이 경우는 -w 옵션을 지정해 텍스트로의 표준 출력을 진행하기 때문에 화면과 같이 나온다

 

 

이번에도 세 번째 파일로 실행하고

 

 

이전과는 다르게 ssh로 접속 후 종료한다

 

 

방금 저장한 세 번째 ssh 탐지 파일을 확인하면 모두 암호화 되어 있다

ssh는 암호화된 프로토콜로 네트워크를 통해

안전하게 통신할 수 있도록 설계된 프로토콜이기 때문에

현재의 화면과 같이 확인할 수 없도록 모두 암호화 설정되어 있다

 

 

12. 특정 사용자가 사용한 명령어 출력

 

# history

# vi /home/test/.bash_history

 

 

history는 비휘발성으로 완전히 삭제되는 메모리가 아니다

 

 

하지만 일반 root 디렉터리에서 파일을 확인하려고 하면

공개적으로는 보이지 않는다

 

 

하지만 -al을 통해 숨김 파일까지 모두 확인하게 되면 .bash_history라는 파일이 존재한다

 

 

.bash_history 파일을 확인할 경우 내가 사용했던 history 목록이 확인된다

이처럼 history의 경우 비휘발성으로 공개적이 아닌 숨김 파일에 저장된다

 

 

 

강의 소감

이번 강의 시간에는 주로 파일과 프로세스의 상태를 확인했다

실행 중인 프로세스의 확인 및 CPU 사용량을 알아보기도 하고,

열린 파일의 상태와 nmap과 프로토콜 로그인 시도를 통해

실행 중인 프로세스를 확인하는 과정도 거치게 되었다

특정 프로토콜, 프로그램이 사용하는 포트도 확인할 수 있었고

마지막으로는 history로 저장되는 위치까지 알아내는 수업이 진행되었다

 

'디지털 포렌식' 카테고리의 다른 글

디지털 포렌식 7  (2) 2024.10.25
디지털 포렌식 6  (0) 2024.10.24
디지털 포렌식 4  (0) 2024.10.23
디지털 포렌식 3  (0) 2024.10.23
디지털 포렌식 2  (0) 2024.10.18