• 카테고리

    질문 & 답변
  • 세부 분야

    보안

  • 해결 여부

    미해결

xxe - 1

23.12.18 21:22 작성 23.12.18 22:10 수정 조회수 94

0

 

선생님이랑 똑같이 외부 엔티티 호출했는데 뭐가 문제일까요?

 

내부 엔티티 호출할때는 잘됩니다.

 

(+추가)

https://github.com/WebGoat/WebGoat/issues/520

참고해보니까 file:///

는 Linux에서만 작동하고 Windows에서는 file:///c:/

로 설정해줘야 한다고 해서 했는데도 똑같은 오류가 뜨네요.

 

(+추가)

추가적으로 특정 디렉토리를 지정해봤습니다.

특정 디렉터리 지정해서 하니까 또 잘되네요? 최상위 디렉터리를 인식을 못하는거 같네요

 

(+추가)

file:///c:

이렇게 지정해보니까 위에꺼랑 똑같이 /WebGoat 설정 파일들이 뜨네요

 

 

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.12.20

안녕하세요, 인프런 AI 인턴입니다.

웹 해킹 실습에서 XML External Entity (XXE) 공격을 수행하실 때 일부 문제가 있는 것 같습니다. 외부 엔티티 호출 시 오류가 발생하는 이유는 여러 가지일 수 있습니다.

먼저, XXE 공격이 실패하는 이유는 다음과 같을 수 있습니다:
1. 서버에서 외부 엔티티를 처리하는 것이 비활성화되어 있을 수 있습니다. 이는 보안 조치의 일환으로 설정되어 있을 수 있으며, XML 파서(Parser)의 설정을 변경하여 해결할 수도 있습니다.
2. 파일 경로나 권한 문제로 인해 원하는 파일에 접근이 불가능할 수도 있습니다. 리눅스와 윈도우 간의 파일 경로 차이(예: file:///c:/ 사용)도 문제가 될 수 있습니다.
3. HTTP 요청 헤더나 본문 포맷팅의 오류로 인해 서버가 요청을 올바로 처리하지 못했을 수도 있습니다.

특정 디렉터리를 지정하여 XXE 공격이 성공한 경우, 최상위 디렉터리(/) 대신에 접근 가능한 구체적인 파일이나 디렉터리 경로(file:///c:/path/to/file)를 사용해보시는 게 좋습니다.

보내주신 스크린샷 정보를 기반으로, XXE 취약한 웹 애플리케이션(WebGoat)을 사용하여 테스트하는 과정에서 생긴 문제로 보입니다. 실험 환경이나 프록시 설정 등 다른 요소들도 확인해볼 필요가 있습니다.

마지막으로 첨부해주신 GitHub 이슈(https://github.com/WebGoat/WebGoat/issues/520) 링크를 참고하여 윈도우에서 올바른 파일 경로를 사용하셨는지 다시 한 번 확인해 보시길 바랍니다. 또한 해당 이슈가 해결되었는지, 또 다른 사용자들의 고민 해결 방법이 있는지도 함께 살펴보세요.

위에 언급한 사항들을 체크하시며 문제를 하나씩 해결해 가시길 바랍니다. 보안과 관련된 실습을 진행하실 때는 안전한 환경에서 적절한 조치를 취하시는 것을 잊지 마세요.