반응형

웹해킹 109

[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

[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

[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

[HSCTF9] gallery - 웹해킹 / LFI

쉬운 난이도의 웹해킹 문제였다. 문제 페이지 주소와 함께 문제 소스파일도 같이 주어지는데 약간의 센스만 있다면 사실 소스 안보고도 충분히 풀 수 있는 문제이다. 문제페이지에 들어가면 나오는 화면이다. 문제 제목인 Gallery에 맞게 각종 사진들을 볼 수 있다. f12를 눌러 개발자도구로 메인페이지 HTML 코드를 살펴보았다. 각종 이미지들을 서버에서 가져올때 URL에 /image 경로에서 ?image= 변수에 이미지 파일 이름을 지정해서 가져오는 방식인 것을 확인했다. (URL에서 ? 뒤에 오는것은 변수라고 보면 된다.) 만약 URL에 ?image= 을 입력하는것이 아니라 서버에 있는 다른 파일이름을 입력한다면? 만약 적절하게 필터링이 되어있지 않을 경우 서버에 존재하는 아무 파일이나 가져와서 읽을 수..

CTF/웹해킹 2022.07.07

[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

[HeroCTF] SmallMistakeBigMistake - 웹해킹 / 쿠키변조 / Flask

간단한 웹해킹 문제 이전에도 비슷한 문제를 다룬적이 있었다. (https://hackingstudypad.tistory.com/95) 문제 설명을 읽어보면 웹 개발자들이 코드에서 작은 실수를 했는데 혹시 그걸 찾아서 exploit을 해 플래그를 획득할 수 있는지 물어본다. 문제페이지 주소와 함께, 웹 소스코드도 같이 주어진다. 먼저 문제페이지에 접속했을때 화면이다. 다짜고짜 You are not admin! 이라는 문구가 출력된다. 대체 왜 이런 문구가 출력되는지 소스를 확인해본다. #!/usr/bin/env python from flask import Flask, session, render_template from string import hexdigits from random import choic..

CTF/웹해킹 2022.07.05

[CTFlearn] Basic Injection - 웹해킹 / SQL Injection

그동안 포스팅 하면서 워게임은 너무 Root Me 문제만 풀이한것 같아 새로운 워게임을 하나 찾아보았다. CTFlearn(https://ctflearn.com/) 이라는 사이트이고 해킹대회 연습용 문제들이 많이 올라와있다. 첫번째 문제는 웹해킹 문제이다. 39779 명이나 문제를 푼 걸 보면 엄청나게 쉬운 문제이듯 한다. 문제소스는 따로 주어지지 않고, 문제 페이지 주소만 주어진다. link 버튼을 눌러 접속할 수 있다. 문제 페이지에 접속하면 이런 화면이 나온다. Input : 밑에 사용자가 입력할수 있는 폼이 하나 있고, 아래쪽에는 사용자의 입력값을 받아 데이터베이스로 전달하는 SQL 구문이 그대로 출력되어 보인다. 예를들어 Input 에 HELLO 라고 입력하면 아래쪽 SQL 구문에 SELECT *..

워게임/CTFlearn 2022.07.02

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

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

워게임/Root Me 2022.06.28

[HouseplantCTF] Pie generator - 웹해킹 / 패킷변조

이 문제는 대회 당시 pwn(포너블)로 분류가 되어 있었는데. 아무리 생각해도 포너블 보다는 웹 분야의 문제가 맞는거 같아서 웹해킹으로 분류하였다. 따로 소스코드가 제공되지는 않고, 문제 페이지 주소만 제공이 된다. 문제페이지에 접속하면 이런 화면이 나온다. Feel free to guess my next number :3 라는 문구와 함께 숫자를 입력할 수 있는 칸이 나온다. 시험삼아서 12를 입력해봤는데 자기들 숫자는 90 이었다면서 틀렸다고 안내한다. 이렇게 매번 실행할때마다 맞춰야 하는 숫자가 달라진다. f12를 눌러서 개발자 도구를 확인해보면 스크립트를 확인할 수 있다. document.getElementById("ts").value=(Date.now() / 1000000); 이렇게 적혀있는데 ..

CTF/웹해킹 2022.06.26
반응형