본문 바로가기

4-1. 2025-1 심화 스터디/디지털 포렌식

[2025.03.22] 포렌시크_2주차_활동

1, 2주차는 다음의 강의에서 섹션1 ~ 섹션3 (Volatility Cridex 풀이 (2)) 의 내용 정리를 하였다.

https://inf.run/CSuFJ

 

[지금 무료]기초부터 따라하는 디지털포렌식 강의 | 훈지손 - 인프런

훈지손 | , 초보자 눈높이에 딱 맞춘, 원리를 이해하는 디지털포렌식 입문!  디지털 포렌식, 어떻게 시작할지 모르겠다면? 🕵️‍♂️ [사진] 정보보안, 법과학, 컴퓨터 범죄에 관심이 있다면

www.inflearn.com


디지털 포렌식

컴퓨터 범죄와 관련하여 디지털 장치에서 발견되는 자료를 복구하고 조사하는 법과학의 한 분야

 

▷침해사고대응

실시간, 사태파악 및 수습, 엄격한 입증 필요 X

 

▷증거추출

사후조사, 범죄 증거 수집, 엄격한 입증 필요 O

 

디지털 포렌식의 대상

디스크 포렌식 → 컴퓨터 디스크(윈도우, 리눅스)

메모리 포렌식 → 컴퓨터 메모리(RAM)

네트워크 포렌식 → 네트워크 패킷, 네트워크 장비 로그, 네트워크 관련 설정들

모바일 포렌식 → 모바일 디바이스(저장소, 메모리)/IoT 디바이스

기타 → 데이터베이스 포렌식, 암호 포렌식, 회계 포렌식, 소스코드 포렌식

 

-실습-

다운로드할 프로그램
HxD:
바이트를 보기 편하게함.
Everything:
파일 검색을 용이.
7-zip:
압축 파일(7z, rar...)들을 압축해제.
Notepad++:
로그 파일 등을 한번에 열기, 검색.
Sysinternal suite: string, procexcp
등 도구 사용.
Ftk-imager:
디스크 이미지 관리.
Autopsy:
디스크 이미지 관리 + 추가적 기능.

기법
디스크 이미징: 드라이브를 파일로 만듬.
디스크 마운트: 파일을 드라이브로 만듬.
메모리 덤프: 메모리를 사진 찍듯이 사진으로 가져옴. (찌꺼기 데이터가 많음)


침해사고 대응기법 -> 메모리 포렌식
메모리: 프로그램이 올라갈 수 있는 공간

도구
Volatility
Windows terminal

시스템 환경변수 설정
시스템 환경 변수 편집 -> 환경 변수 -> Path -> 새로 만들기

문제 다운로드
1. Volatility wiki - Memory Samples
2. Ctf-d.com - GreCON 2015

-Volatility
Volatility -f <
이미지> imageinfo
imageinfo:
이미지에 대한 제안.

프로세스
Volatility -f <
파일> --profile=WinXPSP2x86 pslist ( > pslist.log)
pslist:
시간 순서대로 프로세스들의 리스트를 출력.
(.log:
출력값을 텍스트로 나타냄)

# = Volatility -f <
파일> --profile=WinXPSP2x86 [psscan > psscan.log]
([ ]:
임의로 밑의 명령어 삽입)
psscan:
숨김 프로세스를 볼 수 있음.
pstree: PID, PPID
를 구조화해서 볼 수 있음.
psxview: pslist, psscan
을 한눈에 볼 수 있음.

---.exe
인터넷 검색시 프로세스의 역할을 확일 할 수 있음.
(svchost.exe
악성코드의 위장이 잦음.)

커맨드
cmdline:
프로세스가 실행될때 인자값.
cmdscan: cmd.exe
가 실행한 명령을 나열.
consoles:
명령이 성공했는지 안했는지 확인.

filescan:
메모리 내에 존재하는 머든 파일에 대한 정보. (Control + F 로 의심되는 파일 찾기)

e.g.)
이하 의심되는 파일 reder_sl.exe

mkdir files
로 파일 생성
# dumpfiles -Q (reder_sl.exe
offset) -D ./files/ -n
dumpfiles; reder_sl.exe
추출.
VirusTotal:
여러 개의 백신으로 악성 코드인지 분석해주는 사이트.

네트워크 정보
connections:
연결된 TCP 통신 출력 명령어.
Local address:
분석하려는 컴퓨터의 로컬 주소.
Remote address:
원격지 주소.
PID:
통신 프로세스.

# memdump -p 1640 -D ./dumps/
memdump:
프로세스의 메모리 덤프.

Strings ./dump/1640.dump > strings 1640.log
(Strings
환경변수 설정해야함)
ip
주소를 찾을 수 있음.

# procdump -p 1640 -D ./dumps/
procdump:
실제로 실행되었던 exe (dumpfile: 경로 아래에 존재하는 exe, 보통은 둘다 같음.)

시나리오
reder_sl.exe ->
취약점 -> 악성 url로 접속 -> 은행 관련 피싱