AI Briefing

WAS 정보 보호 가이드: 예제 파일 삭제 및 응답 헤더 설정법

·2023.07.06 08:00

핵심 내용

WAS의 버전 및 OS 정보 노출을 막기 위해 불필요한 예제 파일 삭제와 HTTP 응답 헤더 설정 변경이 필수적이다.

자세히 보기

WAS(Web Application Server)의 종류, 버전, 서버 운영체제 정보는 공격자가 취약점을 파악해 공격하기 쉬운 환경을 제공하므로, 개인정보와 동일한 수준으로 보호해야 한다. 기본 설정 그대로 운영하면 이러한 정보가 은연중에 노출되어 금전적 및 정신적 피해로 이어질 수 있다.

불필요한 파일 제거

실제 운영에 필요하지 않은 예제 프로그램, 매뉴얼, 관리자 페이지는 공격 표면이 되므로 반드시 삭제해야 한다.

  • IIS: 5.0/6.0 버전의 iissamples, iishelp, msadc\sample 등 디렉터리 삭제 (7.0 이상은 해당 없음)
  • Apache: 컴파일 설치 시 [Apache Dir]/htdocs/manual 등 매뉴얼 디렉터리 삭제
  • Tomcat: webapps/examples, host-manager, manager, docs 디렉터리 삭제
  • NGINX: 별도 예제 파일이나 도움말 디렉터리를 제공하지 않음

HTTP 응답 헤더 정보 숨김

HTTP 응답 헤더의 Server 항목에 WAS 버전과 OS 정보가 노출되는 것을 방지하기 위해 각 서버별 설정을 변경한다.

  • IIS: URL 재작성 모듈을 설치하고 아웃바운드 규칙을 통해 Server 헤더 값을 0 등으로 치환
  • Apache: ServerTokens Prod, ServerSignature Off 설정 적용
  • Tomcat: server.xml의 server 속성 값을 Unknown Server 등으로 변경
  • NGINX: server_tokens off; 지시문 적용
  • Node.js: app.disable('x-powered-by'); 코드를 추가하여 X-Powered-By 헤더 제거

상태 코드 페이지 커스터마이징

기본 제공되는 HTTP 상태 코드 페이지(404, 500 등)에는 서버 정보가 포함될 수 있으므로, 각 서버에 맞는 커스텀 HTML 페이지로 매핑하여 정보를 숨기고 사용자 친화적인 안내를 제공한다.

  • IIS: web.config의 <httpErrors> 태그를 이용해 상태 코드별 커스텀 페이지 경로 지정
  • Apache: ErrorDocument 지시문을 통해 상태 코드별 파일 경로 설정
  • Tomcat: web.xml의 <error-page> 태그로 상태 코드와 위치 매핑
  • NGINX: error_page 지시문으로 4xx, 5xx 상태 코드별 공통 또는 개별 페이지 지정
  • Spring Boot: src/main/resources/error 폴더에 상태 코드별 HTML 파일 배치
  • Node.js: Express 미들웨어를 통해 res.sendFile로 커스텀 에러 페이지 응답

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.