Hacking/[System]Bandit

OverTheWire [Bandit Level 22]

양선규 2023. 4. 2. 05:24
728x90
반응형

Bandit Level 22 입니다.

 

 

이전 레벨과 같다

 

문제 자체는 이전 레벨과 같습니다. cron을 확인하라고 합니다.

아래엔 추가로, 쉘 스크립트를 보는 것은 좋은 기술이라고 하네요.

 

 

bandit23을 확인하자

 

/etc/cron.d 디렉터리입니다.

우리는 bandit23의 password가 필요하니, cronjob_bandit23 을 확인해 보도록 합시다.

 

 

찾아가보자

 

매분마다 /usr/bin/cronjob_bandit23.sh 가 실행되고 있습니다.

해당 파일을 확인해 봅시다.

 

 

password를 어디론가 배송하는데..

 

짧은 코드가 있는데요.. 

myname=$(whoami) : whoami의 결과값을 변수 myname에 저장한다 ( whoami : 현재 접속한 계정명을 알려주는 명령어 )

 

mytarget=$(echo I am user $myname | md5sum | cut -d ' ' -f 1) : "I am user $myname" 문자열을 md5 해시한 후/ cut 명령어로 문자열 자르기를 실시하여/ 해당 값을 변수 mytarget에 저장한다

 

echo "Copying passwordfile /etc/bandit_pass/$myname to /tmp/$mytarget" : 크게 의미없는 구문이긴 한데, 프로그램을 실행하면 이 프로그램이 의미하는 것이 무엇인지에 대한 힌트를 얻을 수 있는 구문입니다.

 

cat /etc/bandit_pass/$myname > /tmp/$mytarget : 해당 계정 password를 /tmp/$mytarget 디렉터리에 저장한다

 

자 해석을 마쳤고, 총 정리하자면

cron 실행 계정은 bandit23이니, myname 값은 "bandit23" 이겠죠.

 

이후 "echo I am user bandit23 | md5sum | cut -d ' ' -f 1"    명령어를 그대로 입력하면, mytarget 값을 획득할 수 있습니다.

 

 

성공

 

password가 저장된 파일명을 찾았습니다.

/tmp/8ca319486bfbbc3663ea0fbe81326349  파일을 읽으면 password를 획득할 수 있을 것 같습니다.  

 

 

password 획득

 

password를 획득했습니다.



 

728x90
반응형

'Hacking > [System]Bandit' 카테고리의 다른 글

OverTheWire [Bandit Level 24]  (2) 2023.04.02
OverTheWire [Bandit Level 23]  (0) 2023.04.02
OverTheWire [Bandit Level 21]  (0) 2023.04.02
OverTheWire [Bandit Level 20]  (0) 2023.04.02
OverTheWire [Bandit Level 19]  (0) 2023.04.02