목록Study (193)
촉촉한초코칩

코드CREATE DATABASE IF NOT EXISTS `users`;GRANT ALL PRIVILEGES ON users.* TO 'dbuser'@'localhost' IDENTIFIED BY 'dbpass';USE `users`;CREATE TABLE user( idx int auto_increment primary key, uid varchar(128) not null, upw varchar(128) not null);INSERT INTO user(uid, upw) values('admin', 'DH{**FLAG**}');INSERT INTO user(uid, upw) values('guest', 'guest');INSERT INTO user(uid, upw) values('test', 't..

코드#!/usr/bin/python3from flask import Flask, request, render_template, gimport sqlite3import osimport binasciiapp = 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(DATABASE) == False: db = sqlite3.connect(DATABASE) db.execute('create table users(userid char(100), userpassword ..

문제 문제 파일 다운받으니 이런 문장이 나왔다. rail fence 전치기법 중 하나 평문 문자를 대각선으로 지그재그 형태의 위아래로 왔다갔다 작성해서 맨 위의 첫번째 라인부터 순서대로 치ㅜ하여 암호문을 작성한다. 공격위 블로그 참고해서 rail fence 만드는 코드는 완성했는데 키 값을 모른다.. 너무 노가다 같아서 반대로 생각해보았다. dreamhack tools 사용해서 rot13 적용 → From base64했더니 이런 문자열이 나왔다. 근데 output을 아무리 넣어봐도 틀렸다고 나왔다.. 생각해보니 rail-fence는 사용하지 않은 것 같아서+output으로 나온 문자열 조합이 이상한것같아서 output 문자열을 가지고 rail-fence에 적용해보았다. def solve(crypt, ..

코드#!/usr/bin/env python3import subprocessfrom flask import Flask, request, render_templateAPP = Flask(__name__)@APP.route('/', methods=['GET', 'POST'])def index(): if request.method == 'POST': user_input = request.form.get('user_input') cmd = f'echo $({user_input})' if 'flag' in cmd: return render_template('index.html', result='No!') try: outp..

코드if ($_SERVER["REQUEST_METHOD"] == "POST") { $input_1 = $_POST["input1"] ? $_POST["input1"] : ""; $input_2 = $_POST["input2"] ? $_POST["input2"] : ""; sleep(1); if($input_1 != "" && $input_2 != ""){ if(strlen($input_1) "7.9"){ if(strlen($input_2) 1){ if($input_2 "74"){ echo "FLAG\n"; echo $flag; e..

관련 내용에 대해 알아야 할 것 같아서 관련 내용을 정리해보았다. XSS Filtering BypassXSS를 방어하기 위해 필터링을 추가했을 때 이를 우회하는 방법 소개 1) 불충분한 XSS 필터링XSS 필터링을 통해 보안 유지 보안을 위해 XSS 필터링은 안전하다고 알려진 마크업만 허용하는 보수적인 방식을 취해야 함일부 문자열만을 바탕으로 필터를 하게 되면 허위양성 (False Positive) 또는 허위음성 (False Negative) 발생 → 필터링 자체가 이루어지지 못하게 됨 이벤트 핸들러 속성자바 스크립트 코드 실행할 수 있는 HTML 태그 : img 태그에 on 이벤트 핸들러 검사x => !/ 우회 : 멀티 라인에 대한 검사가 존재하지 않기 때문에 줄바꿈 문자를 이용해 우회할 수 있다.3)..