Mobile Forensics

[Mobile Forensics] Wear Levelling과 Garbage Collection 등

도깬리 2024. 1. 1. 08:15

안녕하세요. 도깬리 포렌식스 입니다.

애독자님들 새해 더욱 건강하시고, 복 많이 받으세요.^^

오늘도 플래시 메모리에 대해 알아 봅니다. 모두 화이팅 하세요!!!

 

Flash peculiarities in the acquisition process

포렌식 분석관은 플래시 메모리 내부에서 일어나는 것을 이해하고 있어야 합니다.

 

https://www.researchgate.net/figure/a-Wear-leveling-b-Garbage-collection-c-Over-provisioning_fig2_362693954

 

Garbage Collection

잘 알려진 동작이지만, 획득된 디바이스를 위한 대응법이 문서화되어 있지 않는 경향이 있습니다.

백그라운드 동작입니다.

이것은 모바일 디바이스의 전원이 켜졌을 때 사용하지 않는 블록에 잔존하는 잠재적 증거 데이터를 자동으로 파괴하는 결과를 초래할 수 있다.

 

Effective Management of bad blocks

만약 FTL(Flash Translation Layer)이 플래시 메모리에 임베디드 되어 있다면 배드 블록을 접근하고 관리하기가 어려울 수 있습니다.

 

One-way programming

일방향성, 즉 갱신때마다 새로 만들어 집니다.

데이터가 업데이트되면 그것은 새로운 위치에 쓰여지고, 오래된 위치는 invail로 표시됩니다.

 

Wear Levelling (WL) Garbage Collection (GL)

플래시 메모리에 포함된 데이터가 업데이트되면, 동일한 페이지에 쓰여지지 않습니다.

갱신될 데이터를 포함하는 페이지는 새로운 위치에서 완전히 다시 쓰기작업을 수행합니다.

여유 공간에서, 새로운 데이터를 포함하는 페이지는 유효한(valid, live) 것으로 표시되고, 오래된 데이터는 무효인(invalid, dead) 것으로 표시됩니다.

블록 안의 dead 페이지의 숫자가 모든 유효한 페이지보다 주어진 clearance 이상이 되면 새로운 위치에 다시 쓰여지고, 그 블록은 미래에 사용을 위하여 삭제됩니다.

Garbage Collection은 자동으로 랜덤하게 동작합니다.

 

Forensic Value

파일과 데이터의 조각들은 Garbage Collection 프로세스가 완료될 때 까지 NAND RAM 안에 여전히 잔존합니다.

모바일 디바이스에서 이러한 데이터를 복원하기 위해서는 그 데이터에 대한 물리적인 획득이 반드시 필요합니다.

 

SQLite in CellPhones

.sql, .db 확장자를 갖게 되며, 또는 확장자가 아예 없기도 합니다.

SQLite DB 시그너처는 SQLite format 3 다음에 null byte가 따라 나오는 형식입니다.

 

 

 

감사합니다. 오늘도 즐거운 하루 되세요.

"좋아요"와 "구독하기"는 힘이 됩니다.

참고문서 : Mobile Device Forensics 2016 (IACIS)