Seccon Beginners CTF 2019 writeup

8442 단어 ctf4bCTF
휴가가 잘 겹쳐 주었기 때문에, 처음으로 제대로 시간에 걸쳐 도전했습니다.
풀린 문제에 대해 머리 속을 정리하기 위해 간단히 기사로 둡니다.

Misc [warmup] 환영



이것은 말할 필요도 없었습니다.
IRC 채널에 연결하면 위쪽에 flag가 놓여있었습니다.
ctf4b{welcome_to_seccon_beginners_ctf}

Reversing [warmup]Seccompare



일단 압축 된 파일을 압축 해제하면 실행 파일이 있었으므로 ltrace 명령을 두드려 보았습니다.
$ ltrace ./seccompare
printf("usage: %s flag\n", "./seccompare"usage: ./seccompare flag
)       = 25
+++ exited (status 1) +++

인수 부족한 것 같습니다.
제대로 충분한 인수를 주고 다시 시도했습니다.
$ ltrace ./seccompare flag
strcmp("ctf4b{%tr1ngs_1s_n0t_en0ugh}", "flag")   = -3
puts("wrong"wrong
)                                    = 6
+++ exited (status 0) +++

했어.
비교 대상이 된 플래그가 나왔습니다.

Misc containers



warmup 이외에서 유일하게 풀린 문제입니다.
binwalk 명령을 두드려 보았습니다.
$ binwalk containers
DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
16            0x10            PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
107           0x6B            Zlib compressed data, compressed
738           0x2E2           PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
829           0x33D           Zlib compressed data, compressed
1334          0x536           PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
1425          0x591           Zlib compressed data, compressed
1914          0x77A           PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
2005          0x7D5           Zlib compressed data, compressed
2856          0xB28           PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
2947          0xB83           Zlib compressed data, compressed
3666          0xE52           PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
3757          0xEAD           Zlib compressed data, compressed
4354          0x1102          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
4445          0x115D          Zlib compressed data, compressed
5156          0x1424          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
5247          0x147F          Zlib compressed data, compressed
5846          0x16D6          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
5937          0x1731          Zlib compressed data, compressed
6722          0x1A42          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
6813          0x1A9D          Zlib compressed data, compressed
7757          0x1E4D          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
7848          0x1EA8          Zlib compressed data, compressed
8338          0x2092          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
8429          0x20ED          Zlib compressed data, compressed
9243          0x241B          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
9334          0x2476          Zlib compressed data, compressed
10319         0x284F          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
10410         0x28AA          Zlib compressed data, compressed
11042         0x2B22          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
11133         0x2B7D          Zlib compressed data, compressed
12118         0x2F56          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
12209         0x2FB1          Zlib compressed data, compressed
12809         0x3209          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
12900         0x3264          Zlib compressed data, compressed
13845         0x3615          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
13936         0x3670          Zlib compressed data, compressed
14592         0x3900          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
14683         0x395B          Zlib compressed data, compressed
15535         0x3CAF          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
15626         0x3D0A          Zlib compressed data, compressed
16440         0x4038          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
16531         0x4093          Zlib compressed data, compressed
17313         0x43A1          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
17404         0x43FC          Zlib compressed data, compressed
18218         0x472A          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
18309         0x4785          Zlib compressed data, compressed
19123         0x4AB3          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
19214         0x4B0E          Zlib compressed data, compressed
19926         0x4DD6          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
20017         0x4E31          Zlib compressed data, compressed
20869         0x5185          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
20960         0x51E0          Zlib compressed data, compressed
21742         0x54EE          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
21833         0x5549          Zlib compressed data, compressed
22465         0x57C1          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
22556         0x581C          Zlib compressed data, compressed
23408         0x5B70          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
23499         0x5BCB          Zlib compressed data, compressed
23989         0x5DB5          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
24080         0x5E10          Zlib compressed data, compressed
24810         0x60EA          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
24901         0x6145          Zlib compressed data, compressed
25753         0x6499          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
25844         0x64F4          Zlib compressed data, compressed
26788         0x68A4          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
26879         0x68FF          Zlib compressed data, compressed
27599         0x6BCF          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
27690         0x6C2A          Zlib compressed data, compressed
28504         0x6F58          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
28595         0x6FB3          Zlib compressed data, compressed
29085         0x719D          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
29176         0x71F8          Zlib compressed data, compressed
29808         0x7470          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
29899         0x74CB          Zlib compressed data, compressed
30844         0x787C          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
30935         0x78D7          Zlib compressed data, compressed
31524         0x7B24          PNG image, 128 x 128, 8-bit/color RGBA, non-interlaced
31615         0x7B7F          Zlib compressed data, compressed

png 등이 대량으로 매달려있었습니다.
그래서 -e 옵션을 붙여 다시 실행하여 이러한 파일을 추출했습니다.
폴더의 내용을 확인해 보면 아래와 같이 되어 있었습니다.
이 상태에서 잠시 막혔습니다.
확실히 그것 같지만, 이것을 어느 차례로 하면 좋을 것이라고 하는 것을 몰랐습니다.
잠시 후 그렇게 말하면 binwalk 두드렸을 때 DECIMAL의 순서로 줄 지어 있었지 ...? 라고 되돌아보고 크기순으로 정렬을 했습니다.

좋은 느낌이되었습니다.
그렇게함으로써,
ctf4b{e52df60c058746a66e4ac4f34db6fc81}

그리고 flag 획득입니다.
내가 풀린 것은 여기까지입니다.

감상



처음에 희미하게 목표로 하고 있던 2,3문제는 달성할 수 있었으므로, 거기에 관해서는 좋았습니다.
그래도 아마 있을 것이라고 생각하고 있던 SQL 인젝션이나, XXS, 패킷 캡쳐라고 하는 근처에 대응할 수 없었던 것은 미안했습니다.
다음에 도전할 기회가 있으면, 깨끗이 3자리 득점의 문제를 풀어 보고 싶은 것입니다.

좋은 웹페이지 즐겨찾기