잘못된 보안 구성(Security Misconfiguration), OWASP Top 10 2017 A6

웹 서비스는 개발된 코드만으로 동작하는 것이 아닙니다. 웹 어플리케이션의 설정도 중요하지만 이를 서비스하는 미들웨어나 OS, 보안을 담당하는 방화벽 등의 설정도 이에 못지 않게 중요합니다. 안전하게 서비스되는 웹 서비스들은 그 인프라 또한 지속적으로 관리되고 있습니다. OS 취약점 패치나 백신 업데이트, 사용하는 각종 미들웨어들의 업데이트 등도 중요합니다. 이를 간과한다면 어플리케이션이 아무리 안전하게 설계되었더라도 기반 인프라로 인해 OS레벨에서 공격을 받게 되고 서비스 거부(Deny of Service)나 중요 정보의 유실을 경험하게 될 것입니다.

 

잘못된 보안 구성의 유형과 대응 방안

잘못 설정된 리소스들은 공격자에게 시스템에 접근할 수 있는 루트를 제공합니다.

보안 패치 누락

대부분의 OS는 주기적으로 보안 패치를 릴리즈하고 있습니다. 해커들의 공격 기술은 더욱 정교해지고 있기 때문에 주기적으로 취약점을 보완하는 행위는 반드시 필요합니다. OS나 백신 및 기타 어플리케이션 스택의 패치를 누락한다면 취약점에 노출될 수 있습니다.

대응 방안

주기적으로 보안 패치를 적용합니다.

 

어플리케이션 오설정

백신이나 방화벽이 설치되어 있지만 이를 적절히 설정하지 못한다면 의미가 없습니다. 심한 경우에는 백신을 설치하고선 기동하지 않아 전혀 보호를 받지 못하는 경우도 있습니다. 백신이나 방화벽 뿐 아니라 모든 어플리케이션 스택을 검토하여 올바른 설정이 될 수 있도록 감독해야 합니다.

대응 방안

어플리케이션 설정을 확인하고 적절한 조치를 취합니다.

 

기본 계정과 패스워드 방치

OS나 몇몇 서비스들은 초기 설정을 위한 기본 계정이 제공됩니다. 이를 Disable시키지 않고 그대로 방치하는 것은 해커에게 한 쪽 문을 열어주는 것과 같습니다.

대응 방안

기본 계정과 root 계정 등은 접속할 수 없도록 Disable 시키고 별도의 계정을 만들어 권한을 부여해야 합니다.

 

미사용 포트 방치 및 기본 포트 사용

시스템에서 안전한 통신을 위해 SSH 통신을 기본으로 이용한다고 하더라도 Telnet이 오픈되어 있으면 공격자에겐 시스템에 접근할 수 있는 하나의 방법이 됩니다. 또한 기본 포트를 사용하는 것도 안전하지 않은 방법 중 하나입니다. 기본 포트를 사용하게 되면 공격자에게 그만큼 공격에 소요되는 시간을 줄여주는 결과를 낳게 됩니다.

대응 방안

시스템에서 사용하지 않는 포트와 서비스들은 차단합니다. 잘 알려진 서비스의 기본 포트들은 별도의 사용자 설정 포트로 변경하여 사용하고 기본 포트는 차단합니다.

 

상세 오류 메시지 노출 및 디렉토리 리스트 노출

어플리케이션 오류 메시지에는 시스템의 경로를 포함한 사항들이 포함되어 있습니다. 시스템 구조가 노출되면 공격자는 시스템을 파악하기 쉬워지고 공격 타깃을 정하기가 그만큼 쉬워집니다.

대응 방안

별도의 에러 페이지를 만들어 오류 발생 시 리다이렉트 시킵니다.

 

 

참고 자료
Auth0, A Tour Through the OWASP Top 10
GBHacker On Security, OWASP A5- Security Misconfiguration

 

 

다른 글 더 보기

인젝션(Injection), OWASP Top 10 2017 A1
취약한 인증(Broken Authentication), OWASP Top 10 2017 A2
민감한 데이터 노출(Sensitive Data Exposure), OWASP Top 10 2017 A3
XML 외부 개체(XML External Entity, XXE) 취약점, OWASP Top 10 2017 A4
취약한 접근 제어(Broken Access Control) 취약점, OWASP Top 10 2017 A5
728x90
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기