- NEW초롱이의 하루
- kisa
- 길은 가면, 뒤에 있다
- C언어 예술가
- Zer0 day - Zer0 day
- Information Security
- Secure-EDU
- 앙큼한유채's 일상 Story
- Library of Ezbeat (잠정 폐쇄)
- The Factory
- 안드
- 모후모후의 커뮤니티
- 공학도의 잡다한 시선
- 안드2
- IT속에 코코아
- IP주소검색(whois)
- IP주소검색(좌표포함)
- 소프트웨어 경력 관리
- 해저 케이블 지도
- MAC주소검색
- IANA
- 포트번호검색
- 자신의IP확인
- 웹페이퍼캡처
- 나의패스워드보안등급
- 웹 취약점 분석
- IT용어정리
- GitHub
- 라이브러리 모음
- 웹마당넷
- 시스템콜참고
- BCD 변환
- 보안뉴스
- 코딩도장(C, Python)
- 백준알고리즘
- 코딩테스트 연습
- 웹 사이트 테스트
- 스크립트꾸미기
- ctf대회목록
- 전자신문
- hash 크랙
- CVE
- 도메인등록
- N클라우드
- BugBountyList
- 칼리공식사이트
- CR4FTING BOX
- 아스키코드 변환
- 웹 사이트 통계 및 평가
- PDF변환
- AWS 및 클라우드 정보
- 가상화 및 서버관련
- 티오리
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 안드로이드
- Shell script
- GPIO
- nginx
- API
- RaspberryPi
- 쉘 스크립트 기초
- 클라우드
- synology
- LEVIATHAN
- 프로젝트
- Linux
- 쉘 스크립트 if문
- 네트워크
- System
- Python
- ACL
- 라즈베리파이
- 자바
- JSP
- 그라파나
- 쉘 스크립트
- Tkinter
- Java
- docker
- centos docker
- GUI
- Android
- 리눅스
- 메소드
- Today
- Total
IT창고
우리은행 가짜 보안로그 프로그램 디스크 복구 본문
2017년도에 한국의 은행중 하나인 우리은행의 보안로그 수집기 프로그램으로 위장한 악성코드가 유포되었습니다.
자세한 내용은 위의 기사를 참고합니다.
이 악성코드를 물리PC에서 작동하면 MAC, IP주소를 수집하며 가상머신에서 작동할 경우 가상디스크의 MBR영역을 모두0으로 변경시킵니다.
악성코드로 감염된 가상머신PC 디스크파일을 ftk imager로 확인해보았는데 MBR영역이 아예 00값으로 지워져있습니다.
ftk tool에서는 얻을 정보가 없을거같습니다.
40~47오프셋의 정보로 MBR의 위치를 찾아보았습니다. MBR위치는 10368번 섹터입니다.
하지만 MBR영역은 00값으로 사라졌기 때문에 파티션의 정보를 얻을 수단이 존재하지 않습니다.
먼저 얻은 정보로는 이 가상머신PC가 윈도우 운영체제로 사용했다는점입니다. BootCode 446Byte는 동일하기 때문에 파티션 테이블의 정보만 복구하면 됩니다.
파티션 테이블 정보 복구 시 필수로 필요한 정보로는 부팅플래그, 파티션타입, LBA시작주소, 총 섹터의 수 4가지가 반드시 필요합니다. CHS시작, 마지막주소는 00으로 처리해도 상관없습니다.
ftk에서는 파일시스템의 대한 정보를 얻을수없었으며 윈도우 운영체제라면 FAT32 / NTFS 파일시스템중 하나를 사용했을것이라 판단할수있습니다.
HxD에디터에서 시그니처를 기반으로 FAT32 인지 NTFS인지 알수있습니다.
NTFS의 시그니처는 EB 52 90 4E 54 46 53 입니다.
NTFS의 시그니처를 확인해볼수있습니다. 파일시스템은 NTFS인걸로 확인했습니다.
NTFS 타입은 VBR 백업을 파티션 마지막에 저장합니다.
ftk imager에서 시그니처 기반으로 찾아서 정확히 몇 번 섹터에 있는지 확인합니다.
2048섹터, 206847섹터 , 206848섹터
1섹터 만큼 차이가 나는 섹터가 다음 파티션이라고 들었습니다.
1번 파티션 시작 2048
1번 파티션 마지막 206847
2번 파티션 시작 206848
2번 파티션 마지막 83884031
이 됩니다.
이걸 파티션 테이블로 만들어보겠습니다.
|
1번 파티션 |
2번 파티션 |
부팅플래그 |
80 |
00 |
CHS시작주소 |
00 00 00 |
00 00 00 |
파티션 타입 |
07 |
07 |
CHS마지막주소 |
00 00 00 |
00 00 00 |
LBA시작주소 |
00 08 00 00 (2048의 16진수 변환) |
00 28 03 00(206848의 16진수 변환) |
총 섹터의 수 |
00 20 03 00 |
00 D0 FC 04 |
총 섹터의 수는 마지막 섹터 - 시작 섹터 + 1 = 총 섹터 수입니다.
1번 파티션의 총 섹터의 수는 206847 - 2048 +1 = 204800 섹터입니다.
2번 파티션의 총 섹터의 수는 83884031 - 206848 +1 = 83677184 섹터입니다.
파티션 테이블이 완성됬다면 MBR의 BootCode 446Byte 아래에 파티션 정보를 넣습니다.
이렇게 되면 MBR 영역이 복구하게 됩니다.
이제 디스크 파일의 00으로 되어있는 MBR 영역 15488섹터로 가서 붙여쓰기를 하고 ftk imager로 확인해봅니다.
MBR영역이 복구되어 ftk imager에서도 파티션의 정보를 확인해볼수있습니다.
여기까지 진행되었다면 ftk imager에 파티션은 복구됬지만 부팅이 안될수있습니다. 이유는 하드디스크별로 GUID값이 존재합니다. MBR의 440~443Byte에 GUID값이 들어가며 GUID정보는 복구된 파티션정보에서 찾아야합니다. 해당 정보는 windows\system32\config\ 경로에 있으며 SYSTEM 파일을 카빙하여 regedit으로 찾아보면 됩니다. 자세한 방법은
2018/07/08 - [보안/Digital forensic] - 감염된 디스크 복구 (3.20 전산대란)을 참고합니다.
가상머신PC를 부팅해보면 정상적으로 부팅이되며 성공적으로 MBR을 복구한걸 확인할수있습니다.
'보안 > Digital forensic' 카테고리의 다른 글
VHD로 알아보는 FAT32 (0) | 2018.09.26 |
---|---|
감염된 디스크 복구 (3.20 전산대란) (2) | 2018.07.08 |
Golden_Eye 랜섬웨어 디스크 복구 (2) | 2018.07.08 |
PETYA 랜섬웨어 디스크 복구 (1) | 2018.07.08 |
suninatas - 포렌식 32번 Terrorist 문제풀이 (0) | 2018.07.08 |