#서버의침입및정보유출단계 서버침입 정보획득 권한획득 공격 재침입 계정크랙 전수공격 브루트포스 BruteForceAttack 사전공격 DictionaryAttack 스푸핑 스니핑 서비스거부 spoofing sniffing dos 버퍼오버플로 레이스컨디션 기본설정오류 사회공학적 사회공학적인공격 접근제어 임의적접근제어 강제적접근제어 역할기반접근제어 최소권한 DAC MAC RBAC

서버의 침입 및 정보유출 단계

서버의 침입 및 정보유출 단계

정보획득 단계 -> 권한획득 단계 -> 공격 단계 -> 재침입 단계 로 이어짐

  • 정보획득 단계 : 공격 대상에 대한 정보를 얻고, 공격 대상 시스템을 결정함
  • 권한획득 단계 : 공격 대상 서버에서 활동할 수 있도록 권한을 획득함. 관리자 권한을 획득이 목표.
  • 공격 단계 : 공격자가 침입했다는 흔적을 지우고, 추후 쉽게 재침입 할 수 있게 백도어 설치
  • 재침입 단계 : 이를 이용해 다른 시스템을 공격하거나 정보 변경/유출, 그 외 비권한 행위 수행

서버 공격의 유형

계정 크랙 공격

계정 크랙 공격

  • 서버에 접속할 수 있는 계정의 ID 와 패스워드를 알아내는 공격
  • 크랙(Crack) : 깨다, 부수다, 균열을 내다, 무력화하다

전수 공격 (Brute Force Attack)

  • ID 와 패스워드를 자동 조합해 크랙하는 공격.
  • 전수공격은 무차별 대입으로, 많은 시간을 소요한다.

사전 공격 (Dictionary Attack)

  • ID 와 패스워드가 될 가능성이 있는 단어사전 파일로 만들어 놓고
  • 이 사전에 있는 단어를 대입하여 크랙하는 공격
  • 사전 파일 : 서버 이용자의 다양한 정보로 생성 (이름, 생년월일, 전화번호, 가족, 차량, 취미 등)
  • 사전 파일의 단어를 다양하게 조합해 시도한다.
  • 전수 공격보다 공격시간이 훨씬 단축됨

네트워크 공격

  • 스푸핑(Spoofing) : IP 주소나 MAC 주소 등을 속여, 정보를 가로채고 서비스를 방해하는 공격
  • 스니핑(Sniffing) : 네트워크 패킷으로 전달되는 정보를 도청하는 공격
  • 서비스 거부(DoS) 공격 : 대량 패킷을 이용해 네트워크를 마비시키거나 특정 서비스 수행을 방해

시스템 취약점을 이용한 공격

버퍼 오버플로 공격 (Buffer Overflow)

  • 메모리에 할당된 버퍼의 양을 초과하는 데이터를 입력
  • 이를 통해 프로그램의 복귀주소를 조작해, 공격자가 원하는 코드를 실행하는 공격
  • 버퍼 : 프로그램 처리과정에 필요한 데이터가 일시적으로 저장되는 공격
  • 스택오버플로 공격과 힙 오버플로 공격으로 나뉜다.

레이스 컨디션 공격 (race condition)

  • 두 프로세스가 동일 자원을 사용하기 위해 경쟁하는 것을 이용한 공격
  • 레이스 (Race) : 경쟁
  • 시스템 프로그램과 공격 프로그램이 경쟁상태에 이르게 해, 시스템 프로그램의 권한을 획득
  • 이를 통해 공격 프로그램이 원하는 파일에 접근 가능하게 함

기본 설정 오류를 이용한 공격

  • 다양한 시스템 설정 중 잘못된 설정에 대한 공격
  • 공유 폴더나 관리자 암호를 취약한 암호로 설정해 사용하는 경우 (0000, 1234)
  • IIS 웹 서버 설정에서 쓰기 권한을 부여한 경우 등

사회공학적인 공격

  • 사람을 속여 민감한 정보를 유출하게 하는 기술
  • 신분을 속이거나, 설득과 회유를 통해 사람들을 교묘하게 조종하는 것을 이른다.
  • 즉, 사람을 통한 공격을 의미함.
  • (1) 내부자와의 결탁으로 인한 정보유출
  • (2) 내부자의 부주의로 인한 정보유출
  • (3) 피싱, 파밍 등으로 인한 정보유출

서버 보안 대책

계정과 패스워드 보호

  • 사용자별 / 그룹별 접근권한 부여
  • 루트 권한에 대한 사용 제한
  • 불필요한 사용자 계정 삭제
  • 공개용 계정 (guest, anonymous) 사용 제한
  • 새로운 사용자 추가 시 일관성 있는 정책 유지
  • 비밀번호 일정 횟수 이상 오답시 계정 락
  • 쉬운 단어를 패스워드로 사용하지 않기
  • 문자, 숫자, 특수문자를 조합하기
  • 패스워드 길이와 사용기간에 대한 정책 강화
  • 패스워드 파일을 해시함수로 일방향 암호화 해서 보관
  • 섀도 패스워드 시스템 사용

접근제어 정책

임의적 접근제어 (DAC)

  • Discretionary Access Control
  • 관리자 / 자원 소유자가 보안 관리자의 개입 없이 보유 자원의 접근권한을 다른 사용자에게 부여하는 방식
  • 보안보다 자원의 공동 활용이 더 중요시되는 환경에 적합
  • 자원의 유출 가능성을 내포하고 있다.
  • 자원별 접근제어 목록 (ACL : Access Control List) : 자원별 - 사용자별 접근권한에 대한 정보를 관리

자원 소유자가 자율적인 의지로 임의적으로 제어한다.

강제적 접근제어 (MAC)

  • Mandatory Access Control
  • 각 자원 객체에게는 비밀 등급을
  • 각 사용자에게는 허가 등급을 부여
  • 사용자가 객체에 접근할 때, 사전에 규정된 규칙에 근거해 접근권한이 부여됨
  • 모든 객체 및 사용자에 대해 규칙의 적용 방식이 동일다.
  • 객체의 소유자에 의해 이 접근제어 관계가 변경되지 않는다.
  • 정보의 기밀성이 매우 중요시되는 환경에 적합하다.

규칙이나 규정이 소유자의 의지와 상관 없이 강제적으로 제어한다.

역할 기반 접근제어 (RBAC)

  • Role-Based Access Control
  • 권한(=역할)에 따라 어떤 자원에, 어떤 접근권한을 가지는지가 결정되는 방식
  • 사용자는 역할의 멤버가 되면서 권한을 배정받는다.

역할에 따라 권한을 부여받는 방식

최소 권한

  • Least Privilege
  • 사용자와 객체에 꼭 필요한 최소한의 권한만을 부여하는 방식
  • 목적 : 보안에 대한 취약 요소를 줄이기 위함
  • 스크립트 바이너리 파일이나 리눅스의 apache 계정 등..

보안을 위해 사용자와 객체에 필요한 최소한 권한만을 부여하는 원칙

Unix 계열에서의 접근제어

  • chmod : 파일과 디렉터리에 대한 접근권한 변경
  • chown : 파일과 디렉터리에 대한 소유자 및 소유 그룹 변경

Comments