주요정보통신기반 시설 가이드

XPath 인젝션이란?

만보만보잠만보 2024. 3. 17. 15:24

XPath 인젝션

(XPath Injection)

 

개념

비정상적인 XPath 쿼리를 조합하거나 실행하는 취약점입니다.

XPath : XML Path Language의 약자로, XML 문서에서 특정 요소나 속성을 선택하는 데 사용하는 표준 표현식 언어입니다.

 

발생 원인

사용자의 입력값을 제대로 검증하지않아 발생하는 취약점입니다.

 

위험한 이유

공격자가 비정상적인 XPath 쿼리문을 삽입할 경우 데이터가 유출될 뿐만 아니라 데이터 수정이나 삭제를 하여 웹 사이트를 손상시킬 수 있습니다.

 

조치 방법

- XPath 쿼리에 사용자가 값을 입력할 수 있는 경우, 엄격한 입력 값 검증을 통해 필요문자만을 받아들이게 합니다.

- (), =, ', [], :, *, / 등 XPath 쿼리를 파괴하는 특수문자는 입력하지 못하게 해야합니다.

- 특정 특수문자만을 필터링하는 것이 아닌 허용된 문자 이외의 모든 입력을 허용하지 않아야 합니다.

 

추가정보

XPath가 익숙하지않다면 웹 페이지에서 임의의 요소로 마우스 이동 > 마우스 오른쪽 클릭 > 검사 > 마우스 오른쪽 클릭 > Copy > XPath를 선택하면  해당 요소의 XPath를 볼 수 있습니다.

'주요정보통신기반 시설 가이드' 카테고리의 다른 글

정보 누출이란?  (0) 2024.03.17
디렉터리 인덱싱이란?  (0) 2024.03.17
SSI 인젝션이란?  (0) 2024.03.17
SQL 인젝션이란?  (0) 2024.03.17
운영체제 명령 실행 공격이란?  (0) 2024.03.17