정보보안 - 접근통제 보안위협 및 대응책

접근통제 보안위협 및 대응책

  • 패스워드 크래커
    • 개요
      • 시스템에서는 사용자들의 패스워드를 특정한 방식으로 암호화하여 보관한다.
      • 그 방식은 절대로 풀어낼 수 없는 일방향 함수 구조로 되어 있어 유닉스/리눅스 시스템에서 패스워드를 풀어내는 일은 쉽지 않다.
      • 하지만 무차별 대입이나 사전 등을 이용하여 편법으로 패스워드를 풀어내는 경우가 있다.
      • 이러한 일을 해주는 프로그램을 패스워드 크래커라고 한다.
      • 패스워드를 알아내는 가장 효율적인 방법은 하이브리드 공격으로 사전공격+무차별 공격을 병행하는 것이다.
    • 유형
      • 사전공격 (Dictionary Attack)
        • 패스워드 사전 파일을 이용하여 접속 계정을 알아내는 해킹 방법
        • 공격자들은 패스워드의 해시된 값 혹은 패스워드 파일을 포착하며, 포착 후 소프트웨어 툴은 자체 내에 이미 포함된 단어와 포착된 패스워드가 일치할 때까지 비교작업을 수행한다.
      • 무차별공격 (Brute-force Attack)
        • 성공할 때까지 가능한 모든 조합의 경우의 수를 시도해 원하는 공격을 시도하는 방법
        • 대표적인 예로 크랙 등 소프트웨어를 이용해서 로그인 이름에 대한 패스워드를 추측하는 방법이 있음
        • 무차별 공격방법들은 워다이얼링(wardialing) 에도 사용됨.
          • 워다이얼링(wardialing) : 수천개의 전화번호에 자동으로 전화를 걸어 모뎀이 장착된 번호를 찾는 컴퓨터 해킹 기술
      • 레인보우 테이블 공격
        • 1980년도에 개발된 공격방법. 2000년대에 유명해짐.
          • 원도우 NT 버전 LM(Lan Manager) Hash 알고리즘이 깨지게 됨. -> Vista 버전 이후 사용하지 않음
        • 패스워드 후보군을 만들어 Salt 와 결합하여 Hash 한 결과를 거대한 사전으로 만들어 공격
    • 대응책
      • 패스워드를 암호화하기 전에 부가적인 숫자(Salt)를 패스워드에 덧붙인 후 암호화하여 저장하는 방법 : 사전공격에 대한 내성 향상
      • 패스워드가 평문으로 전송되지 않도록 하여 패스워드 패킷 스니핑을 방지
      • One-Time Password 사용. 패스워드 암호화. IDS/IPS 를 통해 반복적인 트래픽 감시
      • 패스워드 입력횟수를 제한하는 임계치(Clipping Level) 을 적용하는 방법
  • 사회공학
    • 정의
      • 일반적 정의 : 신뢰할 수 있는 사람/조직 으로 가장하여 다른 사람들로 하여금 자신의 목적을 위해 행동하게 하는 기술
      • 컴퓨터 기반 정의 : 신뢰할 수 있는 컴퓨터프로그램, 이메일, 웹사이트 등으로 위장하여 공격자 의도대로 희생자의 개인정보, 신용정보를 탈취하기 위해 악성코드를 설치하는 공격방법
      • 이메일 기반 정의 : 관심을 끌만한 이메일 제목, 내용 등을 통해 첨부된 악성코드 파일을 실행하게 하여 희생자의 개인정보, 신용정보를 탈취하는 공격방식
    • 사회공학공격 분류
      • 인간 기반의 사회공학 공격 (Human-based Social Engineering Attack)
        • 종류
          • 어깨 넘어 훔쳐보기 (Shoulder Surfing) - 전통적인 스니핑 방법
          • 쓰레기통 뒤지기 (Dumpster Diving)
          • 협박메일 (Blackmail)
            • 어떤 정보를 폭로하겠다고 협박하여 재물을 갈취하는 행위
          • 따라 들어가기 (Piggybacking, Tailgating)
            • 출입증 소지자가 출입 시 함께 뒤따라 출입한다.
          • 내부자의 결탁으로 인한 정보유출, 내부자 부주의로 인한 외부에서의 정보 습득
        • 절차
          • 정보수집
            • 피해자의 전화번호를 무작위로 수집 (인터넷, 설문조사 등)
          • 관계 형성
            • 전화를 이용하여 고위 공무원이나 금융담당자로 속여 마치 피해자나 피해자 주위 사람에게 문제가 생긴 것처럼 말하여 관심 유도
          • 공격
            • 금전적인 문제를 해결하기 위해서라며 피해자가 계좌이체를 하도록 요구
          • 실행
            • 피해자는 문제를 해결하기 위해 계좌이체를 하게되며 공격자는 목표 달성
        • 대응책
          • 전화통화의 음질 이상, 내용 이상 시 주의
          • 신원증명 요청시 주의
          • 이메일이나 팩스로 정보를 전송해달라고 요청하는 경우 주의
          • 문서세절기 이용하여 중요서류 파쇄
          • 임직원 보안 인식교육 주기적으로 실시
      • ICT 사회공학 공격 (Information and Communication Technology Social Engineering Attack)
        • 종류
          • 피싱 (Phishing)
            • 개요
              • 피싱은 개인정보(private data) 와 낚시(fishing) 의 합성어로 개인정보를 낚는다는 의미
              • 수신자에게 이메일을 발송하여 Pisher 들이 운영하는 위조된 사이트로 이동시킨 후 이들에게 사이트 개편 등의 이유로 고객정보(신용카드번호, 비밀번호 등) 을 요구한다.
            • 공격방법 및 대응방법
              • 공격방법 : 유사한 이메일 주소 사용, 유사한 도메인 이름 사용, 이메일 주소 스푸핑, 주소창 위조, 팝업창 이용 등
              • 대응방법 : 사용자 주의, URL 필터링, 사용자 대상 홍보, 의심사이트에 대한 신고하기 등
          • 파밍 (Pharming)
            • 개요
              • 해커가 도메인 자체를 중간에서 탈취, 진짜 사이트 주소를 입력해도 가짜 사이트로 연결되도록 하는 것으로 피싱에서 더 나아간 형태 (피싱보다 피해가 큼)
            • 공격방법 및 대응방법
              • 공격방법 : DNS 서버로 IP 요청 갈취 후 위조된 사이트로 Redirection 시킴
          • 스미싱 (Smishing)
            • 개요
              • SMS 와 Phishing 의 결합어로 휴대폰 문자메시지를 이용하여 피싱하는 방법
            • 공격방법 및 대응방법
              • 공격방법 :
                • 전형적인 유형으로 데이터 서비스 웹사이트로부터 온 휴대폰 메시지가 해당 웹사이트를 방문하여 서비스를 해지하지 않으면 일정금액의 요금이 청구된다고 메시지를 보내서 유인
                • 이를 통해 휴대폰 사용자로 하여금 특정 웹사이트로 유인한 후 사용자의 PC에 트로이목마 프로그램을 설치하고, 사용자의 금융정보나 비밀번호를 알아냄
              • 대응방법 : URL 확인, 주기적인 교육/훈련
          • 스피어 피싱 (Spear Phishing)
            • 개요
              • 조직 내에 신뢰할만한 사람으로 위장해 메일을 보내 ID/PW 를 탈취한다.
            • 공격방법 및 대응방법
              • 위조된 사이트에 접속 유도 혹은 첨부파일 등을 이용한 악성코드 설치
  • 백도어(back door) / 트랩도어 (Trap door)
    • 개요
      • 시스템의 보안이 제거된 비밀통로, 서비스 기술자나 유지보수 프로그래머들의 접근 편의를 위해 시스템 설게자가 고의적으로 만들어 놓은 통로
      • 현장에서 서비스 기술자나 공급사의 유지보수 프로그래머가 업무 편의성을 향상시키기 위함
      • 악의적인 목적으로 만들어 놓은 통로도 있는데, 백 오리피스 (Back orifice) 가 대표적임
        • 이 프로그램은 해킹 프로그램의 일종으로 PC에 내장되어 사용자 몰래 사용자의 정보를 저장, 유출하기 위한 프로그램임
        • 대표적인 트로이목마
      • 웜 홀(Worm Hole), 트랩도어, Maintenance hook, Adminstrative hook 이라고도 함
    • 백도어 종류
      • 파일 시스템 백도어
        • ls, du, fsck 같은 명령어를 수정해서 특정 디렉터리나 파일을 숨김
        • 숨기려는 부분을 배드섹터로 처리
      • 프로세스 은닉 백도어
        • 특정 프로세스를 숨겨서 합리적인 서비스를 가장함
        • 라이브러리 루틴 수정으로 프로세스를 숨김
        • 커널 수정으로 특정 프로세스를 숨김
      • 네트워크 트래픽 백도어
        • 네트워크 트래픽을 숨김
        • 사용하지 않는 네트워크 포트를 사용하여 침입
      • TCP 셸 백도어
        • 1024번 이상의 TCP 포트에 셸 제공 네트워크 서비스 설치
        • netstat 등을 통해 확인이 가능
      • UDP 셸 백도어
        • 침입차단 시스템 우회가 가능 (DNS 서비스를 위해서 UDP 패킷을 허락)
      • login 백도어
        • login.c 프로그램을 수정함
        • 특정 백도어 패스워드 입력 시 인증과정 없이 로그인 허용
        • utmp 나 wtmp 등과 같은 로그파일에 기록되지 않음
          • utmp : 현재시스템에 로그인한 사용자의 상태정보/w,who,finger
          • wtmp : 사용자의 성공한 로그인,로그아웃정보,시스템의 부팅/종료정보 히스토리/last
          • lastlog : 마지막 성공한 로그인 정보를 가지고 있는 로그파일
          • btmp : 실패한 로그인 시도에 대한 기록/lastb
          • loginlog : btmp 와 동일하나 text 파일이고, Unix 에서 사용
        • MD5 에 의한 무결성 점검이 권고됨
      • library 백도어
        • 공유 라이브러리를 사용함
        • crypt.c 등을 수정해서 백도어를 삽입함
      • kernel 백도어
        • 커널 자체를 수정함
        • 가장 찾기 어려운 백도어로 MD5 체크썸으로도 진단이 불가능함.
      • 리눅스/유닉스 백도어
        • httpd 시작프로그램을 이용해서 자동 실행
          • root 권한으로 데몬 운영 : 보안상 매우 취약
            • 클라이언트가 접속을 하게 되면 httpd 가 root 권한으로 실행됨 = 클라이언트 역시 root 권한
            • 클라이언트가 접속하면 httpd 를 nobody 로 실행되게 설정해야 함
    • 발생원인
      • 제거하는 것을 잊어버린 경우
      • 테스트를 위해 고의적으로 남겨두는 경우
      • 완성된 프로그램의 유지보스를 위해 고의적으로 남겨두는 경우
    • 대응책
      • 인터넷 취약점을 이용하는 스니핑과 달리 백도어 프로그램은 사용자들이 조금만 주의를 기울이면 쉽게 예방할 수 있으며 방법 또한 바이러스 예방과 크게 다르지 않음
      • 프로그램이 개발되어 실제의 작업환경에서 사용될 때 트랩도어로써 활용될 수 있는 루틴들의 제거 여부를 확인하여야 하며, 실제 프로그램에 대한 테스트를 하면서 중간에 이상한 출력이 나오는지 검토해 보아야 함
      • 윈도우/유닉스의 정상적인 프로세스를 기억, 현재 실행중인 프로세스 확인
        • 윈도우 : Ctrl+Alt+Del 후 Windows 작업관리자 확인
        • 자주 사용하는 프로세스 (윈도우)
          • csrss : Client/Server Runtime SubSystem
            • 윈도우 콘솔 관리
            • 쓰레드의 생성, 삭제
            • 32비트의 가상 MS/DOS 지원
          • svchost : Service Host - 30:44
            • dll (동적라이브러리) 파일로 실행되는 프로세스의 기본 프로세스
    • 백도어 탐지법
      • 소스코드 리뷰
      • HIDS 설치
        • Host-based IDS (S/W)
        • 백도어를 탐지하는 최선의 방법
        • 백도어가 임의의 포트에 대기하고 있을 때 해당 포트를 탐지함
      • 최초의 권한획득을 최소화 (허가 X)
      • 지속적인 점검이 필요
  • 루트킷 (rootkit)
    • 개요
      • 시스템 침입 후 침입 사실을 숨긴 채 차후의 침입을 위한 백도어
        • 트로이목마 설치, 원격접근, 내부 사용 흔적 삭제, 관리자 권한 획득 등 주로 불법적인 해킹에 사용되는 프로그램 모음
      • 루트킷이 설치되면 자신이 뚫고 들어온 모든 경로를 바꾸어 놓고, 명령어들을 은폐해 놓음
        • 해커가 시스템을 원격으로 해킹하고 있어도 루트킷이 설치되어 있는지 사실조차 감지하기 어려움
      • 침입자는 먼저 암호를 크래킹하거나 시스템 취약점을 찾아내어서 사용자용 접근 권한을 획득한 뒤, 컴퓨터에 루트킷을 설치함
      • 루트의 권한을 쉽게 획득하게 돕는 도구, 자신을 은폐, 삭제할 수 없도록 함
        • 유저모드
          • Application (커널모드 함수호출 / 응답받기)
        • 커널모드
          • 원본코드 / 원데이터
        • 루트킷은 User 모드의 Application, 커널모드의 원본코드, 원데이터를 공격 (경로 변형-Hooking)
  • 은닉채널
    • 개요
      • 은닉채널 (Covert Channel) : 정보 전송이 목적이 아닌 채널
      • 통신 채널은 은닉 채널과 공개 채널(Overt Channel) 로 구분됨.
      • 은닉 채널은 다계층 보안 시스템(Multi-level Security System) 이 존재하는 경우 계층 간의 보안 허점을 이용하여 공개 채널의 사용자에게는 노출되지 않는 통신 채널을 구성함. 이러한 성격 때문에 디지털 워터마크나 디지털 서명 등에 사용되고 있음
      • 악성코드 간의 통신 등에도 사용되기 때문에 은닉 채널의 탐지가 주요 이슈가 되고 있음
      • 유사한 용어로 스테가노그래피(Steganography), 잠재적인 채널(Subliminal Channel) 등이 있음
      • 은닉 채널의 모델은 The Prisoners’ Problem 모델이 사실상의 표준 모델(De-facto Model) 이 되었음
      • 색출이 어려움
    • 컴퓨터 네트워크 프로토콜에서의 은닉 채널
      • 개요
        • 네트워크 트래픽에 대한 은닉 채널 형성 기법은 Open Systems Interconnection (OSI) 모델에서 데이터 링크 계층(4), 네트워크 계층과 전송 계층(5), 응용 계층(6)(7) 등 각 계층 별로 다양한 방법이 보고되고 있음. 컴퓨터 네트워크 프로토콜에서의 은닉 채널의 형성 기법을 분류하면 아래와 같음
      • 사용하지 않는 헤더 비트
        • 프로토콜 명세 상에서 특정 값을 사용하도록 명시하지 않음
        • 수신자가 값을 확인하지 않음
        • 추후 사용하기 위해 예약해둔(Reserved) 영역을 이용
      • 확장 기능 및 패딩
        • 많은 프로토콜들이 확장성을 고려해 헤더에 확장 기능(Extension Header) 을 정의하여 필요한 경우에 선택적으로 사용하고 있음
        • 대부분의 헤더 확장 기능은 앞으로 추가될 기능을 충분히 고려하지 못하였기 때문에 보안에 잠재적인 위협이 될 수 있음
      • 프로토콜 필드
        • 프로토콜 명세에 정의된 필드를 임의의 값으로 수정, 패킷의 전송에 직접적으로 관련이 있는 필드인 경우 예상치 못한 에러를 가져올 수 있음
        • 패킷 전송 타이밍 : 전송된 패킷의 시간 간격이나 유실을 이용한 낮은 속도의 은닉 채널을 구성할 수 있음
      • 터널링
        • 현 프로토콜(보통 IP프로토콜)을 다른 프로토콜로 전환하는 과정 중에 은닉 채널을 삽입할 수 있음. 이를 통해 방화벽 등의 보안 장비를 우회할 수 있음.
    • 대응책
      • HIDS
      • 통신대역폭에 대한 엄격한 제한
      • 정기적인 감사

댓글남기기