사용 툴: cygwin
1) 문제
프로그램은 cron으로부터 일정한 주기로 시작된다.
/etc/cron.d/ 에 가보고 실행중인 명령을 확인해봐
2) 문제풀이
bandit21로 로그인해주고 홈디렉터리를 살펴보았는데, 딱히 단서로 건질만한게 없었다.
그래서 문제에 주어진 대로 /etc/cron.d/에 가보았다.
bandit21@bandit:~$ cd /etc/cron.d/
bandit21@bandit:/etc/cron.d$ ls -al
total 28
drwxr-xr-x 2 root root 4096 Dec 4 01:58 .
drwxr-xr-x 88 root root 4096 Aug 3 2019 ..
-rw-r--r-- 1 root root 189 Jan 25 2017 atop
-rw-r--r-- 1 root root 120 Oct 16 2018 cronjob_bandit22
-rw-r--r-- 1 root root 122 Oct 16 2018 cronjob_bandit23
-rw-r--r-- 1 root root 120 Oct 16 2018 cronjob_bandit24
-rw-r--r-- 1 root root 102 Oct 7 2017 .placeholder
bandit21@bandit:/etc/cron.d$
cronjab_bandit22가 네이밍이 조금 수상해보여서 열어보았다.
bandit21@bandit:/etc/cron.d$ cat cronjob_bandit22
@reboot bandit22 /usr/bin/cronjob_bandit22.sh &> /dev/null
* * * * * bandit22 /usr/bin/cronjob_bandit22.sh &> /dev/null
bandit21@bandit:/etc/cron.d$
- @reboot bandit22 /usr/bin/cronjob_bandit22.sh &> /dev/null
- * * * * * bandit22 /usr/bin/cronjob_bandit22.sh &> /dev/null
이 두 문장이 처음에 이해가 가질 않았다.
그래서 구글링을 해보았다.
- 프로그램을 다시 시작할때마다 /usr/bin/cronjob_bandit22.sh을 휴지통에 버린다.
- 매시간매분매초 /usr/bin/cronjob_bandit22.sh을 휴지통에 버린다.
bandit21@bandit:/etc/cron.d$ cat /usr/bin/cronjob_bandit22.sh
#!/bin/bash
chmod 644 /tmp/t7O6lds9S0RqQh9aMcz6ShpAoZKF7fgv
cat /etc/bandit_pass/bandit22 > /tmp/t7O6lds9S0RqQh9aMcz6ShpAoZKF7fgv
bandit21@bandit:/etc/cron.d$
저 파일을 읽을려고 시도해보니까
bandit22의 패스워드를 복사해서 /tmp/t~파일에 저장한다고 한다.
그래서 저 파일을 cat 명령으로 읽으니까 패스워드가 나왔다.
SHJ@DESKTOP-CK691IG ~
$ ssh -p 2220 bandit22@bandit.labs.overthewire.org
bandit22@bandit:~$ id
uid=11022(bandit22) gid=11022(bandit22) groups=11022(bandit22)
bandit22@bandit:~$
'WAR GAME > Bandit' 카테고리의 다른 글
[OverTheWire: Bandit] level23 -> level24 (6) | 2020.03.03 |
---|---|
[OverTheWire: Bandit] level22 -> level23 (0) | 2020.03.03 |
[OverTheWire: Bandit] level20 -> level21 (0) | 2020.03.01 |
[OverTheWire: Bandit] level19 -> level20 (0) | 2020.03.01 |
[OverTheWire: Bandit] level18 -> level19 (0) | 2020.02.29 |