목록전체 글 (151)
김승현
문제 포트 30002포트로 리스닝을 하고 bandit24의 password와 4자리 암호를 주면 bandit25의 password를 준다고 하는 것 같다. pincode를 얻는 방법은 브루트포싱이라고 불리는 방법밖에 없다고 한다. 브루트 포스 공격이란? 무차별 대입 공격으로 특정한 암호를 풀기 위해 가능한 모든 값을 대입하는 것을 의미한다. 모든 가능한 경우의 수를 시도하기 때문에 돈과 시간만 있다면 모든 암호를 얻을 수 있지만 웹사이트의 경우 대부분 각자의 방지책을 마련하고 있다. 풀이 (ls -al을 해도 힌트가 딱히 없는 것 같아서 넣지 않았습니다) nc 명령어를 이용해서 localhost의 30002포트에 접속해보면 두 줄 정도의 문장이 출력된다. 짧게 요약하자면 bandit24의 password..
문제 제시된 명령어가 같으면 내용도 거의 비슷한 내용들인 것 같다. 프로그램은 cron으로 규칙적인 텀마다 자동으로 실행되는 시간 기반의 작업 스케쥴러라고 하고 /etc/cron.d를 봐서 설정이나 어떤 커맨드가 실행되고 있는지 보라는 말인 것 같다. NOTE : 이 level에선 우리가 우리의 첫 셸스크립트를 만들길 요구한닥 ㅗ한다. 이건 매우 큰 스탭이고 이 문젤 스스로 풀면 자랑스러워 해도 된다고 한다. NOTE1 : 한 번 실행된 우리가 만든 셸스크립트는 지워진다는 걸 명심하라고 하고 미리 저장해두라는 말인 것 같다. 풀이 문제에서 말한대로 /etc/cron.d에 들어가서 ls -al을 했다. bandit24의 password가 필요하기 때문에 cronjob_bandit24파일을 읽어봤다. /us..
문제 프로그램은 cron으로 규칙적인 텀마다 자동으로 실행되는 시간 기반의 작업 스케쥴러라고 하고 /etc/cron.d를 봐서 설정이나 어떤 커맨드가 실행되고 있는지 보라는 말인 것 같다. NOTE : 다른 사람들에 의해 쓰여진 셸 스크립트는 유용하다. 이 단계의 스크립트는 의도적으로 읽기 쉽게 만들어졌다고 한다. 풀이 (ls -al을 해도 얻을 힌트가 없는 것 같아서 하지 않았습니다.) 저번 21 → 22단계를 풀었던 것처럼 문제에 적혀 있는 cd를 사용해서 /etc/cron.d/에 들어가보면 많은 파일들이 있는데 우리는 23level을 가야 되기 때문에 cronjob_bandit23을 봐야 될 것 같다. 간단하게 설명하면 부팅을 할 때마다, 그리고 매시 매분마다 /usr/bin/cronjob_band..
문제 프로그램은 cron으로 규칙적인 텀마다 자동으로 실행되는 시간 기반의 작업 스케쥴러라고 하고 /etc/cron.d를 봐서 설정이나 어떤 커맨드가 실행되고 있는지 보라는 말인 것 같다. 아닐 수도 있지만 어느정도 비슷한 말 아닐까요....? cron, crontab, crontab(5)명령어가 문제 푸는데 필요할 거라며 주어졌다. crontab : cron table의 줄임말로 리눅스에서 특정 작업을 주기적으로 사용하기 위해서 사용되는 명령어 풀이 (ls -al은 해도 딱히 힌트가 없는 것 같아서 넣지 않았습니다.) cron과 crontab 모두 사용해봤는데 Permission denied가 떴다. 어쩔 수 없이 문제에 적혀있던 /etc/cron.d/에 가봐야겠다. /etc/cron.d/ 디렉토리에는..
문제 홈디렉토리에 setuid binary가 있는데 이건 커맨드라인 인자로 특정시킨 로컬호스트의 포트로 연결하게 해주는 그런 파일이라고 한다. 그리고 bandit20의 password와 비교해서 일치한다면 다음 단계로 가능 password를 전송해준다고 한다. 풀이 일단 ls -al 해보면 suconnect라는 ELF 파일이 있다. 파일을 실행시키면 사용법과 거기에 대한 설명이 뜬다. 이 프로그램은 TCP를 이용해서 localhost의 주어진 포트로 접속을 한다고 하고 또 만약 다른 쪽에서( port를 open한 쪽 ) bandit20의 password를 보내면 bandit21의 password를 전송한다고 한다. 이번 문제를 풀기 위해서 bandit20에 두 개를 동시에 접속시켜 풀어야 할 것 같다. ..