CSRF-1 풀이

먼저 문제 페이지에 접속하면 4개의 페이지가 보인다.
코드를 보며 분석해보자.

/vuln 에서는 쿼리 값 param을 소문자로 변환 후에 XSS에 이용되는 태그들을 *로 필터링 하고 있다. 따라서 frame, script, on 단어를 쓸 수 없다.

우리가 이용해야 할 페이지는 /flag이다.
/vuln이 아닌 다른 주소에서 직접 flag를 가져오는 방법을 고민해봤지만 param을 리턴하는건 /vuln 밖에 없기 때문에 다른 방법은 없다.
def read_url (url , cookie ={"name": "name", "value": "value"}):
#쿠키 값을127.0.0.1(localhost) 에서 요청했을때만 반환되게 설정
cookie .update({"domain": "127.0.0.1"})
try :
service = Service(executable_path ="/chromedriver")
options = webdriver.ChromeOptions()
for _in [
"headless",
"window-size=1920x1080",
"disable-gpu",