반응형

해킹대회 617

[ImaginaryCTF] ret2win - 포너블 / 버퍼오버플로우

오랜만에 써보는 포너블 문제 포너블은 왠지 모르게 손이 잘 안가는거 같다.. 어려워서 그런가.. 이번 문제는 간단해서 쉽게 풀었다. 문제파일로 바이너리 파일인 vuln과 소스코드인 vuln.c 파일이 주어진다. 그리고 실제 접속해서 문제를 풀어야 하는 문제서버 주소(ret2win.chal.imaginaryctf.org 1337) 도 같이 주어진다. 우선 어떤 프로그램인지 테스트 해보기 위해 문제 서버에 한번 접속해봤다. 접속하면 Can you overwrite the return address? 라고 하면서 사용자의 입력을 받는다. aaaa 라고 시험삼아 입력해봤는데, 별다른 반응없이 retrun 주소를 출력하면서 프로그램이 종료된다. #include #include int win() { FILE *fp..

CTF/포너블 2022.07.22

[Root Me] PHP - register globals - 웹해킹 / 백업파일

PHP register globals 와 관련된 웹해킹 문제 register globals 는 php 설정파일인 php.ini 파일에 있는 옵션 중 하나인데 이 값이 만약 on 으로 설정되어 있을경우, 외부에서 GET 이나 POST로 전달된 값들이 자동으로 php 변수로 바뀌게 된다. 문제 설명에 힌트가 살짝 적혀있다. 개발자들은 종종 백업파일을 남겨놓는다고 한다. 문제페이지에 접속하면 이렇게 비밀번호 입력하는 창이 나온다. 개발자가 남겨둔 백업파일을 먼저 찾아본다. 보통 백업파일은 파일명 뒤에 .bak 이런식으로 저장하는 경우가 많다. 주소창 맨 뒤에 index.php.bak 이라고 입력해보면 이렇게 백업파일이 자동으로 다운로드 된다. 아이콘은 한글파일인데 무시해도 된다.

워게임/Root Me 2022.07.20

[Root Me] PHP - Filters - 웹해킹 / LFI / PHP wrapper

PHP Filters 와 관련된 웹해킹 문제 이전에도 실제 대회에서 비슷한 문제를 다뤄본 적이 있다. (https://hackingstudypad.tistory.com/143) 문제의 목표는 admin의 비밀번호를 알아내는 것이다. 문제 페이지에 처음 접속하면 이런 화면이 나온다. 페이지 기능을 살펴보기 위해 일단 눈에 보이는 버튼을 눌러봤다. home 버튼을 눌렀더니 URL에서 inc 변수로 accueil.php 페이지를 불러오는걸 볼 수 있었다. 두번째로 login 버튼을 눌러봤더니 이번에도 URL에서 inc 변수로 login.php 페이지를 불러오고 있었다. inc 변수가 핵심인거 같아서 이번엔 inc 변수에 임의로 hello 라고 적어보았다. 그랬더니 에러가 나는데, 에러 내용을 살펴보면 서버에서..

워게임/Root Me 2022.07.18

[CTFlearn] Where Can My Robot Go? - 웹해킹 / robots.txt

CTFlearn의 다섯번째 문제 드디어 풀이수가 2만명 이하로 떨어졌다. 출제자는 문제를 MISC로 분류했지만(Miscellaneous) 굳이 따지자면 웹해킹이랑 관련있는거 같아 웹해킹으로 포스팅을 적는다. 이 문제는 제목이랑 설명에서 부터 큰 힌트가 있다. Where Can My Robot Go? Where do robots find what pages are on a website? 아마 티스토리 하시는 분들이라면 익숙한 단어일 것이다. 이 문제는 robots.txt 를 이용해 푸는 문제이다. 네이버 서치어드바이저에 있는 바로 그 robots.txt이다. robots.txt는 로봇 배제 표준이라고 해서 웹 사이트에 로봇이 접근하는 것을 방지하기 위한 일종의 규약이다. 검색엔진들이 내 웹페이지를 마구마..

워게임/CTFlearn 2022.07.17

[TenableCTF] The One with a Lot of Cats - 포렌식 / FTK Imager

간단한 포렌식 문제이다. 문제에 그 어떤 설명도 없다. 문제파일로 주어지는것은 ctf.img 파일이다. .img 확장자를 가지는 파일은 흔히 생각하는 그림파일의 그 이미지가 아니다. 이건 디스크 이미징 파일로 하드디스크 같은 저장매체를 그대로 덤프뜬 파일을 말한다. 실제로 파일 아이콘을 보면 저렇게 CD 모양이 가운데 있는것을 볼 수 있다. 이런 이미지 파일들은 FTK Imager 라는 도구를 이용해 열어볼 수 있다. FTK Imager 를 실행시킨 후 Add Evidencd Item 버튼을 눌러 Image File을 선택해준다. Select File에서 문제에서 주어진 ctf.img 파일을 선택해주고 Finish 버튼을 눌러주면 된다. 그럼 이렇게 이미지 파일이 로드되면서 ext4 파일시스템을 사용하는..

CTF/포렌식 2022.07.16

[Root Me] PHP - assert() - 웹해킹 / Command Injection

PHP의 assert() 함수와 관련된 웹해킹 문제 assert() 함수는 프로그래머가 예상치 못한 예외처리를 하기 위해서 사용되는 함수이다. 이번 문제에서는 assert() 함수의 취약점을 이용해 .passwd 파일의 내용을 읽으면 된다. 문제페이지에 접속했을때 화면이다. 비밀이 어디있는지 못찾을것이라며 사악한 웃음을 짓고있다.. 메뉴처럼 생긴 Home, About, Contact 버튼을 각각 눌러보면 URL이 누를때마다 바뀌는 것을 볼 수 있다. URL에서 ? 뒤에오는것은 변수라고 생각하면 된다. 문제페이지에서는 page 변수에 각각의 페이지 이름을 담아서 페이지를 불러오고 있다. 보통 이렇게 page 를 변수로 받아오는 환경에서 LFI(Local File Inclusion) 취약점이 발생한다. 그래..

워게임/Root Me 2022.07.14

[CTFlearn] Taking LS - 포렌식 / Linux / 숨김파일

두번째 포렌식 문제 아직까진 2만명이나 푼걸보니 할만한것 같다. 문제 제목으로 보아 뭔가 리눅스의 ls 명령어와 관련된 문제인듯 하다. 문제 설명을 읽어보면 zip 파일을 받아서 숨겨져 있는 플래그를 찾으면 된다고 한다. 문제에서 주어진 링크로 들어가면 The Flag.zip 파일을 받을 수 있다. 리눅스 환경에서 zip 파일 압축을 풀어보면 이렇게 The Flag 폴더 안에 __MAXOSX 폴더와 The Flag 폴더가 있는것을 볼 수 있다. The Flag 폴더로 들어가보면 The Flag.pdf 파일이 있는것이 보이는데 pdf 파일을 열려고 하면 이렇게 비밀번호가 걸려있어 내용을 볼 수가 없다. 이번엔 터미널을 실행시켜서 확인해본다. The Flag/The Flag 경로로 접근해서 ls 명령어를 입..

워게임/CTFlearn 2022.07.13

[TenableCTF] Top Secret - 포렌식 / PDF / Strings / Base64

pdf 파일과 관련된 포렌식 문제 문제 설명을 읽어보면, classified documnet를 유출했는데, 가려진 프로젝트의 이름을 알아낼 수 있겠냐고 물어본다. 문제파일로 주어지는것은 sf703.pdf 파일이다. pdf 파일을 열어보면 이렇게 한장짜리 문서가 나온다. 유출한 TOP SECRET 문서인데 가운데에 보면 Project : 라고 되어있어 프로젝트의 이름을 알 수가 없는 상태이다. sf703.pdf 파일을 리눅스 환경으로 옮겨 strings 명령어를 이용해 살펴본다. strings 으로 입력하면 해당 파일 내에 사람이 읽을 수 있을법한 문자열들을 출력해 준다. 출력된 결과를 내리다보면 눈에 띄는 부분이 있다. 24번 오브젝트에 가보면 뭔가 이렇게 길게 Base64로 인코딩된 문자열이 나오게 된..

CTF/포렌식 2022.07.12

[HSCTF9] squeal - 웹해킹 / SQL Injection

정말 간단한 SQL Injection 문제 문제 제목부터 SQueaL 이라고 힌트를 주고 있어서 어떤 공격 기법으로 접근해야 하는지 쉽게 알 수 있다. 문제 설명을 읽어보면 super secret 사이트에 admin 으로 접속할 수 있겠냐고 물어본다. 해킹 대회에서 super secret 이라는 수식어가 붙으면 무조건 아주 취약하다는 의미이다. 이번 문제는 문제페이지 주소와 함께 소스코드도 같이 주어진다. 문제페이지에 접속했을때의 화면이다. 간단한 로그인 페이지가 보인다. 시험삼아 ID, 비밀번호에 123 / 123 이라고 입력해봤는데 위에 Incorrect username or password 라는 알림창이 뜬다. 사실 여기서 바로 문제를 풀 수 있지만 소스코드가 제공되었으니 예의상 한번 봐준다. co..

CTF/웹해킹 2022.07.11

[Root Me] Directory traversal - 웹해킹

25점짜리 웹해킹 문제 Photo galery 라는 웹페이지가 주어지는데 여기서 hidden section을 찾으면 되는 문제이다. 문제페이지에 접속하면 이렇게 이모티콘들이 카테고리별로 모여있는것을 볼 수 있다. 기능을 살펴보기 위해 웹페이지에서 이것저것 눌러봤는데 중요한 변화를 눈치챘다. 위처럼 emote 카테고리를 선택하면 URL이 galerie=emotes 라고 맞춰서 바뀌고, devices 카테고리를 선택하면 URL이 galerie=devices 로 맞춰서 바뀌는 것이다. 문제 컨셉이 Directroy Traversal 이니 어떻게 접근해야할까 생각하다가 만약 아무것도 입력안한다면? 이라는 생각이 들었다. galerie= 이라고 galerie 변수에 아무런 값도 입력하지 않으니 아래처럼 나왔다. ..

워게임/Root Me 2022.07.09
반응형