문제로 안드로이드 덤프파일이 주어진다.
/data/system에 저장된 gesture.key(휴대폰 락스크린 정보가 저장된 파일)가 있는데 “haha cant get me I made back up zz”로 나온다. 이 문제의 hint이고, /data/backup폴더를 보면 아래아 같이 여러 파일들이 있는 것을 볼 수 있다.
모든 파일이 이런 형태이고, 30개정도 있다. 내용은 SHA-1값인데 이 파일들이 gesture.key파일이다.
각 파일들은 아래의 hash를 담고있는데 중복된 hash도 몇 개 있다.
23a6e7c835cd75c3f17ecc4d1cd7d840b7409525 b3f4101390eaa4747d7e8a81935a0e6f89dfa53c 82c2169c4440fee969c3ac0be7be28334ec0d866 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 06c65f3452c48504305234dc005f5efbeb3d185f 960530aaddf48e841afe6e4b34b913effc92554f ec00c8c3112383b697c54b07e1ef7910546037f5 |
각각 파일을 만들어서 crack_pattern.py를 이용해서 패턴 정보를 얻을 수 있다. 그 결과 패턴 모양대로 선을 그으면 특정 숫자가 나온다.
23a6e7c835cd75c3f17ecc4d1cd7d840b7409525 5 b3f4101390eaa4747d7e8a81935a0e6f89dfa53c 9 82c2169c4440fee969c3ac0be7be28334ec0d866 3 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 06c65f3452c48504305234dc005f5efbeb3d185f 6 960530aaddf48e841afe6e4b34b913effc92554f 8 ec00c8c3112383b697c54b07e1ef7910546037f5 2 |
그 다음 30개정도의 파일을 시간순으로 정렬한 다음 패턴으로 구한 숫자를 대입한다.
5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 23a6e7c835cd75c3f17ecc4d1cd7d840b7409525 5 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 82c2169c4440fee969c3ac0be7be28334ec0d866 3 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 06c65f3452c48504305234dc005f5efbeb3d185f 6 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 06c65f3452c48504305234dc005f5efbeb3d185f 6 b3f4101390eaa4747d7e8a81935a0e6f89dfa53c 9 23a6e7c835cd75c3f17ecc4d1cd7d840b7409525 5 06c65f3452c48504305234dc005f5efbeb3d185f 6 23a6e7c835cd75c3f17ecc4d1cd7d840b7409525 5 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 06c65f3452c48504305234dc005f5efbeb3d185f 6 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 06c65f3452c48504305234dc005f5efbeb3d185f 6 b3f4101390eaa4747d7e8a81935a0e6f89dfa53c 9 23a6e7c835cd75c3f17ecc4d1cd7d840b7409525 5 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 ec00c8c3112383b697c54b07e1ef7910546037f5 2 960530aaddf48e841afe6e4b34b913effc92554f 8 23a6e7c835cd75c3f17ecc4d1cd7d840b7409525 5 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 06c65f3452c48504305234dc005f5efbeb3d185f 6 23a6e7c835cd75c3f17ecc4d1cd7d840b7409525 5 5865c4f5e1e417f31c5e0f134e08d62d57e1470d 7 960530aaddf48e841afe6e4b34b913effc92554f 8 960530aaddf48e841afe6e4b34b913effc92554f 8 82c2169c4440fee969c3ac0be7be28334ec0d866 3 |
모두 연결 : 75 73 76 76 95 65 76 76 95 72 85 77 65 78 83 |
>>> a = array.array('B', [75, 73, 76, 76, 95, 65, 76, 76, 95, 72, 85, 77, 65, 78, 83]) >>> a.tostring() 'KILL_ALL_HUMANS' //this is the flag!! |
'Security > [게임] CTF 풀이' 카테고리의 다른 글
hdcon 이벤트문제 1번, 3번 (0) | 2013.10.31 |
---|---|
Hacklu CTF 2013 Inernal200 writeup (0) | 2013.10.25 |
Hacklu 2013 web200 writeup (0) | 2013.10.25 |
CSAW CTF 2013 Write Up (Reversing 200) (0) | 2013.09.24 |
CSAW CTF 2013 Write Up (Reversing 100) (0) | 2013.09.24 |