Dreamhack baby-linux 문제 풀이 1. 문제 설명리눅스 명령어를 사용하는 페이지가 있고, flag.txt를 찾아 flag를 획득하면 될 것 같다. 2. 문제 풀이먼저 주어진 파일에서, flag라는 문자열이 들어가있으면 no라고 뜨게 된다. cat flag.txt로 시도해본다. 결과는 No!가 출력되고, ls로 hint.txt도 존재함을 확인하여 cat hint.txt를 입력해본다. flag.txt의 상위 폴더가 나와서 ls 명령어로 있는지 확인한다. 실제로 flag.txt가 존재함을 확인하였다. ./dream/hack/hello에 있는 flag.txt를 열어야하는데, flag라는 문자열이 들어가면 필터링 되므로 *.txt로 우회하여 cat 명령어를 사용한다. 정상적으로 flag가 출력됨을 확인할 수 있다. 3. 문제 정리linux 명령어.. Dreamhack 64se64 문제 풀이 1. 문제 설명소스코드를 확인하여 문제를 풀이하면 flag가 출력된다고 한다. 2. 문제 풀이주어진 파일에 누가봐도 수상한 value 값이 존재한다. Base64로 인코딩된것 같다. Base64로 value값을 디코딩하니 파이썬 코드가 하나 나온다. 주어진 코드를 복사하여 실행시켜보자. 정상적으로 flag가 출력됨을 확인할 수 있다. 3. 문제 정리간단하게 Base64 decoding을 통해서 python 코드를 얻어내고, 그 코드에서 flag값을 획득할 수 있었다. Dreamhack Exercise: Welcome-Beginners 문제 풀이 1. 문제 설명Dreamhack을 입력하여 flag를 획득하면 되는 쉬운 문제이다. 2. 문제 풀이먼저 주어진 clang 파일을 실행시켜서 Dreamhack이라고 입력했을때, 코드가 작동하는지 확인하였다. 서버를 드림핵 문제페이지에서 동작시킨 후, nc 명령어를 통해 주어진 포트와 홈페이지 주소로 접속한다.nc (사이트 주소) (포트) Dreamhack이라고 입력하여 flag를 획득한다. 3. 문제 정리nc 명령어를 통해 서버에 접속하여 flag 값을 획득하면 되는 문제였다. 간단하게 풀이할 수 있으며, nc 명령어만 사용할 수 있으면 된다. Dreamhack Wargame Tutorial 문제 풀이 1. 문제 설명문제 설명을 읽어보니 3초만에 풀릴 것 같다. 2. 문제 풀이flag.txt를 열어 flag값을 확인한다. 3. 문제 정리튜토리얼답게 아주 쉬운 문제이다. 웹 위주로 푸느라 발견을 못하고 있다가 발견해서 후딱 풀어보았다. Dreamhack simple_sqli_chatgpt 문제 풀이 1. 문제 설명SQL Injection 취약점을 이용하여 flag를 획득하면 되는 간단한 문제이다. 2. 문제 풀이먼저 주어진 페이지에 접속하면 위와같이 간단한 로그인만 할 수 있는 창이 뜬다. 주어진 파일을 읽어보다보면, userid == 'admin' and userlevel == 0일때 flag를 획득할 수 있는 것처럼 보인다. 먼저 간단하게 userlevel에 0을 집어 넣었을때, guset로 로그인되는 것을 확인할 수 있다. userlevel이 0이면서 userid도 admin으로 처리하려면, 간단하게 AND 구문을 시도해보면 될 것 같다. userlevel을 받는 칸이기 때문에 0'으로 userlevel은 0, AND userid='admin을 통해 작은 따옴표를 닫지 않음으로써 작은 따옴표의.. Dreamhack XSS Filtering Bypass 문제 풀이 1. 문제 설명XSS Filtering Bypass 문제라고 한다. 아무래도 필터링을 우회하는 문제이지 않을까 싶다. 2. 문제 풀이드림핵 웹문제의 기본적인 홈페이지 틀을 따라간다. vuln(xss)를 클릭하였을때 위와 같이 나타난다. 이미지가 깨져서 나온다. memo를 눌렀을때 위와같이 hello라고 뜬다. 아무래도 이 메모창에 flag값을 띄워야 하는것으로 보인다. flag를 누르면 역시 기존 문제들과 같이 스크립트를 입력할 수 있게 되어있다. script, on, javascript라는 구문이 들어가있으면, 필더링하여 공백으로 치환해주는 것을 확인할 수 있다. 그렇다면 이 우회를 이용한다. 처럼 flag 값을 띄울 수 있는 구문을 먼저 작성해주고 document.locatioonn.href='/me.. Dreamhack image-storage 문제 풀이 1. 문제 설명 파일 업로드 취약점을 이용하여 flag 값을 얻으면 되는 문제다. php파일을 업로드 하여 해결하면 될 것처럼 보인다. 2. 문제 풀이 간단한 페이지가 하나 뜬다. List를 눌러보았을 때 아무것도 뜨지 않는데, 파일을 업로드하면 뜰 것 같다. 업로드 페이지는 파일을 업로드 할 수 있도록 구성되어 있다. upload.php 파일을 보았을 때, 딱히 확장자 제한같은게 없는 모습이다. 이런 경우 php파일을 그냥 업로드 하면 될 것이라고 생각한다. 라는 php 구문을 사용하고, system 명령어를 통해 /flag.txt를 cat하면 될 것 같다. test.php로 저장하자. 파일을 업로드 하였을 때, 정상적으로 업로드 되었다고 나타난다. 다시 List로 들어가면, 업로드한 tes.. Dreamhack csrf-2 문제 풀이 1. 문제 설명 csrf 취약점을 이용하여 flag 값을 획득하는 문제이다. 이전에 풀어본 csrf 문제와 비슷하게 풀이하면 문제가 손쉽게 풀릴 것으로 생각한다.밑 링크는 csrf-1 문제 풀이이다. Dreamhack csrf-1 문제 풀이1. 문제 설명csrf 취약점을 이용하여 FLAG값을 얻어내는 문제이다. 기존에 풀이했었던 xss와 동일한 방식으로 생각해보면 되지 않을까 싶다. 2. 문제 풀이간단하게 기존 Web 문제랑 동일한 형식으로mori.ee 2. 문제 풀이 위와 같이 드림핵에서 제공하는 웹해킹의 기본적인 홈페이지 틀이다. vuln(csrf)를 클릭했을 때, 위와 같이 나타나는데, script가 *로 치환된 것을 확인할 수 있다. 위 소스코드를 잘 보면 change_password부분이 있.. Dreamhack csrf-1 문제 풀이 1. 문제 설명csrf 취약점을 이용하여 FLAG값을 얻어내는 문제이다. 기존에 풀이했었던 xss와 동일한 방식으로 생각해보면 되지 않을까 싶다. 2. 문제 풀이간단하게 기존 Web 문제랑 동일한 형식으로 페이지가 구성되어 있음을 확인 가능하다. vuln(csrf) page를 눌러보면 script가 필터링 된거 같이 나온다. 즉 script를 사용하지 못하는 것 같다. 앞선 문제들 처럼 memo 페이지에 FLAG값을 출력하면 될 것 같다. notice_flag는 Access Denied가 뜨면서 접근이 불가능하다.소스코드를 살펴보자.#!/usr/bin/python3from flask import Flask, request, render_templatefrom selenium import webdriver.. Dreamhack xss-2 문제 풀이 1. 문제 설명예전에 풀었던 xss-1 문제랑 비슷하게 풀이하면 될 것으로 판단된다.xss-1 문제는 하단 링크를 참조 Dreamhack xss-1 문제 풀이1. 문제 설명XSS 취약점 이용, flag.txt와 FLAG 변수에 플래그 값이 있음을 확인한다. 2. 문제 풀이from flask import Flask, request, render_templatefrom selenium import webdriverfrom selenium.webdriver.chrome.service import Serviceimmori.ee 2. 문제 풀이가장 먼저 app.py 파일을 다운로드 받아 확인해봤는데, xss-1 문제와 별반 다를바가 없다.처음 홈페이지에 들어 왔는데, vuln?param=가 먹히지 않음을 확인하였.. Dreamhack simple_sqli 문제 풀이 1. 문제 설명SQL Injection 취약점을 이용하여 Flag 값을 획득하면 되는 문제이다. 2. 문제 풀이첫 화면에는 로그인 버튼만 놓여 있다. 코드를 먼저 살펴보자. id와 pw가 전부 guest라는 계정과 admin과 비밀번호가 난수인 계정 두개가 존재한다. 하단에 query_db를 보면 userid와 userpassword를 처리하는 부분이 있는데, 이 부분에서 비밀번호 부분을 주석처리한다면, 쉽게 뚫릴것 같다. admin"--로 비밀번호 부분은 무시해주면서 userid에는 admin이 들어가게 해주고, 비밀번호에는 아무 글자나 입력한다. 그리고 나서 엔터를 눌러 로그인을 시도하면 정상적으로 FLAG 값이 출력됨을 확인할 수 있다. 3. 정리엄청 간단한 문제였다. 비밀번호 부분을 주석으로 처리.. Dreamhack web-misconf-1 문제 풀이 1. 문제 설명기본 설정을 사용한 서비스다. 흠... 당최 이해가 되지 않는다. 문제에 한번 부딫혀보자. 2. 문제 풀이Grafana라는 모니터링용 프로그램이 실행되는 모습이다. admin에 admin이 Default인 경우가 많으니 한번 접속해보자. 접속이 됐다. 그러면 Organization에 숨겨진 flag만 찾으면 될 것 같다. 이것저것 찾다 보니 Server admin의 setting에 org_name이 flag로 설정된 것을 확인할 수 있다. 3. 정리간단하다. 출제자의 의도는 default 계정을 사용하지 말자 같은데... 문제가 쉽게 풀렸다. 이전 1 2 3 다음