목록분류 전체보기 (7)
ash3r & dmawhwhd

Web 1. Calc. from flask import Flask, render_template, render_template_string, request import re app = Flask (__name__) @app.route('/') def calc(): expression = request.args.get('expression') filters = ["'","\"","_","[","]",",","`","sys","os","flag","%","class","config","self","\\"] request.args = None try: for filter in filters: if filter in expression: raise Exception("filterd") result = rende..

Misc - query-master #!/usr/bin/python3 import random import string import subprocess def randName(): return ''.join([random.choice(string.hexdigits) for i in range(16)]) dbpath = f'/tmp/{randName()}.db' query = input("Query >> ") ban = ['.', 'lo', ';'] for x in ban: if x in query: print("Filtered..") exit() proc = subprocess.Popen(["sqlite3", dbpath, query], stdout=subprocess.PIPE) (out, err) = ..
Profile 👨💻 Seungjun Kim (ash3r & dmawhwhd) Nationality : South Korea Birth : 2004 Working now at Enki (2022.12.5 ~ now) Affiliation 🎓 Education sunrin internet high school 서울여자대학교 정보보호영재교육원 CTF Team Super Guesser Awards 🏆 2022 1st, 사이버 가디언즈 경진대회 2022 1st, Whitehat Contest 2022 1st, The Hacking Championship Junior 2022 1st, JBU CTF 2022 3rd, codegate 2022 2022 3rd, 사이버공격방어대회 2022 1st, 모의 해킹 방어대회..

Wacon 예선에서는 풀지 못 했지만 문제 퀄리티가 모두 좋아서 못 푼 것이 아쉬워 풀어봤습니다. 분석했을 때 attack gadget을 찾지 못해서 풀지 못 했는데 끝나고 여쭤봤고 그 방법으로 공부하여 풀어보았습니다. #!/usr/bin/env node const express = require('express') const childProcess = require('child_process') const app = express() const saved = Object.create(null) const config = {} const merge = function(t, src) { for(var v of Object.getOwnPropertyNames(src)) { if(typeof(src[v]) =..

";if (Check($_POST["url"])) { $url = escapeshellarg($_POST["url"]); $cmd = "/usr/bin/curl ${url} --output - -m 3 --connect-timeout 3"; echo "your command: " . $cmd . ""; $res = shell_exec($cmd);} else { die("error~");}if (strpos($res, $_SESSION["uuid"]) !== false) { echo $res;} else { echo "you cannot get the result~";} 서버 코드인데 curl 요청을 보내줍니다. 하지만 libcurl이..
매우매우 간단한 error based sql injection 문제입니다. #!/usr/bin/env python3 import sqlite3 import random import string import os def randName(): return ''.join([random.choice(string.hexdigits) for i in range(16)]) dbpath = f'/tmp/{randName()}.db' conn = sqlite3.connect(dbpath) cur = conn.cursor() cur.execute(""" CREATE TABLE flag (flag TEXT) """) cur.execute(f"INSERT INTO flag VALUES ('{os.getenv('FLAG','f..

예선 시간에 문제를 거의 다 풀었는데 아쉬워서 여러 풀이들을 공부하여 write up을 작성해봤습니다..!! 문제에서 제공되는 http://114.203.209.112:8000에 접속한 모습입니다. guest, guest로 로그인 하게 되면 curl을 보낼 수 있는 기능이 있습니다. 하지만 localhost이어야 가능하다고 알려줍니다. http://114.203.209.112:8000/index.phtml?fun_004ded7246=load url이 이렇게 생긴 것을 보아 혹시 include인가 싶어 index를 넣어봤습니다. 무한루프를 도는 것을 보아 include가 맞다고 생각했습니다. index만 넣었을 때 include가 되었기에 .phtml이 뒤에 붙는 것을 예측할 수 있습니다. 그래서 php:..