Vulnerability Analysis 2

2024. 3. 30. 20:56CERT

목차

  • Vulnerable file Existence Vulnerability
  • Account Management Vulnerability
  • Real - name Authentication Vulnerability
  • Exposing sensitive information on transmission Vulnerability

 

 

Vulnerable file Existence Vulnerability

정의

  • 취약한 파일:   업데이트가 주기적으로 되어있지 않은 파일 혹은 기타 사유로 인해 관리가 소홀하여 접근 권한 및 암호화 설정이 되어 있지 않은 파일등을 말함
  • 취약한 파일 존재 취약점: 취약한 파일의 존재로 인해 기타 중요한 파일들이 외부로 유출되거나 시스템 자체에 영향성이 가해질 수 있는 취약점을 말함.

보안 위협 

  • 기타 중요한 파일들이 소유자 권한 설정이 안되어 있거나, 암호화 설정이 안되어 있다면, 외부로 유출되거나 조작될 가능성이 있음
  • 웹 루트 하위에 내부 문서나 백업파일, 로그파일, 압축파일과 같은 파일이 존재할 경우 파일명을 유추하여 파일명을 알아내고, 직접 요청하여 해킹에 필요한 서비스 정보를 획득

점검방법

  • 웹서버의 가상 디렉토리로 이동하여 다음에 제시되는 확장자의 파일을 찾아 불필요한 정보가 포함 되었는지 여부를 판단

        ※ 문서파일일 경우 내용에 개인정보 등의 주요정보 존재여부 확인 필요

 

 

Windows 의 검색 방법

  •  예) dir /[웹서버디렉토리] /s *.bak 

 Unix, Linux 의 검색 방법

  •  예) find /[웹서버디렉토리] -name "*.bak" 

 

대응방안

  • 웹서버는 개발과 운영 환경을 분리하여 운영 환경에서 소스 코드 수정 또는 테스트 목적의 임시 파일을 생성하지 않도록 함
  • 웹 서버의 디렉토리에 존재하는 기본 설치 파일, 임시 및 백업 파일을 조사하여 웹 사용자가 접근하지 못하도록 조치

 

Account Management Vulnerability

정의

  • 계정 관리: 조직이 필요로 하는 보안 정책을 수립하고 정책에 따라 자동으로 사용자의 정보와 권한을 관리하는 솔루션
  • 계정 관리 또한 추상적이며, 방대하기에 관련 보안 조치 중 패스워드 복잡도 설정을 대표로 하나 기술

계정 관리(패스워드 복잡도 설정)

  • 정의:패스워드 복잡성 관련 정책이 설정되어 있는지 점검하여 비인가자의 공격(무작위 대입 공격, 사전 대입 공격 등)에 대비가 되어 있지 않은 상태를 말함

보안위협

  • 복잡성 설정이 되어있지 않은 패스워드는 사회공학적인 유추가 가능 할 수있으며 암호화된 패스워드 해시값을 무작위 대입공격, 사전대입 공격 등으로 단시간에 패스워드 크렉이 가능함

참고: ※ 패스워드 복잡성: 사용자 패스워드 설정 시 영문(대문자, 소문자), 숫자, 특수문자가 혼합된 일정 길이 이상으로 패스워드를 설정하는 방법

 

대상 : SOLARIS, LINUX, AIX, HP-UX 등

 

판단 기준

  • 양호 : 패스워드 최소길이 8자리 이상, 영문·숫자·특수문자 최소 입력 기능이 설정된 경우
  • 취약 : 패스워드 최소길이 8자리 이하, 영문·숫자·특수문자 최소 입력 기능이 설정되어 있지 않은 경우

 

조치 방법

  • 계정과 유사하지 않은 8자 이상의 영문, 숫자, 특수문자의 조합으로 암호 설정및 패스워드 복잡성 옵션 설정

 

< 패스워드 관리 방법 > 

1. 영문, 숫자, 특수문자를 조합하여 계정명과 상이한 8자 이상의 패스워드 설정

※ 다음 각 목의 문자 종류 중 2종류 이상을 조합하여 최소 10자리 이상 또는, 3종류 이상을 조합하여 최소 8자리 이상의 길이로 구성 

  • 영문 대문자(26개) 
  • 영문 소문자(26개) 
  • 숫자(10개) 
  • 특수문자(32개) 

2. 시스템마다 상이한 패스워드 사용 

3. 패스워드를 기록해 놓을 경우 변형하여 기록

 

 

■ LINUX - RHEL5 

 

  1. 패스워드 복잡성 설정 파일 확인 #/etc/pam.d/system-auth, /etc/login.defs 내용을 내부 정책에 맞도록 편집 
  2. /etc/pam.d/system-auth 파일 설정 

- 패스워드 정책 설정 예시

 

 

Real - name Authentication Vulnerability

정의

  • 사용자 본인 확인 과정상에서 취약한 프로그램이 악용되어 사용자 정보가 변조되는 취약점 

 

보안 위협

  • 사용자의 신원 도용, 금융적 손실, 개인 정보 유출 등으로 이어짐

※ 「정보통신망 이용촉진 및 정보보호 등에 관한 법률」에 의거, 국가기관, 지방자치단체 및 공공단체 등에서 운영하는 게시판은 사용자 본인을 확인하기 위한 방법 및 절차가 마련되어야 함

 

점검방법

 

웹 프록시(Proxy) 프로그램을 이용하여 실명정보를 수정하는 방법으로 취약점 점검을 수행

  • 관리하고 있는 웹서버 내의 실명인증 페이지로 이동
  • 프록시(Proxy) 프로그램을 이용하여 실명인증 과정 중에 발생하는 네트워크 트래픽을 모니터링
  • 실명인증 성공 후의 결과정보를 조작
    1. 공격자는 취약점이 존재하는 웹서버에 정상적인 사용자의 개인정보로 접속하여 실명 인증 수행한다.
    2. 웹서버(또는 개인)는 인증기관으로 실명정보 확인을 요청한다.
    3. 실명정보를 확인한 인증기관은 웹서버에 사용자의 나이, 성별, 연락처 등의 개인정보를 전달하며 사용자에게는 "실명인증 성공" 메시지를 전달한다.
    4. 공격자는 수신한 실명인증 결과를 웹 프록시 툴을 이용하여 임의의 사용자로 변조 후 가입 또는 글 작성을 완료한다.
    5. 취약점이 존재하는 웹서버는 사용자가 요청한 정보를 검증과정 없이 신뢰하여 변조된 사용자의 가입(또는 글 작성)을 허용한다.

 

대응 방안

  • 중요한 정보가 있는 홈페이지(실명 등)는 인증 기관으로부터 온 사용자 정보와 공격자로부터 온, 변조된 정보를 비교하여 재인증을 적용
  • 안전하다고 확인된 라이브러리나 프레임워크를 사용

 

 

Exposing sensitive information on transmission Vulnerability 

정의

 

  • 프로그램이 보안과 관련된 민감한 데이터를 평문으로 통신채널을 통해서 송수신 할 경우, 통신채널 스니핑을 통해 인가되지 않은 사용자에게 민감한 데이터가 노출될 수 있는 취약점

 

보안 위협

  • 중요한 텍스트 정보(id, password)와 같은 정보가 노출되어 공격자가 이를 악용하여 타인의 계정 정보를 사칭 및 도용할 수 있다.
  • 노출된 정보를 공격자가 악용하여 이후 사회 공학 공격 등에 이용하여 추가적인 2차 피해를 발생 가능성 있음

 

점검 방법

  • 점검 하고자하는 웹서버에 로그인 시도를 한다.
  • 점검 도구는 와이어샤크를 이용한 패킷 스니핑을 통해 실제로  송수신하는 패킷들을 저장한다.

 

  • 저장된 패킷들 중 로그인 인증관련 패킷들만을 집중 분석하여 암호화 여부를 확인하다.
    1. http 통신을 하는 웹 사이트로 테스트
    2. 실제로 회원가입하여 id 및 pw를 기입 후 로그인 시도
    3. 와이어샤크로 확인한 결과, id, pw 그대로 노출

 

대응방안

  • 중요 정보 전송시 반드시 SSL 혹은 TLS 등의 암호화 통신 프로토콜을 사용한 HTTPS 통신만을 사용하도록 함.

 

'CERT' 카테고리의 다른 글

Vulnerability Analysis 4  (0) 2024.05.22
Vulnerability Analysis 3  (0) 2024.04.20
Vulnerability Analysis 1  (2) 2024.03.26
Shodan  (0) 2024.03.09
Vulnerability Analysis Using Google Hacking  (0) 2024.02.10