이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 11727|회답: 0

[팁] ASP.NET URL 형태의 로그 파일 접근 금지

[링크 복사]
게시됨 2020. 9. 19. 오후 12:55:09 | | | |
asp.net log4net을 사용해 로그를 작성할 때, 로그 파일은 프로젝트의 루트 디렉터리에 저장됩니다. 만약 공격자가 무차별 대입 요청으로 txt 로그 파일을 찾아 URL을 통해 접근할 수 있다면, 민감한 정보를 얻을 수 있습니다. 민감한 디렉터리가 URL을 통해 접근되는 것을 어떻게 막을 수 있나요? 이 글에서 설명하겠습니다.

로그 파일:

http://localhost:60155/Log/LogInfo/20180903.txt



브라우저를 통해 로그 파일 내용을 쉽게 읽을 수 있는데, 민감한 디렉터리가 URL을 통해 접근되는 것을 어떻게 차단하나요?

방법 1 (측정)

Web.config에서 다음 구성을 설정하세요:



이때 Log/LogInfo 디렉토리의 20180903.txt을 다시 탐색하면 금지되어 있으며, 프롬프트는 다음과 같습니다:



페이지에 404 오류가 표시되어 있고, 그 페이지는 제가 커스터마이즈한 맞춤형 404 오류 페이지입니다.

참고: 설정된 로그는 대소문자 구분이 아니므로, 모든 소문자 URL 링크도 404 오류를 보고합니다.

방법 2 (미검증)

또는 web.config 파일을 다음과 같이 편집하세요:


HttpForbiddenHandler 코드는 다음과 같습니다:


원리는 지정된 규칙의 링크를 해당 요청 파이프라인에 전달하고, 그 후 맞춤형 HTTP 요청 파이프라인이 요청을 처리하는 것입니다.




이전의:Autofac은 범위와 수명을 제어합니다
다음:ASP.NET Core는 현재 URL과의 상대 경로를 받습니다
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com