안녕하세요? 허니입니다. SQL Injection 취약점에 대해서 알아보고 대응 방법에 대해 알아보도록 하겠습니다. 사이버 해킹에 대해 공부하시는 학생이나 연구원 분이 계시면 도움이 될 것이라 생각합니다.


고의적으로 예외 오류메세지를 발생시켜 공격에 필요한 정보 획득에 악의적으로 사용될 수 있다. 때문에 웹 서버 상에서 발생하는 오류 메시지를 적절히 처리하는 설정이 반드시 필요하다.

 

 일반적인 대응방법
원하지 않은 정보가 유출되는 것을 막기 위하여 표준 예외 처리 아키텍처를 포함 하여 개발 해야 합니다. 자세한 오류 처리를 제한하거나 기능을 비활성화 해야 하며, 경로 정보와 디버그 정보를 출력 하지 않아야 합니다. 기본 에러 처리기를 우선시 하여 항상 “200” 에러 화면을 반환하게 함으로써 자동화된 스캐닝 도구가 심각한 에러의 발생 여부를 결정하는 능력을 감소 시켜야 합니다. 모든 에러(404, 403, 500 error) 발생 시 에러 메시지는 사내에서 지정된 사용자 정의 에러페이지로 Redirect 시켜 에러 페이지에 DBMS 쿼리 정보나 소스의 오류에 해당 하는 코드가 노출되지 않도록 합니다. 공격자로부터 자세한 정보를 숨기기 위하여 모든 트랜잭션들에 대한 불규칙한 대기 시간을 부여 해야 합니다. 사용자에게 에러 메시지를 보여주기 보다는 서버의 에러 로그로 남기도록 설정해야 합니다.

 

 웹서버별 대응방법
- 보안설정(IIS)

설정 -> 제어판 -> 관리도구 -> 인터넷 서비스 관리자 -> 등록정보 -> 사용자 정의 오류 등록 정보 편집을 통해 사용자 정의 에러페이지를 지정한다.

URLScan을 설치하여 Urlscan.ini 파일의 RemoveServerHeader 값을 1로 설정(IIS5버전)

HKLM\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\DisableServerHeader 값 1로 설정(IIS6버전)

 

- 보안설정(Apache)

유효하지 않은 요청은 별도로 만든 사용자 정의 에러페이지로 Redirect 시켜야 한다.
httpd.conf에서 아래와 같이 설정한다.
ErrorDocument 404/error_page.html
//
Error 페이지 등에서 노출되는 웹 서버 버전 정보를 나타내지 않도록 httpd.conf 파일 수정
ServerSignature off

 
- ServerTokens 지시자를 선택

 ServerTokens 설정 값

 서버 전송 정보

 ServerTokens Prod

 Apache

 ServerTokens Min

 Apache/2.2.4

 ServerTokens OS

 Apache/2.2.4 (Ubuntu)

 

- php.ini 설정

log_errors = on
display_errors = off

 

- 보안설정(Tomcat)
{tomcat_home}/conf/web.xml 파일에 아래와 같이 추가하여 에러코드에 따른 포워딩 페이지를 설정해야 합니다.

<error-page> 
      <error-code>404</error-code> 
      <location>/error_page/404.jsp</location> 
    </error-page> 
    <error-page> 
      <error-code>500</error-code> 
      <location>/error_page/500.jsp</location> 
    </error-page> 
    <error-page> 
      <exception-type>javax.servlet.ServletException</exception-type> 
      <location>/error_page/500.jsp</location> 
    </error-page>

 

- 보안설정(Weblogic)
weblogic.properties 파일에 아래와 같이 추가하여 에러코드에 따른 포워딩 페이지를 설정해야 한다.

weblogic.httpd.errorPage.500=/jsp/error_500.jsp
weblogic.httpd.errorPage.404=/jsp/error_404.jsp


 

+ Recent posts