Web Hacking/DreamHack

sql injection bypass WAF 문제와 많이 비슷한 문제지만 특이점은 \n, \r \t, -, + 등 개행 및 줄바꿈, 주석 등을 아얘 못쓰게 막아놨다는 점이다. import os from flask import Flask, request from flask_mysqldb import MySQL app = Flask(__name__) app.config['MYSQL_HOST'] = os.environ.get('MYSQL_HOST', 'localhost') app.config['MYSQL_USER'] = os.environ.get('MYSQL_USER', 'user') app.config['MYSQL_PASSWORD'] = os.environ.get('MYSQL_PASSWORD', 'pass'..
app.py import os from flask import Flask, request, render_template_string from flask_mysqldb import MySQL app = Flask(__name__) app.config['MYSQL_HOST'] = os.environ.get('MYSQL_HOST', 'localhost') app.config['MYSQL_USER'] = os.environ.get('MYSQL_USER', 'user') app.config['MYSQL_PASSWORD'] = os.environ.get('MYSQL_PASSWORD', 'pass') app.config['MYSQL_DB'] = os.environ.get('MYSQL_DB', 'user_db') my..
#!/usr/bin/env python3 from flask import Flask, request import os app = Flask(__name__) @app.route('/' , methods=['GET']) def index(): cmd = request.args.get('cmd', '') if not cmd: return "?cmd=[cmd]" if request.method == 'GET': '' else: os.system(cmd) return cmd app.run(host='0.0.0.0', port=8000) 일단 보니 저 os.system()함수에 cmd 커맨드만 알맞게 입력해주면 풀릴 것 같았다. app.route를 보면 GET메소드만 허용되는걸 볼 수 있다. 그리고 if문을 보면..
프레딕
'Web Hacking/DreamHack' 카테고리의 글 목록 (7 Page)