(1) Bandit
(2) 이전 문제 풀이
이전 문제는 git의 기본원리?를 사용하는 문제였다. 커밋, 푸쉬등 개발자들은 알법한? 상식문제였다.
Bandit 워게임 풀기 [level31 -> level32]
(1) Bandit (2) 이전 문제 풀이 이전 문제는 역시 github를 사용한 문제였고, 숨겨진 커밋을 발견해서 문제를 해결했다. Bandit 워게임 풀기 [level30 -> level31] (1) Bandit (2) 이전 문제 풀이 이전 문제는 github
suhyeokdevlog.tistory.com
(3) level32 -> level34
git이 끝나고 탈출할 시간이란다. 아마 새로운 유형을 풀어라는것 같다.
직접 살펴보니
사진과 같이 모든 명령어를 대문자화 시키는것 같다.
인터넷에서 살펴보니, bash 스크립트에서 "$[숫자]"에는 특별한 값을 갖는 변수로 사용된다.
그중 "$0"에는 우리가 자주 쓰는 sh가 들어있다고 한다.'
위의 사진처럼 "$0"을 입력해서 쉘을 바꾸고, 파일들을 확인해 본 결과
아무런 파일도 없길어 혹시 해서 권한을 살펴보니, bandit33의 권한을 가지는 것을 볼 수 있다.
바로 bandit33의 비밀번호가 저장된 파일을 읽어보니 비밀번호가 나왔다.
bandit33의 비밀번호는 "odHo63fHiFqcWWJG9rLiLDtPm45KzUKy"이다.
원래 까지였다면, 여기서 끝나야 하지만, 다음 문제를 보니 매우 간단하여 동시에 두 개를 진행했다.
(4) level33 -> level34
문제가 없다고 한다. 즉, 모든 문제를 다 푼 것이다.
혹시나 해서 문제를 들어가 보니 파일 하나가 있었다.
문제를 다 풀었다고, 축하해 준다.
그리고 혹시 아이디어가 있으면, 알려달라고 한다.
*p.s*
문제를 풀면서 생각보다 긴 시간을 소요하였다.
한 번씩 인터넷에서 관련 내용들을 찾아보고, 직접 방법을 생각하는 과정에서
리눅스 시스템을 더 잘 이해한 것 같다.
대부분의 초심자가 실력이 늘지 않는 이유가 계속 이론으로 공부만 하려 하는 특성 때문 같다.
물론 나도 지금까지 그래왔다.
매번 관련 내용을 유튜브 등의 매체에서 시청하지만, 막상 리눅스 사용을 하려면 막막하고
바보가 된 기분이 들었다. 그런 순간 리눅스 강의 영상을 듣고, 기초 문제를 풀고,
어느새 bandit문제를 다 풀어 웬만한 리눅스명령어는 구사하는 수준을 1년도 안 되는 시간에 달성했다.
앞으로도 지금이 순간을 잊지 않고 계속해서, 나아갈 것이다.
이제 슬슬 리버싱에 대해 공부하고 진짜 모의해킹(워게임)을 해보려고 한다.
아마 다음부터는 dreamhack의 문제를 풀 것 같다.
이번이 끝이 아닌 앞으로 나아가는 첫걸음이면 좋겠다.