분류 전체보기

21번 문제 iron golem이랑 비슷한 문제이다.pw를 직접 입력해줘야하기 때문에 blind sql injection을 해야 하는데 admin으로 로그인 할때의 엔드포인트가 제시되어있지 않기 때문에 Time Based 혹은 Error based를 사용해야한다.Time Based는 sleep과 benchmark둘다 필터링 되어있기에 사용하기 힘들 것 같다. 따라서 Error Based 를 사용해주어야 한다.if문이 필터링 되어있기에 or문을 사용해주었다.위와 같이 입력하면 select 1 union select 1=1일때 error가 안나고 select 1 union select 1=2일땐 error가 난다.서브쿼리에서 결과값이 두개 이상 반환되면 에러가 나는데 1=1일 경우 True 즉, 1로 반환되..
· Dev/Flask
1. export로 환경변수 설정export FLASK_APP=appexport FLASK_DEBUG=true 2. 배포시debug를 false로 만들고 flask run --port=0.0.0.0 으로외부에서 접속할 땐 enp0s8 ip로 접속 3. flask 가상환경 실행venvs/myproject/bin으로 들어간 후 source activate 실행 4. Docker docker run -d -p 8000:8000 --name myapp-container myapp포트바인딩 해줘야 외부에서 접근 가능
보호되어 있는 글입니다.
#!/usr/bin/python3import hashlib, os, binascii, random, stringfrom flask import Flask, request, render_template, redirect, url_for, session, g, flashfrom functools import wrapsimport sqlite3from selenium import webdriverfrom selenium.webdriver.chrome.service import Servicefrom selenium.webdriver.common.by import Byfrom promise import Promiseapp = Flask(__name__)app.secret_key = os.urandom(32)DAT..
Command Injection은 명령어를 실행하는 함수에 이용자가 임의의 인자를 전달할 수 있을 때 발생한다.아래는 여러가지 Command Injection 기법이다. 1. ``명령어 치환 `` 안에 들어있는 명령어를 실행한 결과로 치환한다.$ echo `echo a` => a 2. $()명령어 치환 $() 안에 들어있는 명령어를 실행한 결과로 치환한다.$ echo $(echo a) => a 3.&&명령어 연속 실행한줄에 여러 명령어를 사용하고 싶을때 사용한다.앞 명령어에서 에러가 발생하지 않아야 뒷 명령어가 실행된다. $ echo hello & echo hi => hello hi 4. ||이것도 연속실행인데 앞 명령어에서 에러가 발생해야 뒷 명령어가 실행된다.$ cat / || echo hi => /..
프레딕
'분류 전체보기' 카테고리의 글 목록 (10 Page)