이번 level 역시 특별한 부분은 없습니다. 다만 난이도가 조금 올라간 정도에요. NOTE 부분을 통해 저희 스스로 shell-script를 만들어야 함을 인지할 수 있습니다. NOTE2 부분을 통해 저희가 만든 shell-script는 한번 실행되고 삭제됨을 알 수 있습니다. 앞 시간에서는 모르고 지나갔지만 이번 lv을 친구와 같이 해결하면서 새롭게 알게 된 사실들이 있습니다. 위 내용을 풀이하면서 설명하겠습니다. 우선 저희는 cron의 역할을 알고 있습니다. 대충 요약하자면 주기적인 작업을 관리하는 것입니다. cron.d 역시 Bandit lv21 -> lv 22 에서 배웠습니다. 그 내용을 보면 cron.d는 주기적인 작업을 등록하는 공간이라고 합니다. 즉 /ect/cron.d/cronjob_ba..
위 내용은 이전 시간과 똑같으니 패스. NOTE >> 다른 사람이 작성한 shell scripts를 보는 것은 공부에 유용함. 이번 대본은 읽기 쉽게 만들어졌다고 함. 모르는게 있으면 디버그 정보를 확인하라고도 함. 여기서는 다른 내용은 없으니 shell scripts를 분석해보겠습니다. #!/bin/bash : scripts file을 bash 쉘로 실행시킨다는 의미 myname=$(whoami) : myname이라는 변수명을 지정하고 변수를 whoami로 지정 mytarget=$(echo I am user $myname | md5sum | cut -d ' ' -f 1) > mytarget 이라는 변수명을 지정하고 그 변수명에 우측의 내용을 저장 md5sum : 파일을 다운받거나, 이동하거나, 복사한 ..
요약 >> 1. cron을 통해 프로그램이 규칙적으로 자동 실행됨. 2. /etc/cron.d/ 에 들어가서 어떤 명령이 실행되는지 구성을 확인해요. ls를 이용해서 아무것도 없음을 확인 문제에서 주어진 위치로 이동해서 ls 이용 -> 여러가지가 식별. 그 중 우리가 필요한 것은 bandit22에 관한 것이므로 bandit22를 열어봄 -> /usr/bin/cronjob_bandit22.sh 가 실행된다는 것으로 추정 위에서 나온 파일을 cat을 이용하여 확인 -> /tmp/t~ 의 권한을 644로 변경 -> /etc/bandit_pass/bandit22의 내용을 /tmp/t~에 복사 ( => 위 작업이 가능한 이유는 cronjob_bandit22.sh 에서 bandit22 로 로그인 했기 때문으로 추정..