목록CTF (59)
개발세발보안중

"; echo "FLAG : ".$FLAG; }else{ echo "wrong.."; } }?>password : get source코드를 보면 if(isset($_POST['ps'])) 블록과 %row배열을 확인해서, 비밀번호를 확인하는 부분이 어떻게 동작하는지 이해해야한다. HTTPS POST 요청에서 'ps'라는 이름의 매개변수가 설정되었을 때 실행된다.mysqli_real_escape_string 함수를 사용하여 사용자가 입력한 'ps'값을 안전하게 처리한다. 즉, SQL injection은 아닌 셈이다,$row = @mysqli_fetch_array(mysqli_query($conn, "select * from admin_password where password='".md5($ps,..
보호되어 있는 글입니다.

https://dreamhack.io/wargame/challenges/47 login-1 python으로 작성된 로그인 기능을 가진 서비스입니다. "admin" 권한을 가진 사용자로 로그인하여 플래그를 획득하세요. Reference Server-side Basic dreamhack.io #!/usr/bin/python3 from flask import Flask, request, render_template, make_response, redirect, url_for, session, g import sqlite3 import hashlib import os import time, random app = Flask(__name__) app.secret_key = os.urandom(32) DATABAS..
https://dreamhack.io/wargame/challenges/1] with app.app_context(): conn = get_db() query = f"SELECT uid FROM users WHERE uid='{uid}' and upw='{upw}' and level={level};" try: req = conn.execute(query) result = req.fetchone() if result is not None: uid = result[0] if uid == 'admin': return FLAG except: return 'Error!' return 'Good!' Result가 admin이면 Flag값이 나온다 @app.route('/login', methods=['GET', '..
보호되어 있는 글입니다.