보안정보

전문화된 보안 관련 자료, 보안 트렌드를 엿볼 수 있는
차세대 통합보안관리 기업 이글루코퍼레이션 보안정보입니다.

SIEM을 활용한 비인가 접근시도 탐지

2017.05.10

6,143

기술지원센터 기술지원팀

 

 

SPiDER TM V5.0은 이글루시큐리티 보안관제 경험과 빅테이터 활용역량이 집약된 통합보안관리솔루션으로 최초탐지부터 로그/네트워크 패킷 분석까지 일원화 된 관제환경구성을 통해 관제업무의 기민성과 효율성을 높이는 동시에 인프라 전반에 대한 가시성을 확보합니다.   

 

 

1. 개 요

 

최근 발생하는 해킹사고의 공격자 IP를 whois(IP조회 인터넷서비스) 조회 결과, 한국으로 확인되는 사례가 빈번하다.

이는 공격자가 국내에서 운영중인 시스템을 해킹하여 운영체제에서 제공하는 VPN(가상사설망) 서비스를 실행시키고, 해당 서비스를 통하여 타 시스템을 다시 공격하기 때문이다.

이와 같은 비인가 접근을 SPiDER TM V5.0 을 통해 탐지 및 대응 할 수 있는 방법에 대해서 기술하고자 한다.

 

 

2. 탐지포인트

 

VPN 계정 탈취를 통한 비인가 접근 시도는 내부 주요자산의 접근이 용이하고 무방비 상태의 정보 수집이 가능한 환경이 제공되는 부분으로 타 비인가 접근 시도 방식 대비 위험도가 크다고 할 수 있다. 

따라서 VPN 계정 탈취 이후의 접근 시도에 따른 공격행위를 탐지함으로써 해킹사고를 사전에 방지 하고자 한다. 

 

 

 

[그림 3-1] 접근 시도 Flow chart 

 

 

▶ SSL_VPN 로그 유형에 따른 로그 형태

 

Logtype – username (가칭)

 


 

Logtype – assigned (가칭)

 


 

 

보안 장비(SSL_VPN)에서 전송 하는 로그의 형태가 유형 별로 상이 하다. 따라서 전송되는 보안로그에 맞는 분석 및 활용 방법을 고민 할 필요가 있다.

username 로그의 경우 유저 정보를 확인할 수 있고 assigned 로그의 경우 PC의 IP주소와 VPN 터널링 후 변환되는 NAT IP주소 확인이 가능하다 

VPN로그 유형 별로 확인할 수 있는 내용이 다르지만 session id 값이 동일한 경우 일련의 접속 로그로 확인할 수 있다.  SIEM에서는 각 유형 별 로그의 정보를 목록화 룰로 만들어 session id를 기준으로 유저정보와 IP정보를 확인 하여 분석 할 수 있다.

 

 

3. SIEM 설정

 

1) 목록화 DB 생성

 

목록화 룰 생성을 위한 목록화 TABLE 생성한다.

 

 

① USERNAME 유형의 목록화 DB

    - 사용자 정보, 시간, session_id로 생성

 

 


 

 

② Assign 유형의 목록화 DB

    - 지역, 시간, session_id, NAT IP, 출발지 IP로 생성

 

 


 

 

 

2) 목록화 룰 생성

 

로그유형에 맞게 생성한 목록화 DB를 이용하여 모든 로그에 대한 필요 정보를 DB에  기록 한다.

 

 


 

 

 

3) 단일 경보 생성

 

단일 경보는 그 하나의 경보로 사용하거나 상관분석을 통해 2개 이상의 단일 경보를 조합하여 사용 가능하다

 

① 설정관리 > 단일경보관리 > “룰 등록” 버튼을 클릭 

② 기본정보(룰 이름, 신뢰도, 발생주기, 발생건수) 입력 

③ 해당 룰을 적용할 Agent 선택 

④ 조건정의 - 앞에서 각 보안시스템의 탐지패턴을 등록한 오브젝트를 선택 추가 

⑤ 저장 버튼 클릭

 

단일경보는 한 개의 오브젝트 혹은 다수의 오브젝트를 이용하여 생성할 수 있다.

 

① 관리 > 설정관리 > 단일경보관리

 

 

 

 

[그림 3-4] 단일경보 생성

 

 

4) VPN 동일 ID 중복접속 확인 경보생성

 

▶ 단일경보 생성 및 등록

 

① 단일경보명: VPN 동일 ID 중복접속 확인 경보 생성

② 발생주기 : 1분
③ 발생건수 : 1건
④ 로그소스 : 데이터베이스 쿼리

⑤ 동일조건 : user_id​

 

 

 

위에서 생성한 목록화 DB를 활용한다. 사용자 정보 테이블과 PC의 IP주소 및 NAT IP주소가 저장되는 테이블을 하나로 JOIN 하여 동일 계정이 2개 이상의 출발지 IP가 탐지 될 경우를 조건으로 설정한다

동일한 ID에서 서로 다른 PC의 IP 중복 접속을 확인하기 위하여 발생주기는 1분 발생건수는 2, s_ip >= 2로 설정한다.

동일한 ID의 경우 동일조건에 사용자 ID를 체크 한다.

 

 



 

 

사용자 정보가 저장되는 테이블과 접속 IP가 저장되는 테이블을 JOIN하여 하나의 사용자, IP 정보 테이블을 생성한다. 

 

 

⊙ select  a.session_id, a.s_info as s_info, a.nat_s_info as nat_s_info, b.user_id as user_id, a.s_location, a.event_time from VPN_ASSIGNED_STAT a, VPN_USERNAME_STAT b where a.session_id = b.session_id and a.idate  > (sysdate -10/1440) 

 

⊙​ IP정보 테이블에서 session_id, 출발지 정보, NAT 정보 user정보 테이블에서 사용자 정보를 JOIN 한다.  

 

 

동일한 사용자 ID에서 접속한 경우 동일 조건에 USER_ID를 설정한다.

 

 


 

 

 

5) Scan 탐지 경보 설정

 

▶ 오브젝트 생성

 

단일경보를 설정하기 위해서는 단일경보에 사용할 오브젝트를 생성해야 한다.

 

① 관리 > 설정관리 > 오브젝트관리

 

 

 

② 보안로그

③ 검색 : d_port

④ 필드명 : d_port

⑤ 연산자 : in

⑥ 값 : 21,22,23,443

 

 


 

  

⑦ ‘+’ 버튼

⑧ 사용할 조건 체크

⑨ 오브젝트 그룹과 오브젝트 이름 등록 후 ‘생성/수정’

 

 


 

 

 

▶ 단일경보 생성

 

① 룰이름 : IP_SCAN

② 조건 : 방화벽 목적지 IP가 10건 이상, DROP가 10건 이상, ACCEPT이 1건 이상 일 경우

③ 발생건수 : d_info >= 10,(status = 102) >= 10, (status = 101) >= 1

④ 로그소스 : 방화벽

⑤ 조건정의 : ‘정보유출위협포트’ 오브젝트

⑥ ‘저장’ 버튼

 

 


 

 

6) LogOn_Fail 탐지 경보 설정

 

▶ LogOn_fail 이벤트 오브젝트 생성 및 등록

 

① 오브젝트명: Password_auth_fail

② 필드: category, type

③ 연산자: =, like

④ 값 : T100(시스템 분류), %Failed password%

 

 


 

  

▶ 단일경보 생성 및 등록

 

① 단일경보명: LogOn Fail(Password)

② 발생주기 : 1분

③ 발생건수 : 10건

④ 조건정의 : Password_auth_fail(기 생성 오브젝트)

 

 


 

  

7) LogOn 이벤트 탐지 경보 설정

 

▶ LogOn_fail 이벤트 오브젝트 생성 및 등록

 

① 오브젝트명: LogOn_EVENT

② 필드: category, type

③ 연산자: =

④ 값 : S100(시스템 분류), 111(LogOn 이벤트 type 값)

 

 


 

 

 

▶ 단일경보 생성 및 등록

 

① 단일경보명: LogOn Success

② 발생주기 : 1분

③ 발생건수 : 1건

④ 조건정의 : LogOn_EVENT(기 생성 오브젝트)

 

 


 

 

8) 상관분석 설정

 

상관분석은 2개 이상의 단일경보를 탐지되는 순서로 승계레벨로 설정하여 연관성을 확인할 수 있다.

 

① 설정관리 > 단일경보관리 > “상관분석등록” 버튼을 클릭하고 등록할 단일경보를 선택     

② “=>” 버튼을 클릭 

③ 상관분석 이름을 설정하고 등록할 그룹을 선택 

④ 탐지되는 순서대로 승계 레벨을 설정 

⑤ 승계할 정보를 입력(아래의 값은 전 단계에서 탐지한 출발지 IP 통일하게 보도록 설정) 

⑥ 상관분석 등록

 

 


 

  

⑦ 탐지되는 순서대로 승계 레벨을 설정 

⑧ 승계할 정보를 입력

    - VPN의 NAT IP가 방화벽 출발지 IP가 된다. 방화벽 목적지 IP가 서버의 Origin IP 가 된다. 

⑨ 상관분석 등록

 

 


 

  

4. 대응 전략 및 결론

 

하나의 시스템이 해킹된 경우 동일대역에 위치한 다른 시스템들도 심각한 위협에 노출된다는 사실을 염두에 두어야 한다.  따라서 다음과 같은 기본적인 정책을 적용하더라도 많은 해킹시도를 막을 수 있다.

 

첫째. VPN 계정 화이트 리스트를 적용한다.

둘째. Brute-Force 공격으로부터 패스워드 탈취를 막기 위해 패스워드 복잡도 설정 하여 패스워드 추측을 어렵게 한다.

셋째. 로그인 실패 시 재 접속 시간 설정하여 계정탈취를 예방한다.

 

해킹 사고는 보안장비 및 정책을 아무리 잘 수립하더라도 발생 할 수 있다.

해킹 사고가 발생하는지 지속적인 모니터링과 사고발생 이후 최초 침투경로를 찾아 동일한 해킹사고가 발생하지 않도록 조치를 취하는 것이 중요하다.