문제
A program is running automatically at regular intervals from cron, the time-based job scheduler. Look in /etc/cron.d/ for the configuration and see what command is being executed.
## 문제 요구사항
cron(시간 기반 스케줄러)이 자동으로 실행하는 프로그램이 있다.
/etc/cron.d/ 안을 보고 어떤 명령이 실행되고 있는지 확인하라
## 내가 사용한 명령어
ssh bandit21@bandit.labs.overthewire.org -p 2220
cd /etc/cron.d
ls -l
cat cronjob_bandit22
cat /usr/bin/cronjob_bandit22.sh
cat /tmp/t7O6lds9S0RqQh9aMcz6ShpAoZKF7fgv


1. cron
cron = 백그라운드에서 돌아가는 스케줄러 데몬
- 항상 시스템에서 실행되고 있는 프로그램(데몬)
- 사용자가 설정한 스케줄을 해석하고, 그 시간에 명령을 실행함
- 즉 “스케줄을 실제로 실행하는 실행기(executor)”
비유:
알람을 울려주는 시계.
2. crontab
crontab = 사용자가 설정하는 스케줄 목록(파일)을 관리하는 도구
- cron이 언제 어떤 작업을 실행해야 할지 알려주는 “작업 리스트”
- 명령어 crontab 로 리스트를 열고 편집한다
- 각 사용자마다 자신만의 crontab 목록을 가질 수 있다
주요 명령:
crontab -e # crontab 편집
crontab -l # 설정된 cron 스케줄 확인
crontab -r # 삭제
비유:
알람을 언제 울릴지 설정하는 메뉴(설정표).
3. crontab(5)
crontab(5) = crontab 파일의 문법을 설명하는 매뉴얼 페이지(section 5)
- man 5 crontab 으로 볼 수 있다
- crontab 파일을 어떤 형식으로 작성해야 하는지 설명하는 공식 문법 문서
- 즉, 스케줄을 적는 형식(분, 시, 일, 월, 요일, 명령)의 정확한 문법이 나와 있음
예:
man 5 crontab
비유:
알람을 어떻게 설정하는지 설명한 “사용 설명서”.
crontab 문법 예시
형식:
* * * * * <실행할 명령>
분 시 일 월 요일
예:
매 분마다 echo 실행:
* * * * * echo "hello"
매일 오전 1시:
0 1 * * * /path/to/script.sh
'Security > OverTheWire' 카테고리의 다른 글
| Bandit Level 23 → Level 24 (스크립트 작성) (0) | 2025.12.02 |
|---|---|
| Bandit Level 22 → Level 23 (0) | 2025.12.01 |
| Bandit Level 20 → Level 21 (nc) (0) | 2025.12.01 |
| Bandit Level 19 → Level 20 (setuid) (0) | 2025.12.01 |
| Bandit Level 18 → Level 19 (쉘 스크립트 우회) (0) | 2025.12.01 |