본문 바로가기

디지털포렌식

(19)
stuxnet - 메모리 포렌식 ※ stuxnet : 산업 시설을 감시하고 파괴하는 악성 소프트웨어 pstree로 프로세스의 관계를 확인한다. 해당 이미지는 윈도우 XP이므로 isass.exe가 winlogin.exe(624) -> services.exe(668) -> lsass.exe 순서대로 생성된다. 그런데 부모 프로세스(PPID)가 다른 lsass.exe가 존재한다. 해당 프로세스만 실행 시간이 다른 것도 의심되므로 관련 프로세스들의 DLL을 확인한다. # volatility -f MemoryForensic1.vmem dlllist -p 1928,868,680 추측했던 것과 다른 lsass.exe에서 "KERNEL32.DLL.ASLR.0360b7ab" 라는 수상한 dll이 발견되었다. ASLR은 메모리 주소를 동적으로 바꾸는 기..
Volatility 도구를 이용한 메모리 포렌식 ி Volatility 설치 Kali에서 진행한다. # apt-get install volatility # apt-get install python-pip # pip install distorm3 pycrypto openpyxl Pillow 설치 후 도구 실행 시 아래 오류가 발생하는 경우 ex) ... procdump --dump-dir=./ ி 실습 ➽ Paging 윈도우에서 메모리 용량의 한계를 극복하기 위해 pagefile.sys 파일을 임시 메모리 공간으로 사용한다. 쓰지 않는 메모리는 이 파일에 저장해두었다가 필요하면 다시 파일을 읽어 RAM으로 호출한다. 이를 page swap이라고도 하는데 메모리 포렌식 할 때 위처럼 문제를 일으키기도 한다. 실행 파일 추출이 실패하였으니 code inje..
손상된 파일시스템 복구 실습 FAT32 파일 시스템 구조 : https://jdh5202.tistory.com/655 디스크 이미지를 열어보니 파티션2부터 시작한다. 파티션1을 복구해보자. HxD로 이미지를 열어보니 MBR이 비어있고 NTFS 파티션 영역만 남아있다. 정상적인 이미지의 MBR을 가져와서 덮어쓴 후 파티션 테이블의 정보를 작성하도록 한다. 우선 첫 번째 파티션의 파일 시스템을 알아내기 위해 NTFS와 MSDOS 혹은 FAT32라는 키워드로 검색해본다. 128섹터에 Fat32 파일 시스템이 검색되었다. 정상적인 BR이라면 해당 섹터로부터 6 섹터 뒤에 BR 백업본도 존재할 것이다. 이제 FAT에 해당하는 파티션 기본 항목을 채우고 아래 결과를 반영한다. 2번 파티션의 시작 섹터 = 80 90 01( 10진수로 10252..
디지털 포렌식 - 숨겨진 암호키 찾기2 ி 파티션 복구 FAT32 파티션 영역이 없으므로 복구해준다. BR 시작 섹터(204928)로 이동했을 때 파티션 영역이 비어있었다. 해당 섹터에서 +6만큼 이동하면 백업된 BR이 나올 것이다. 204934(백업 BR 섹터)를 204928섹터(원본 BR 섹터)에 덮어 씌운다. ி 숨긴 파일 찾기 d41d8.docx docx 파일의 헤더 시그니처가 삭제된 상태이다. 맨 앞에 50 4B를 추가하여 파일을 열어본다. 비밀번호가 흰색 문자로 숨겨져 있어서 전체 드래그하여 글씨를 검은색으로 바꾸니 암호가 보인다. Mail.docx 기타 폴더에 Mail.docx가 보인다. 헤더 시그니처만 봤을 때는 docx 또는 zip으로 예상되므로 해당 파일을 zip으로 추출해본다.압축파일의 비밀번호가 걸려있으므로 아까 docx..
USB 기밀자료 유출행위 분석 다음 USB는 기밀유출 행위자로부터 압수한 USB이다. 파일의 내용을 분석하여 범죄상황을 재구성한다. 아래는 USB 내의 자료이다. 기밀 유출자는 USB 자료에서 파일의 header 시그니처와 확장자를 변경하여 사건의 단서가 될만한 파일을 읽지 못하도록 전부 숨긴 상태다. 이를 모두 추적하도록 한다. 정황 파악 기타 폴더에 들어있는 실행파일의 header 부분이 수상하다. PNG 헤더랑 유사한데 정상 시그니처는 아니므로 맨 앞에 89 50을 추가하여 png 시그니처로 저장한다. png를 열어보니 도면 유출시도를 위한 대화 내용이 들어있는 것으로 추정된다. 도면 유출 확인 사진 폴더에서 다른 이미지 파일은 잘 열리는데 image(151) 파일이 열리지 않는다. 또한 다른 이미지 크기에 비해 다소 큰 사이즈..
디지털 포렌식 문제 - 숨겨진 암호키 찾기1 ி 문서파일에서 암호키 찾기 리눅스에서 사용자가 다운받아 숨겨놓은 암호키를 찾는다. 리눅스의 계정정보는 home 디렉토리 안에 있다. 사용자가 파일을 다운받으면 기본적으로 download 폴더에 저장되고 다운받은 흔적이 있는지 확인하기 위해 해당 폴더로 이동하였더니 Luckydog라는 압축파일이 있었다. 압축된 파일을 풀어서 나온 jpg 파일을 Hex로 분석해본다. jpg 파일 헤더 시그니처는 FF D8, Footer는 FF D9이다. jpg Footer이후에 압축 파일을 나타내는 PK 시그니처가 보인다. 그 뒤에 PK 영역의 헤더와 footer 시그니처까지 확인해본다. 50 4B 03 04는 압축 파일 헤더 시그니처, 50 4B 05 06는 Footer 시그니처이다. 사진의 header signatur..
Petya 랜섬웨어에 감염된 MBR 복구하기 [ 페트야 랜섬웨어가 실행된 모습 ] 윈도우 기반 시스템에서 페트야 랜섬웨어가 실행되면 MBR 영역을 감염시켜 부팅을 차단한다. 가상머신에서 페트야 랜섬웨어에 감염된 vmdk를 FTK Imager로 열었을 때의 모습이다. MBR 영역이 감염되어 키를 입력받고 해골 모양을 표시하는 위치로 이동하는 듯하다. HxD로 vmdk 파일을 열면 vmware 이미지 시그니처(KDMV)와 실제 MBR의 시작주소 (offset 0x40~47 – 80 3C 00 00 00 00 00 00)를 알 수 있다. 윈도우이므로 리틀엔디언 방식을 사용한다. MBR 시작 주소는 3C80 * 섹터(0x200)는 790000, 즉 15488섹터이다. 해당 섹터의 데이터는 아까 FTK 0번 주소에 있던 위치의 데이터와 동일하다. 해당 위치..
스테가노그래피 문제풀이 스테가노그래피는 데이터 은폐 기술 중 하나이며, 데이터를 다른 데이터에 삽입하는 행위이다. ① Challenge1 - docx docx의 파일구조를 찾아보면 압축파일 형태인것을 알 수 있다. zip과 docx는 두 헤더 모두 50 4B 03 04를, zip의 중간 헤더는 50 4B 01 02를 사용한다.zip 중간 헤더로 이동하여 그 뒤에 데이터를 보면 숨겨진 폴더와 이미지가 나온다. 해당 파일의 확장자를 docx에서 zip으로 변경하고 압축을 풀면 media 폴더에 숨겨진 이미지 파일이 있다. ② Challenge2 - rtf 해당 문서의 Decoded text 내용이 이미지 파일의 바이너리와 유사하다. 따라서 rgb 값 이후의 첫 바이트의 시그니처(89 50 4e 47)를 확인해보니 PNG 파일의 시..