๋ฐ์ํ ์ ์ฒด ๊ธ50 [Dreamhack] Level2: Mango ๐๏ธAccess ์ด ๋ฌธ์ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋ ํ๋๊ทธ๋ฅผ ํ๋ํ๋ ๋ฌธ์ ์ด๋ค. flag๋ admin ๊ณ์ ์ ๋น๋ฐ๋ฒํธ์ด๋ค. ํ๋๊ทธ์ ํ์์ DH{…} ์ด๋ค. {‘uid’: ‘admin’, ‘upw’: ‘DH{32alphanumeric}’} ๐พExploit Algorithm & Payload ๋๋ณด๊ธฐ const express = require('express'); const app = express(); const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/main', { useNewUrlParser: true, useUnifiedTopology: true }); const db = mongoose.connection; // fl.. 2023. 8. 23. [Dreamhack] Level1: simple_sqli ๐๏ธAccess ๋ก๊ทธ์ธ ์๋น์ค์์ SQL injection ์ทจ์ฝ์ ์ ํตํด ํ๋๊ทธ๋ฅผ ํ๋ํ๋ ๋ฌธ์ ์ด๋ค. ํ๋๊ทธ๋ flag.txt, FLAG ๋ณ์์ ์๋ค. ๐พExploit Algorithm & Payload ๋๋ณด๊ธฐ #!/usr/bin/python3 from flask import Flask, request, render_template, g import sqlite3 import os import binascii app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open('./flag.txt', 'r').read() except: FLAG = '[**FLAG**]' DATABASE = "database.db" if os.path.exists.. 2023. 8. 22. [Dreamhack] Level2: shell_basic ๐๏ธAccess ์ ๋ ฅํ ์ ธ์ฝ๋๋ฅผ ์คํํ๋ ํ๋ก๊ทธ๋จ์ด ์๋น์ค๋ก ๋ฑ๋ก๋์ด ์๋ํ๊ณ ์์ต๋๋ค. main ํจ์๊ฐ ์๋ ๋ค๋ฅธ ํจ์๋ค์ execve, execveat ์์คํ ์ฝ์ ์ฌ์ฉํ์ง ๋ชปํ๋ฉฐ, ํ์ด์ ๊ด๋ จ์ด ์์ต๋๋ค. flag ํ์ผ์ ์์น์ ์ด๋ฆ์ /home/shell_basic/flag_name_is_loooooong์ ๋๋ค. ๐พ Exploit Algorithm & Payload ๋๋ณด๊ธฐ // Compile: gcc -o shell_basic shell_basic.c -lseccomp // apt install seccomp libseccomp-dev #include #include #include #include #include #include #include #include #include void alarm.. 2023. 8. 22. [Dreamhack] Level1: csrf-2 ๐๏ธAccess ์ฌ๋ฌ ๊ธฐ๋ฅ๊ณผ ์ ๋ ฅ ๋ฐ์ URL์ ํ์ธํ๋ ๋ด์ด ๊ตฌํ๋ ์๋น์ค์์ CSRF ์ทจ์ฝ์ ์ ์ด์ฉํด ํ๋๊ทธ๋ฅผ ํ๋ํ๋ ๋ฌธ์ ์ด๋ค. ๐พExploit Algorithm & Payload ๋๋ณด๊ธฐ #!/usr/bin/python3 from flask import Flask, request, render_template, make_response, redirect, url_for from selenium import webdriver import urllib import os app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open("./flag.txt", "r").read() except: FLAG = "[**FLAG**]" users =.. 2023. 8. 21. ์ด์ 1 ยทยทยท 8 9 10 11 12 13 ๋ค์ ๋ฐ์ํ