인프런 커뮤니티 질문&답변

dhwns5555님의 프로필 이미지
dhwns5555

작성한 질문수

무작정 따라하며 원리를 깨우치는 웹 해킹 : WebGoat 편

xxe - 1

작성

·

191

·

수정됨

0

 

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

 

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

 

(+추가)

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

참고해보니까 file:///

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

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

 

(+추가)

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

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

 

(+추가)

file:///c:

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

 

 

답변 1

0

안녕하세요, 인프런 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) 링크를 참고하여 윈도우에서 올바른 파일 경로를 사용하셨는지 다시 한 번 확인해 보시길 바랍니다. 또한 해당 이슈가 해결되었는지, 또 다른 사용자들의 고민 해결 방법이 있는지도 함께 살펴보세요.

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

dhwns5555님의 프로필 이미지
dhwns5555

작성한 질문수

질문하기