AXGATE SSL VPN

Download 0
Last updated Jul 20, 2026

AXGATE SSLVPN - 무차별 대입 후 로그인 성공

30분 내 동일 계정에 로그인 실패가 5회 이상 반복된 뒤 로그인에 성공한 경우를 계정 탈취 의심으로 탐지합니다.

Overview

Priority High
Type Batch
Schedule Every month/Every day/Every hour/Every 30 mins */30 * * * *
Message AXGATE SSLVPN - 무차별 대입 후 로그인 성공: $user 계정이 로그인 실패 $fail_cnt회 후 $fail_to_succ_min분 만에 성공 (출발지 $ip_cnt개: $ip_list)
Output field order user, fail_cnt, succ_cnt, fail_to_succ_min, last_fail_dt, first_succ_dt, ip_cnt, ip_list, _time, result, src_ip, src_country
MITRE Techniques T1078· T1110
MITRE tactics TA0001 Initial Access· TA0003 Persistence· TA0004 Privilege Escalation· TA0005 Defense Evasion· TA0006 Credential Access
Origin User proposal 이정표

Query

1table from=$("from") to=$("to") *:SSLVPN_AXGATE 2| search _schema == "axgate-sslvpn-userauth" and action == "login" and lower(result) == "fail*" 3| stats count as fail_cnt, dc(src_ip) as ip_cnt, values(src_ip) as ip_list, max(_time) as last_fail_dt by user 4| search fail_cnt >= 5 5| join type=inner user [ 6 table from=$("from") to=$("to") *:SSLVPN_AXGATE 7 | search _schema == "axgate-sslvpn-userauth" and action == "login" and lower(result) == "success" 8 | stats count as succ_cnt, min(_time) as first_succ_dt by user ] 9| eval fail_to_succ_min = datediff(last_fail_dt, first_succ_dt, "min") 10| search fail_to_succ_min >= 0 11| eval ip_list = if(isnull(ip_list), "", strjoin(", ", ip_list)) 12| sort -fail_cnt 13| join type=left user [ 14 table from=$("from") to=$("to") *:SSLVPN_AXGATE 15 | search _schema == "axgate-sslvpn-userauth" and action == "login" 16 | lookup geoip src_ip output country as src_country 17 | order _time, user, result, reason, src_ip, src_country ] 18| sort -fail_cnt, user, _time

30분마다 최근 30분의 사용자 인증 로그를 조회합니다. 로그인 실패 이벤트를 계정별로 집계하여 실패가 5회 이상인 계정을 찾고, 같은 구간의 로그인 성공 이벤트와 계정 기준으로 조인합니다. 마지막 실패 시각에서 첫 성공 시각까지의 간격(fail_to_succ_min)을 계산하여, 성공이 실패 이후에 발생한 경우(0분 이상)만 탐지합니다. 근거 로그로 해당 계정의 로그인 이벤트 전체(시각·결과·사유·출발지 IP·국가)를 시간순으로 조인합니다.

Threat analysis

반복된 로그인 실패 직후의 성공은 무차별 대입이나 비밀번호 스프레이 공격이 성공하여 계정이 탈취되었음을 의미할 수 있습니다. 실패와 성공 사이 간격이 매우 짧고 출발지가 여러 개이면 자동화 도구에 의한 공격일 가능성이 높습니다. 공격자는 로그인 성공 직후 VPN 터널로 내부망에 접근하므로, 탐지 즉시 대응해야 하는 높은 중요도의 이벤트입니다.

False positives

사용자가 비밀번호를 여러 번 잘못 입력한 뒤 올바르게 입력한 경우 탐지됩니다. 출발지 IP가 평소 접속 위치와 같고 실패 사유가 비밀번호 불일치뿐이면 오탐일 가능성이 높습니다. 비밀번호 변경 직후 옛 비밀번호가 저장된 단말이 반복 실패를 일으키고, 이후 새 비밀번호로 로그인한 경우에도 탐지됩니다. 오탐이 잦은 환경에서는 실패 임계치(fail_cnt >= 5)를 상향하거나, 실패 출발지와 성공 출발지가 같은 경우를 별도로 분류하도록 조정합니다.

Response actions

사용자에게 로그인 시도 여부를 즉시 확인하고, 본인이 아니면 VPN 세션을 종료하고 비밀번호를 초기화합니다. 실패 출발지 IP를 위협 인텔리전스로 조회하고 방화벽 또는 SSL VPN 장비에서 차단합니다. 로그인 성공 이후 해당 계정·터널 IP의 내부 자원 접근, 대량 다운로드, 설정 변경 등 후속 행위를 조사합니다.

No comments yet.