회원 비밀번호 확인 페이지에서 Reflected XSS (필터우회)

Writer DHG Program 한국CISSP협회 대표홈페이지

WEB Resolved Medium 40,000 Created: Jun 21, 2021 (3 years ago) Last Updated: Jun 24, 2021 (3 years ago)

Weakness

Reflected XSS

Description

개요

https://isc2chapter.kr/bbs/member_confirm.php 페이지의 url 파라미터를 통해 XSS가 가능함.

재현 과정

image.png
URI: https://isc2chapter.kr/bbs/member_confirm.php?url=jav%26%23x09;ascript:alert%28confirm_mb_password.value%29;
위 URI에 접속해서 비밀빈호를 입력해보면, 삽입된 코드에 의해 alert가 뜸.

예상되는 취약점 발생 원인

url 파라미터에 대한 검증 미흡 및 javascript 필터링 미흡
jav ascript 입력 시 필터링 우회 가능합니다.
는 탭(Tab)을 유니코드 인코딩하여 나타낸 것입니다.

패치 방법

javascript 를 실행시킬 수 있는 특수문자를 필터링하세요.

예상 결과 및 파급력

해커가 사용자들의 session id나 개인정보 등을 탈취할 수 있음
session id는 httponly가 되어 있지않아 탈취 가능하고,
입력한 비밀번호를 fetch나 XHR 등을 이용하여 해커의 서버로 전송할 수 있습니다.

Timeline

DHG submitted ticket. June 21, 2021 (3 years ago)
DHG posted a comment. June 21, 2021 (3 years ago)

음 위에 유니코드 인코딩 된 값이 제대로 출력되지 않는 것 같아 이미지로 다시 설명드리겠습니다.
image.png

DHG posted a comment. June 21, 2021 (3 years ago)

image.png

위 URL에 접속 후 비밀번호 입력란에 비밀번호를 입력 후 확인버튼을 누르면 아래와 같이 해커의 서버로 아이디와 비밀번호 값이 전달되는 것을 확인할 수 있습니다.

image.png

CISSP MANAGER changed the status from 'Submitted' to 'In Progress'. June 22, 2021 (3 years ago)
CISSP MANAGER posted a comment. June 22, 2021 (3 years ago)

안녕하세요.
확인후 빠른 시일내에 연락 드리겠습니다.

감사합니다.

CISSP MANAGER posted a comment. June 24, 2021 (3 years ago)

안녕하세요.
패치가 완료 되었습니다. 확인 부탁 드립니다.
감사합니다.

DHG posted a comment. June 24, 2021 (3 years ago)

넵 http 관련 문자열로 시작되지 않는 나머지의 경우 ./ 로 시작되게끔 변경되어서 더이상 javascript 가 실행되지 않는 것을 확인하였습니다.
패치가 잘 된 것 같습니다.

CISSP MANAGER posted a comment. June 24, 2021 (3 years ago)

확인 감사합니다.
앞으로도 저희 버그 바운티에 많은 참여 부탁 드립니다.

CISSP MANAGER rewarded 40,000 credit. June 24, 2021 (3 years ago)
CISSP MANAGER changed the disclosure from 'Closed' to 'Disclosed (Full)'. June 24, 2021 (3 years ago)
CISSP MANAGER changed the status from 'In Progress' to 'Resolved'. June 24, 2021 (3 years ago)