쉬는시간/xcz.kr

[xcz.kr] PROB36 문제풀이

happy-nut 2015. 11. 22. 23:21

xcz.kr Prob 36의 Title은 「File Deleted」입니다. 


피시방에서 아동 청소년 보호법에 위배되는 파일을 소지한 기록을 발견했다고 합니다. 

아마 아동포르노가 담겨있는(담겨있다고 가정한) 동영상 파일일 거라고 추측이 되지만 Title(삭제된 파일)로 미루어 보아 동영상 파일은 이미 삭제가 됐을 확률이 큽니다.

"일반 삭제를 했을 경우 휴지통에 남아있을 것이고, 영구삭제를 했었어도 복구를 할 수 있는 방법이 있으니 어떻게든 풀리겠지" 정도의, 대충 이런 감을 가지고 문제에 들어가 보았습니다.


Prob File 을 눌러 파일을 다운로드 받아보니, 기대했던 이미지 파일과는 달리 "file_deleted.7z"이라는 압축파일이 다운로드 받아집니다. 

압축을 해제하고 들어가보면 아래 이미지처럼 흡사 윈도우 사용자 홈 폴더를 송두리째 압축시켜 놓은 것 같은 폴더와 파일들이 보입니다. 이런 맥락이라면 사용자의 이름이 "unl" 이었을 거라고 여겨집니다.

휴지통을 복구할 생각을 가지고 문제를 들어왔는데 홈 폴더라니, 일단은 여기저기 뒤저보기 시작했습니다.

그 중 Recent에 들어가보니, "s3c3r7.avi" 라는 수상한 이름의 링크파일이 보입니다. 3을 e로, 7을 t로 봤을 때 파일이름이 "secret.avi"가 되는 것만 가지고는 아동 청소년 보호법에 위배되는 파일이라고 단정지을 순 없지만, 의심하고 조사해볼 가치는 있습니다.

우클릭하여 속성을 눌러보니 다음과 같았습니다.

대상이 "H:\study\s3c3r7.avi" 라고 되어 있습니다. study폴더라니 세상에, PC방인 것 치곤 어울리지 않는 폴더이름입니다.

여하튼 대상의 위치에 관한 정보도 어찌됐건 링크파일의 내용에서 읽어온 정보일 테니, 링크파일의 다른 내용에 대해 좀 더 조사하면 s3c3r7.avi 라는 비밀스런 파일을 자세히 파헤칠 수 있을겁니다.

링크파일에는 링크되는 대상위치 말고도 의외로 많은 정보를 가지고 있습니다. 대상파일이 언제 파일이 생성되었는지, 가장 최근에 수정된 시간은 언제인지까지를 비롯해서 문제에서 요구하는 정보 중 하나인 링크 대상파일이 저장된 볼륨의 시리얼 넘버 정보까지 담고 있습니다.

다음은 링크파일의 헤더 구조입니다.

이 링크파일을 조사하면 문제의 파일에 대해 더 자세하게 접근할 수 있음을 알았으므로, 010 Editor라는 툴을 사용해 해당 파일을 열어보았습니다. 

010 Editor는 무료이고, 파일별로 헤더를 분석해주는 툴입니다. 2015년 11월 22일(글 작성 시간) 기준으로는 lnk 템플릿을 디폴트로 지원하진 않지만, 해당 소프트웨어를 다운받는 사이트에서 템플릿 유틸리티를 다운받을 수 있습니다. 

lnk템플릿을 추가하여 에디터로 "s3c3r7.avi"를 열어보면 다음과 같이 모든 정보가 표시되는 것을 알 수 있습니다.


알아야 하는 정보는 원본 경로, 만들어진 시간, 마지막 실행 된 시간, 쓰인 시간, 볼륨 시리얼 이렇게 5개 이므로 잘 찾아보면 다음과 같이 전부 찾을 수 있게 됩니다. 

 Name

 Value

 원본 경로 (string LocalBasePath[20])

 H:\study\s3c3r7.avi

 만들어진 시간 (FILETIME CreationTime)

 10/16/2013 04:52:10

 마지막 실행 된 시간 (FILETIME AccessTime)

 10/16/2013 14:24:50

 쓰인 시간 (FILETIME WriteTime)

 10/16/2013 10:37:47

 볼륨 시리얼 (DWORD DriveSerialNumber)

 A9 02 A8 D0


GMT+9가 기준이므로 시간은 전부 9시간씩 더해주고 볼륨시리얼은 리틀엔디언 형식이므로 D0A8-02A9로 바꿔주어야 합니다.

이부분을 몰라서 한참 인증오류로 헤매다가, 직접 링크파일을 만들고 실제 볼륨 시리얼 넘버와 비교 분석하여 흡사 리틀엔디안 형식과 같다는 사실을 알아냈습니다.

볼륨 시리얼 넘버는 dir명령어로 확인해 볼 수 있습니다.

결론적으로 md5("H:\study\s3c3r7.avi_20131016045210_20131016142450_20131016103747_D0A8-02A9") 의 값을 인증하면 됩니다.


답 : 66f67cd42c58763fd8d58eed6b5bfdba

'쉬는시간 > xcz.kr' 카테고리의 다른 글

[xcz.kr] PROB30 문제풀이  (8) 2015.11.13
[xcz.kr] PROB16 문제풀이  (0) 2015.11.12
[xcz.kr] PROB13 문제풀이  (0) 2015.11.07
[xcz.kr] PROB14 문제풀이  (0) 2015.11.07
[xcz.kr] PROB20 문제풀이  (0) 2015.11.05