1월9일 - 침해사고대응 리눅스

djEjgrpgksmsrjwl·2025년 1월 9일

SK shieldus Rookies 23기

목록 보기
22/24

침해사고 리눅스

증거수집

메모리 덤프

Linux command 활용을 통한 휘발성 데이터 수집

공격 흔적 포인트 수집

물리적부분

이미지 덤프 physical dump

네트워크 덤프 ( 시간이 오래걸리고 끊김 )

마운트 디스크로 덤프 활용


Log Diles - ★User command history


리눅스 디렉토리 (페이지 5) 모두 중요, 기본 알 것
/ Root 모든 파일과 디렉토리는 /


윈도우와 리눅스의 차이점

파일시스템이 다름
윈도우 NTFS
리눅스 ext3,4 등

리눅스는
리눅스의 가장 큰 단점이 파일 생성시간이 존재하지 않음(ext4 이전)

LVM 여러 하드를 한개의 파일시스템으로 사용하거나 합쳐진 것을
다시 여러 개로 나누어 파일 시스템 구성이 가능하게 하는 기술

No registry 레지스트리가 존재하지 않음

텍스트 기반의 파일 데이터가 대대분
ex) 텍스트 편집기로만 분석이 가능해요


메모리 덤프

시스템메모리
가상메모리

DD는 디스크 덤프할때만 사용하고 있다

dd if=


fmem ( 이전 OS들 대상으로 하지만 필드에는 유물들이 많아서 알아야함 )

사용법


lime


Dump Image의 저장

[그림]분석 장치 디스크 접속 예제

네트워크 덤프는 어쩔수 없는 경우에만 진행


리눅스 덤프 블로그에 잘 나와있음 참고하여 실습해보자


네트워크 이미지 덤프
netcat
권장하지 않음.
netcat이 깔려있으면 악성으로 본다.


14페이지
네트워크 정보 수집 방법
휘발성 메모리 pc가 켜져 있을때만 수집 가능한 메모리
'>'
netstat -autup
루트킷 악성코드가 돌아가지 않는경우(루트킷에 네트워크 연결정보가 숨겨진 경우)를 제외하고 Network status를 확인 할 수 있음
수상한 port를 찾는다

호스트정보
arp -e -v
내부의 다른 시스템과 연결시 ip mac 주소가 남게됨
내부 다른 시스템과의 통신 여부를 확인할 수 있음

route -C
use 학목을 통해 사용 빈도 확인 가능

NIC 모드 확인
ifconfig


프로세스 정보 확인

프로세스 리스트
ps axf

프로세스 디렉토리
ls -alR proc
ls -alR /
=> 서버 리소스가 튈 수도 있음. ( 공격 당한 서버지만 실 사용서버임 ) 고객들에게 안내 하고 할것

ps -ef

ps axfc
부모프로세스까지 쭉 확인

ls -al
프로세스 넘버
/proc
해당 파일을 실행한 프로세스 까지 확인

lsof -l -n -P

lsof


lsmod

modinfo

module도 정상적인 module name으로 로드 된 경우가 많음
정상적인 module의 경우 대부분 /lib/module/[kernel_version] 하위 directory에 존재함


스케쥴을 걸어서 특정 명령을 실행 하는 경우
키 로거 ( 키보드 치는거 다 로그로 기록됨 ) 를 계속 공격자가 가져가는 경우도 있음

crontab command

crontab -l

★crontab 구조 ( 자격증 시험에도 많이 나온다 )


27페이지
Temporary Directory


Log Files

Log files의 위치는 일반적으로 동일하나 (/var/log) 배포 버전이나 관리자 임의에 의해 저장 위치가 상이 할 수 있음

★ User Command History ( 배쉬 히스토리 )
루트 계정으로 친 명령어들이 기록됨

29페이지 Log Files의 비활성 영역부분

30페이지 Log Files 각 설명


31페이지 시간 정보 삽입 및 확인 방법
format 적용 시 Command History 명령어에 사용 시간도 같이 기록 됨


Message Log 메세지 로그

Authentication Log 인증로그


wtmp, btmp
바이너리 형태로 저장
역순으로 위에가 최근 아래가 오래된것


usb 감염사례
물리적 접근 필요
내부자 소행 가능성이 매우 높다
Ubuntu 경우
/var/log/kern.log 에서 확인 가능
CentOS


Linux MAC Time ( 윈도우와 다름 )

atime
access time

mtime
modify time

ctime
change time


37페이지

리눅스 파일시스템 ext4 이전인 ext3,2 는 생성time이 없음

명령어 에 따른 MAC time 업데이트
mv
cp
touch
redirection
changing owner


시간 베이스 검색 방법

find 와 ls 이용

40페이지 - 아주 중요한 명령어 find


트랜드를 많이 볼수 있는 또는 공부 참고

취약점 정보 - https://www.bleepingcomputer.com/

사이버 보안 동향 - https://www.ncsc.go.kr:4018/PageLink.do

공부할때 - kaspersky.com

프로젝트 할 때 - chrome-extension://efaidnbmnnnibpcajpcglclefindmkaj/https://www.skshieldus.com/download/files/download.do?o_fname=%5BSK%EC%89%B4%EB%8D%94%EC%8A%A4%5D%20Top-CERT%20Trend%20Report%20-%20Ivanti%20VPN%20%EC%B7%A8%EC%95%BD%EC%A0%90%20%EA%B3%B5%EA%B2%A9%20%EB%8F%99%ED%96%A5%20%EB%B0%8F%20%EB%8C%80%EC%9D%91%EB%B0%A9%EC%95%88.pdf&r_fname=20240911181024338.pdf
└>Ivanti VPN 취약점

조사(로그인 해야 더 자세히 무료) - https://www.criminalip.io/ko
,
https://www.virustotal.com

AD

AD 크리덴셜

AD가 공격 당하면 매우 크리티컬함

NDR

WMI

FRPC


41페이지
침해사고 조사 또는 시스템 점검 시 리눅스시스템에서 확인해야 할 파일
시험에서 무조건 나오는 부분
/etc/passwd
/etc/shadow


Startup Script
부팅 시 기본 설정된 run level directory 확인
S start
/etc/rc*
/etc/rc5.d


Startup Script
Point
etc/xinetd.d에 각 서비스에 대한 설정 파일이 존재

rhosts


/etc/hosts

/etc/resolv/conf


RootKit
탐지를 피하기 위해 사용 되는 프로그램의 종류
현상
탐지 방법 - chkrootkit , rkhunter , ..
=> 고객사 서버에 설치해야하는데 쉽지 않음. ( 위급하고 중요한 경우 한정적으로 설치해서 확인 )

chkrootkit , rkhunter 둘의 차이가 있어 점검시 둘다 사용

strace -f -p [비정상 PID]


50페이지
Volatility
휘발성
오픈 소스 툴로 CLI로 설치하여 사용하는 방법
Volatility GUI 검색하면 나옴

메모리단 검사하는 것이며 CLI, GUI로 확인 가능하다


54페이지
Volatility Plug-in


File System Recovery
Ext2 는 Debugfs 툴로 복구 가능

Ext3, Ext4 Journaling Transaction 기법을 사용하여 파일을 관리함
저널링 기법을 이용하여 복구함

Ext3 파일 시스템은 ext3grep 툴로 복구 가능

Ext4 파일 시스템은 extundelete 툴로 복구 가능

profile
sunseonghwan

0개의 댓글