error 노출로 인한 sql query 노출 및 sql injection

작성자 super-cert 프로그램 수산아이앤티

WEB 종료됨 높음 보상없음 작성일: 2021년 11월 1일 (2년 전) 마지막 업데이트일: 2021년 12월 30일 (2년 전)

취약점 유형

SQL Injection

상세내용

개요

[취약점 제보에 대한 개요를 작성해 주세요]
보도자료 쪽 검색 로직에서 에러 발생 시 sql 쿼리 노출 및 sql injection 취약점 발생

재현 과정

[취약점 재현을 하기 위한 과정을 서술해 주세요]

  1. [step1] 정상쿼리
    Description
  2. [step2] search_type 파라미터를 그대로 where 문에서 사용하여 sql error 및 쿼리 노출
    Description
  3. [step3] payload 삽입 시 error based sql injection 발생 => 버전정보 노출 확인
    Description

예상되는 취약점 발생 원인

[해당 취약점이 발생하는 예상 원인을 서술해 주세요]
php 기본의 addslashess 함수가 적용되어 있으나 search_type 같은 파라미터는 싱글/더블 쿼터에 상관없이 그대로 쿼리문에서 사용되어 취약점 발생

패치 방법

[해당 취약점을 패치하기 위한 대응 방법을 서술해 주세요]
search_type 에서 문자열을 받는 경우 화이트리스트 형태로 필요 문자열만 매핑해서 사용하도록 권고

예상 결과 및 파급력

[해당 취약점으로 인해 예상되는 결과 및 파급력을 서술해 주세요. 시나리오가 포함되어도 좋습니다.]

  • 내부 데이터 베이스 조회 및 데이터 탈취 가능
  • load_file 가 유효한 경우 lfi 취약점 가능
  • php 서버를 사용하기 때문에 로그 poisoning을 통한 rce 가능성 존재

기타사항 및 레퍼런스

[그 외에 추가할 내용이 있다면 이곳에 작성해주세요.(스크린샷, 로그 등)]

  • [첨부파일 / 레퍼런스]

타임라인

super-cert 님이 티켓을 제출했습니다. 2021년 11월 1일 (2년 전)
Dona BUGCAMP STAFF 님이 상태를 '제출됨'에서 '처리중'으로 변경했습니다. 2021년 11월 11일 (2년 전)
Steve BUGCAMP STAFF 님이 상태를 '처리중'에서 '종료됨'으로 변경했습니다. 2021년 12월 30일 (2년 전)

안녕하세요 제보자님 해당 취약점 조치되어 티켓을 종료하겠습니다. 수산아이앤티 버그바운티 프로그램에 참여해주셔서 감사합니다.

Steve BUGCAMP STAFF 님이 공개상태를 '비공개'에서 '전체공개'로 변경했습니다. 2021년 12월 30일 (2년 전)