6. XML 문서를 조회하는 기능을 구현해야 하는 경우 XML 쿼리에 사용되는 파라미터는 반드시 XML 쿼리를 조작할 수 없도록 필터링해서 사용하거나, 미리 작성된 쿼리문에 입력값을 자료혀엥 따라 바인딩해서 사용해야 한다. 관련하여 다음은 SW 설계시 고려해야 할 사항이다. ( )에 들어갈 용어를 기술하시오.
(ㄱ) (A) 컴포넌트를 이용한 입력값 필터링 : 외부입력값에서 XML 삽입 공격이 가능한 문자열들을 필터링하는 Validator 컴포넌트를 개발하여 XML 조회를 수행하는 애플리케이션 작성 시 입력값에 대한 검증 작업이 일괄 적용되도록 설계한다.
(ㄴ) 개별 코드에서 입력값 (B) 하도록 시큐어코딩 규칙 정의: 각각의 컴포넌트에서 입력값에 대해 XML 삽입을 발생시킬 수 있는 문자열(", [, ], /, =, @ 등)을 제거 또는 안전하게 치환하여 사용할 수 있도록 시큐어코딩 규칙을 정의한다.
(ㄷ) 안전한 (C) 를 사용하도록 시큐어코딩 규칙 정의: XML 조회를 수행하는 쿼리문 작성시 외부입력값이 쿼리문의 구조를 바꿀 수 없는 (C) (예: Java API-XQuery)를 사용하도록 시큐어코딩 규칙을 정의한다.
| 정답 확인 | 맞췄어요 O | 틀렸어요 X |
(B) : 필터링
(C) : API