김승현
그누보드 취약점 분석 xss 5.3.1.7(분류 설정 탭) 본문
기타 정보
더보기
닫기
실습 환경 : 5.3.1.7 (이후 버전도 가능함)
취약점 정보 : Cross Site Scripting(XSS)
간단 정리 : /adm/qa_config.php경로 내 분류에 악의적인 스크립트 삽입
취약점 재연에 필요한 경로 adm/qa_config.php이다.
일단 adm/qalist.php로 가보자.
/adm/qa_config.php는 1:1문의 설정 페이지인데 여긴 문의의 분류의 종류를 정의할 수 있는 게 있다. 여기 ">를 입력해보자.
↓
입력시 이렇게 원래 분류 탭에 있던 속성값들이 출력되는 걸 볼 수 있다.
이런 식으로 우리가 강제로 태그를 닫아서 다른 코드를 삽입할 수 있을 것으로 보인다.
"> <img src='x' onmouseover="alert('xss_test')">
위의 코드를 입력해보자.
에러난 이미지에 마우스를 올리면 이렇게 경고창이 뜬다. onmouseover 속성 대신 onerror 입력시 페이지에 접근시 바로 출력된다.
/adm/00qa_config.php의 코드를 확인해보자.
<td>
<?php echo help('분류와 분류 사이는 | 로 구분하세요. (예: 질문|답변) 첫자로 #은 입력하지 마세요. (예: #질문|#답변 [X])') ?>
<input type="text" name="qa_category" value="<?php echo $qaconfig['qa_category'] ?>" id="qa_category" required class="required frm_input" size="70">
</td>
위의 내용이 qa_config.php 중 분류를 입력하는 곳을 작성한 코드이다.
value 속성에 저장되는 값인 $qaconfig['qa_category']부분에 별다른 입력값 검증이 있지 않을 걸 볼 수 있다. 그렇기 때문에 여기서 ">를 통해 input태그를 강제로 닫을 수 있으며 우리가 원하는 스크립트를 삽입할 수 있게 되는 것이다.
'그누보드 : 1-day 분석' 카테고리의 다른 글
그누보드 취약점 분석 xss 5.3.1.7(투표 form) (1) | 2023.11.18 |
---|---|
그누보드 취약점 분석 xss 5.3.1.7(관리자 이메일) (0) | 2023.11.14 |
그누보드 취약점 분석 xss 5.3.1.7 (분류 탭) (0) | 2023.11.08 |
그누보드 취약점 분석 xss 5.4.19 (답변 및 추가 질문) (0) | 2023.11.06 |
그누보드 취약점 분석 XSS (기본 글쓰기 내용, KVE-2019-1235) (0) | 2023.11.06 |