반응형

워게임/Root Me 108

[Root Me] JSON Web Token - Introduction - 웹해킹 / JWT

JWT와 관련된 20점짜리 웹해킹 문제 JWT는 JSON Web Token 의 약자로 선택적 서명 및 선택적 암호화를 사용하여 데이터를 만들기 위한 표준을 말한다. 웹에서 사용자 인증을 할때 사용한다. 이번 문제의 목표는 admin 권한으로 접근하는 것이다. 문제페이지에 접근하면 이렇게 로그인 창이 뜬다. 일단 기능을 좀 살펴보기 위해 아래쪽에 있는 Login as Guest! 버튼을 눌러 Guest 계정으로 로그인을 해보았다. 로그인을 하면 이렇게 Welcome guest to this website! :) 라는 문구가 뜬다. 문제페이지의 쿠키값을 확인해봤다. jwt 라는 이름의 쿠키에 base64로 인코딩된 값이 들어있는게 보인다. eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.e..

워게임/Root Me 2022.07.06

[Root Me] ELF C++ - 0 protection - 리버싱 / IDA / GDB

C++ 리버싱 문제 C++ 리버싱은 처음 해본거 같은데 생각보다 어려워서 놀랐다. C 랑 큰 차이 없지 않을까 생각하고 시작했다가 큰코다쳤다.. 문제의 목표는 올바른 password를 찾는것이다. 문제파일로 주어지는 것은 ch25.bin 파일이다. 먼저 프로그램을 실행시켜 보았다. 터미널에서 ./ch25.bin 이라고 입력하면 실행이 되는데 그냥 실행시켰더니 usage : ./ch25.bin password 라면서 사용법이 출력된다. ./ch25.bin hello 라고 password를 인자로 넣어서 실행시켜 주니 비밀번호가 틀렸다는 안내 문구가 출력된다. IDA 라는 디스어셈블러를 이용해서 ch25.bin 파일을 열어보았다. c로 만들어진 프로그램이라면 오른쪽에 깔끔하게 어셈블리어가 잘 보이는데 c++..

워게임/Root Me 2022.06.30

[Root Me] Flash - Authentication - 웹해킹 / FFDEC

이제는 고인이 되어버린 Flash 관련된 문제 Flash가 아직 서비스 중일때는 쉽게 풀 수 있는 문제였을거 같은데 Flash가 안되는 상황에서 풀려니 조금 난이도가 있었다. 문제의 목표는 validation code를 찾는것이다. 문제페이지에 접속하면 이런 화면이 나온다. 원래는 웹페이지 안에 플래시가 삽입되어서 보여지는듯 했으나 플래시 지원이 종료되면서 흔적만 남은 모습이다.. Flash는 보안 취약점으로 인한 악성코드 유포 도구로 사용되어서 2020년 12월 31일 부로 지원이 종료되었다. 해당 페이지에서 f12를 눌러 개발자도구를 실행시켜 본다. 요소 탭을 확인해보면 중간에 태그가 있다. 태그 안의 내용을 보면, value 값이 dbbcd6ee441aa6d2889e6e3cae6adebe 와 다르면..

워게임/Root Me 2022.06.28

[Root Me] Insecure Code Management - 웹해킹/ Directory Listing / git

20점짜리 웹해킹 문제 이 문제는 깃(git)과 관련된 문제이다. git은 소스코드의 변경사항을 추적하고 여러 사용자들간 작업을 조율하기 위한 버전관리 시스템이다. 문제의 목표는 admin 계정의 비밀번호를 알아내는 것이다. 문제페이지에 접속하면 이렇게 로그인 창만 덩그러니 있다. 당연히 그냥 로그인이 안되고, 비밀번호를 알아야만 로그인 할 수 있다. 개발자가 Git을 사용해서 웹을 개발할 경우, 각종 설정파일들이 .git 폴더 내에 저장이 된다. 만약 이 .git 디렉토리에 대한 접근 권한을 제대로 설정하지 않으면 위에서 보이는것처럼 URL 맨 뒤에 .git/ 이라고 입력했을때 Directory Listing 취약점이 발생한다. 디렉토리 리스팅 취약점은 서버 내의 모든 디렉토리와 파일 목록을 공격자가 ..

워게임/Root Me 2022.06.25

[Root Me] PE x86 - 0 protection - 리버싱 / Ollydbg

Root Me 에서 제공하는 세번째 리버싱 문제 이번 문제는 greHack CTF 2012 해킹대회에서 실제 출제되었던 문제라고 한다. 앞에서 풀었던 두 문제는 ELF 파일이었는데, 이번에는 PE 파일이 주어진다. PE 파일은 Portable Executable의 약자로 그냥 우리가 흔히 보는 윈도우에서 실행 가능한 EXE 파일이다. 문제의 목적은 주어지는 프로그램의 password를 알아내는 것이다. 이것이 문제에서 주어지는 ch15.exe 파일이다. 해당 프로그램은 윈도우의 cmd 창을 이용해서 실행시킬 수 있다. 프로그램이 저장된 경로에서 ch15.exe 라고 입력해봤더니 Usage : ch15.exe pass 라면서 사용법을 알려준다. pass 자리에 비밀번호를 넣으면 되는것이다. 알려준 사용법대..

워게임/Root Me 2022.06.22

[Root Me] ELF x86 - Basic - 리버싱 / IDA

Root Me의 두번째 리버싱 문제 아직까지는 아주 쉬운 문제이다. 문제 설명을 보면 Find the validation password. 라고 적혀있다. 제목부터 Basic 이니 비밀번호는 아주 쉽게 찾을 수 있다. 문제파일로 ch2.bin 파일이 주어지는데 해당 파일을 HxD 프로그램으로 열어보면 문제 제목에서도 나온것처럼 ELF 파일인것을 확인할 수 있다. 뒤에 오는 x86은 32bit 환경에서 만들어진 프로그램임을 알려준다. 리눅스 환경에서 file ch2.bin 명령어를 통해서도 확인이 가능하다. ELF 파일은 리눅스에서 실행 가능한 EXE 파일같은거라고 생각하면 된다. 실험삼아 ./ch2.bin 명령어로 프로그램을 실행시켜 보았다. username: 이라고 출력되면서 사용자 입력을 받는데 he..

워게임/Root Me 2022.06.18

[Root Me] ELF x86 - 0 protection - 리버싱 / IDA

Root Me에서 제공하는 첫번째 리버싱 문제 아무래도 첫번째 문제이기때문에 아주 쉽다.(배점도 5 point 밖에 안된다.) 제목도 참 정직하다. 문제파일로 ch1.bin 파일이 주어지는데 해당 파일을 HxD 프로그램을 이용해 열어보면 ELF 파일인것을 확인할 수 있다. 제목의 ELF 뒤에 오는 x86은 32bit 환경에서 동작하는 프로그램임을 알려주고, 0 protection은 말 그래도 아무런 보안조치도 되지 않은 프로그램 이라는 뜻이다. 리눅스 환경에서 file ch1.bin 명령어를 통해서도 확인할 수 있다. ELF 파일은 리눅스에서 실행 가능한 EXE 파일같은거라고 생각하면 된다. 실험삼아 ./ch1.bin 해서 프로그램을 실행시켜 봤다. Veuillez entrer le mot de pass..

워게임/Root Me 2022.06.16

[Root Me] HTTP - Cookies - 웹해킹 / 쿠키변조

20점짜리 HTTP - Cookies 문제 난이도(레벨)을 보면 중간으로 표시되어있는데 사실 이 문제는 굉장히 쉬운 문제이다. Bob 이라는 사람이 사용자 이메일을 수집하기 위해 PHP 스크립트를 작성했다고 한다. 문제페이지에 접속하면 이렇게 Email을 입력하는 칸이 있다. 시험삼아 test@test.com 이라고 입력하고 send 버튼을 눌러보니 Email saved 라는 문구가 출력이됐다. Saved email adresses 버튼을 눌러보니 You need to be admin 이라는 문구가 출력됐다. 해당 내용은 admin만 확인이 가능한 것 같다. f12를 눌러 개발자 도구를 통해 HTML 내용을 살펴보니 중간에 주석으로 처리된 SetCookie("ch7", "visiteur"); 부분이 보였..

워게임/Root Me 2022.06.09

[Root Me] File upload - MIME type - 웹해킹 / WebShell

두번째 파일 업로드 취약점 문제 (지난문제 : https://hackingstudypad.tistory.com/153) 파일 업로드 취약점이란 인가 받지 않은 악성 파일을 공격자가 웹 서버에 업로드하여 시스템 권한을 획득할 수 있는 취약점을 말한다. 보통 웹쉘(WebShell)이라는 것을 만들어서 업로드를 하는데 웹쉘을 업로드하게 되면 웹 페이지를 통해 운영체제 명령어까지 입력할 수 있게 되기 때문에 아주 위험한 취약점이다. 보통 개발자들이 .asp, .php, .jsp 이런 확장자를 업도르 하지 못하게 막아놓는데, 그 이유가 저런 확장자들이 서버에 업로드 될 경우, 서버의 일부로 동작이 되면서 웹쉘로서 기능을 하기 때문이다. 이번 문제역시 저번처럼 php로 작성된 웹쉘을 업로드 하고, 서버 내부에 있는..

워게임/Root Me 2022.06.08

[Root Me] File upload - Double extensions - 웹해킹 / WebShell

20점 짜리 웹해킹 문제 파일 업로드 취약점과 관련이 있따. 파일 업로드 취약점이란 인가 받지 않은 악성 파일을 공격자가 웹 서버에 업로드하여 시스템 권한을 획득할 수 있는 취약점을 말한다. 보통 웹쉘(WebShell)이라는 것을 만들어서 업로드를 하는데 웹쉘을 업로드하게 되면 웹 페이지를 통해 운영체제 명령어를 입력할 수 있게 되기 때문에 아주 위험한 취약점이다. 보통 개발자들이 .asp, .php, .jsp 이런 확장자를 업도르 하지 못하게 막아놓는데, 그 이유가 저런 확장자들이 서버에 업로드 될 경우, 서버의 일부로 동작이 되면서 웹쉘로서 기능을 하기 때문이다. 문제 페이지에 접속하면 이런 화면이 나온다. emotes, apps, devices, categories, actions 이런 주제의 이모..

워게임/Root Me 2022.05.27
반응형