오늘도 문제를 풀어봅시다 Bandit Level 15 → Level 16 문제 풀이 ssh bandit15@bandit.labs.overthewire.org -p 2220password : jN2kgmIXJ6fShzhT2avhotn4Zcka6tnt Bandit Level 15 → Level 16 문제는 SSL 암호화를 사용하여 localhost의 포트 30001에 현재 패스워드를 제출하여 level 16의 패스워드를 찾아내는 문제입니다 이 문제는 openssl 명령어를 사용했습니다 openssl은 보통 HTTPS 설정, 데이터 암복화 등에 많이 사용되는 명령어입니다추가로 SSL과 TLS의 보안 통신을 위해 사용하는 프로토콜입니다(TLS : Transport Layer Security) - SSL의..
오늘로 벌써 문제에 절반 정도 풀었습니다따라오시는 여러분들 모두 파이팅 하세요! Bandit Level 13 → Level 14 문제 풀이 ssh bandit13@bandit.labs.overthewire.org -p 2220password : wbWdlBxEir4CaE8LaPhauuOo6pwRmrDw Bandit Level 13 → Level 14 문제의 비밀번호는 /etc/bandit_pass/bandit14 경로에 저장되며 bandit14 사용자만 읽을 수 있습니다 하지만 우리가 접속했던 bandit13 계정에서 Level 14로 가기 위한 비밀번호를 구하지 못한다고 합니다 그래서 ssh 키를 이용하여 다음 bandit14에 로그인할 수 있는 호스트 이름을 이용하여 패스워드를 구해보라고 합니..
점점 레벨이 올라갈수록 문제 난이도가 올라가네요..그래도 포기하지 않고 하나씩 해결해 봅시다 Bandit Level 12 → Level 13 문제 풀이 ssh bandit12@bandit.labs.overthewire.org -p 2220password : JVNBBFSmZwKKOP0XbFXOoW8chDz5yVRv Bandit Level 12 → Level 13 문제의 비밀번호는 반복적으로 압축된 파일의 hexdump인 data.txt 파일에 있다고 합니다 먼저 mkdir 디렉터리 생성 명령어를 이용하여 /tmp 경로의 데이터 파일을 복사하고(cp) 이름을 바꾸는(mv) 명령어를 사용하라고 합니다 우선 홈 디렉터리에 있는 data.txt 파일을 /tmp/musa라는 경로를 설정하여 데이터 파일을 복사..
오늘도 Bandit 문제를 풀어봅시다Bandit Level 10 → Level 11 문제 풀이 ssh bandit10@bandit.labs.overthewire.org -p 2220password : G7w8LIi6J3kTb8A7j9LgrywtEUlyyp6s Bandit Level 10 → Level 11 문제는 data.txt 파일 안에 비밀번호가 base64로 인코딩 되어있다고 합니다 data 파일을 확인해 보니 base64로 인코딩 되어있습니다 이 인코딩 문자를 디코딩 해야 우리가 원하는 Level 11의 패스워드를 찾을 수 있습니다 base64 : 바이너리 데이터를 문자 코드에 영향을 받지 않는 공통 ASCII 문자로 표현하기 위해 만들어진 인코딩입니다이 base64 명령어를 사용하여 해당 ..
이번 단계부터 Bandit이 어려워지기 시작합니다..하나하나 천천히 문제를 해결해 나아갑시다 Bandit Level 7 → Level 8 문제 풀이 ssh bandit7@bandit.labs.overthewire.org -p 2220password : z7WtoNQU2XfjmMtWA8u5rN4vzqu4v99S Bandit Level 7 → Level 8 문제는 data.txt 파일 내부에서 'millionth' 단어 옆에 비밀번호가 있다고 합니다 data 파일을 cat 명령어로 읽어보니 엄청나게 많은 데이터들이 출력되고 있습니다 여기서 millionth라는 단어를 찾아야 하는데.. 지난 시간에 Level 5 문제에서 사용했던 파이프 명령어를 이용하면 이렇게 한 번에 찾을 수 있습니다 Ban..
오늘도 달려봅시다 Bandit Level 4 → Level 5 문제 풀이 ssh bandit4@bandit.labs.overthewire.org -p 2220password : 2EW7BBsr6aMMoJ2HjW067dm8EgX26xNe Bandit Level 4 → Level 5 문제 내용은 inhere 경로의 인간이 읽을 수 있는 파일에서 비밀번호를 찾는 문제입니다 inhere 경로에 들어가서 cat 명령어의 현재 경로의 있는 파일을 읽어보니 파일이 깨져서 보입니다이건 data 파일이어서 인간이 읽을 수 있는 파일이 아닌 걸 알 수 있습니다 이렇게 일일이 하나씩 읽어보니 -file07 파일에 비밀번호가 있는 걸 확인할 수 있었습니다 하지만 하나씩 대입해서 찾는 것보단 file 명령어를 이용하여..
지난 시간에 이어서 Bandit 문제를 풀어봅시다 Bandit Level 1 → Level 2 문제 풀이 ssh bandit1@bandit.labs.overthewire.org -p 2220password : NH2SXQwcBdpmTEzi3bvBHMM9H66vVXjL Bandit Level 1 → Level 2 문제는 홈 디렉터리에 저장된 - 파일을 읽어 비밀번호를 알아내는 문제입니다 이 문제는 ls 와 cat 명령어를 이용하여 비밀번호를 알아낼 수 있습니다 현재 파일명이 -로 되어있어 현재 경로를 지정하지 않고 그냥 파일명만 입력하면 - 파일을 읽어올 수 없습니다저처럼 cat - 명령어를 입력했다면 Ctrl + c로 글자가 입력되는 부분을 탈출할 수 있습니다-는 리눅스에서 예약된 특수문자로 인식하..
여태까지 공부한 리눅스는 이 Bandit이라는 워게임을 풀기 위한 준비였습니다 워게임은 해킹을 게임처럼 공부할 수 있게 만든 시스템이라 생각하면 됩니다 이 워게임은 여러 장르가 있는데 Bandit은 인기 있는 장르인 CTF(Capture The Flag) 방식입니다 CTF는 Flag를 구하는 장르로 각각의 시스템이나 문제마다 개발자가 Flag라는 비밀 코드를 숨겨놨는데 우리가 이 숨겨진 코드를 찾아내는 겁니다 지금까지 리눅스를 공부한 바탕으로 Bandit 워게임을 풀어나가 봅시다 Bandit 사이트를 리눅스로 접속해 보자 [Bandit 사이트 주소] OverTheWire: Level Goal We're hackers, and we are good-looking. We are the 1%. Level Go..
지난 시간에 프로그램의 출력 방향을 리다이렉션으로 바꿨는데, 이번 시간에는 입력의 흐름을 다른 곳에 넣을 때 사용하는 파이프에 대해 알아봅시다 PIPE 란? 파이프는 프로그램 사이에 연결되어 있는 빨대라 생각하면 이해하기 쉽습니다 이렇게 프로세스 간에 연결된 파이프를 통해서 데이터가 흐르게 됩니다 또한 프로세스의 출력이 다른 프로세스의 입력으로 들어갈 수 있습니다 그래서 파이프는 프로세스의 출력을 다른 프로세스의 입력으로 넣어주고 싶을 때 사용합니다 예를 들어 A라는 명령어(프로세스)의 결과를 파일로 저장하지 않거나 화면에 출력하는 것도 아니라면 오로지 이 결과를 다른 명령어(프로세스)에 넘겨주고 싶을 때 파이프를 사용합니다 이제 PIPE를 칼리 리눅스에서 사용해 봅시다 PIPE 실습하기 PIPE를 가장..
지난 시간에 데이터 스트림을 알아보면서 데이터의 흐름이 있다고 했는데 이번 시간에는 이 데이터의 방향을 바꾸는 리다이렉션을 공부해 봅시다 리다이렉션 : Re / direction (다시 방향) 즉 방향을 바꾼다는 게 리다이렉션입니다 Redirection 리다이렉션 실습 실습 전 Text Editor 강좌 때 만든 mv_test 파일을 이용하겠습니다 (없으면 생성해 주세요) 현재 cat 명령어의 결과 데이터가 standard output(표준 출력)으로 화면에 표시된 겁니다 이제 출력의 방향이 터미널 화면이 아닌 다른 파일로 향하게 방향을 바꿨습니다 방향을 바꿀 때, 사용하는 문자는 > 입니다 리다이렉션을 사용하니 터미널 화면에 mv_test 파일 내용이 출력되지 않고 musa_file라는 파일로 방향을 ..