Credential Stuffing이란 무엇인가요?
크리덴셜 스터핑(credential stuffing)은 공격자가 탈취한 사용자 이름과 비밀번호 조합(대개 이전 데이터 유출 사고에서 확보)을 사용해 여러 온라인 계정에 무단으로 접근하려는 유형의 사이버 공격입니다. 공격자는 사용자들이 동일한 로그인 정보를 재사용했을 것이라는 기대를 바탕으로, 다양한 웹사이트에서 이러한 조합을 대입해보는 과정을 자동화합니다.
Credential Stuffing vs. Password Stuffing: 차이 이해하기
자격 증명 스터핑 공격(때로는 비밀번호 스터핑 공격이라고도 함)은 사이버 보안에서 중요한 우려로 자리 잡았습니다. 이러한 공격은 사이버 범죄자들이 실행하기는 비교적 쉽지만, 보안 팀이 탐지하기는 어렵습니다. 시작하기 전에 자격 증명 스터핑과 비밀번호 스터핑의 차이를 살펴보겠습니다:
- Credential Stuffing: 이 공격은 해커가 이전 데이터 유출 사고 등에서 얻은 경우가 많은 탈취된 사용자 이름과 비밀번호 조합을 사용해, 여러 웹사이트 또는 서비스에 걸쳐 다수의 사용자 계정에 무단으로 액세스할 때 발생합니다. 여기서 핵심 요소는 재사용된 자격 증명(크리덴셜)의 악용입니다.
- Password Stuffing: 반대로 비밀번호 스터핑의 의미는 일반적으로 유출된 적이 있거나 흔히 사용되는 비밀번호 목록을 활용해, 침해 사고에서 확보한 “완전한 사용자 이름-비밀번호 쌍”에 반드시 의존하지 않더라도 서로 다른 사용자 이름에 대해 시도해 보는 데 초점이 맞춰집니다.
Credential Stuffing이 작동하는 방식
자격 증명 스터핑은 재사용된 사용자 이름과 비밀번호를 악용하여, 공격자가 여러 사이트 전반에서 로그인 시도를 자동화함으로써 무단 액세스를 얻을 수 있게 합니다.
- 데이터 수집(탈취된 자격 증명 확보)
- 자격 증명의 출처: 공격자는 보통 여러 웹사이트와 서비스에서 발생한 이전 데이터 유출 사고를 통해 도난당한 사용자 이름과 비밀번호의 대규모 데이터 세트를 확보합니다. 이러한 데이터 세트는 종종 다크 웹이나 기타 불법 플랫폼에서 제공됩니다.
- 자동화된 공격 준비
- 봇넷 또는 스크립트: 공격자는 봇, 스크립트 또는 자동화 소프트웨어 도구(예: Sentry MBA 또는 Snipr)를 사용해 공격을 수행합니다. 이러한 도구는 탈취된 자격 증명을 로그인 양식에 빠르게 입력함으로써 대규모 로그인 시도를 처리할 수 있습니다.
- 프록시 네트워크: 탐지를 피하기 위해 공격자는 종종 프록시 서버나 VPN을 사용해 실제 IP 주소를 숨깁니다. 이는 속도 제한(rate-limiting) 메커니즘을 우회하는 데 도움이 되며, 로그인 시도 실패가 너무 많이 발생한 후 계정이 차단되는 것을 방지합니다.
- 공격 실행
- 대량 로그인 시도: 공격자의 봇은 탈취한 사용자 이름과 비밀번호 조합을 하나씩 사용해 웹사이트에 로그인 요청을 보냅니다. 많은 사용자가 서로 다른 플랫폼에서 비밀번호를 재사용하기 때문에, 공격자는 유효한 조합이 여러 서비스에서도 작동하기를 기대합니다.
- 자격 증명 변형: 공격자는 여러 사이트에서 성공할 확률을 높이기 위해 자격 증명을 약간 수정할 수 있습니다(예: 숫자나 특수 문자를 추가).
- 규모와 속도: 이러한 공격은 매우 효율적으로 설계되어 있으며, 수천 번 또는 심지어 수백만 번의 로그인을 빠르게 시도합니다.
- 공격 이후 활동
- 정보 수집: 공격자가 계정에 접근하면 신용카드 번호, 주소, 기타 개인정보 등 가치 있는 정보를 추출할 수 있습니다.
- 접근 권한의 금전화: 탈취되었거나 손상된 자격 증명/계정은 다크 웹에서 판매되거나, 자금을 직접 훔치는 데 사용되거나, 추가 공격을 위해 악용될 수 있습니다.
Credential Stuffing vs. Brute Force 공격
자격 증명 스터핑(credential stuffing)과 무차별 대입(brute force) 공격의 가장 큰 차이점은 공격 방법, 사용되는 데이터의 유형, 그리고 계정에 무단으로 액세스하기 위한 대상에 있습니다.
Category | Credential Stuffing | Brute Force |
|---|---|---|
|
Input |
Stolen Credentials: Uses lists of previously stolen or leaked username and password combinations. |
Guessing Passwords: Systematically tries all possible combinations of characters for a given account. Do not rely on stolen credentials. |
|
Attack Method |
Automated Login Attempts: Uses scripts or bots to test large sets of stolen credentials across multiple websites rapidly. |
Exhaustive Search: Attempts to guess passwords by trying every possible combination, starting with common ones. |
|
Attack Target |
Targeting Multiple Accounts: This strategy focuses on multiple accounts or websites using the same set of credentials, relying on password reuse. |
Single Account or Service: Focuses on a specific account or service, attempting to guess the correct password. |
실제 사례 및 사례 연구
Yahoo (2014-2016)
개요: 2016년에 공개된 Yahoo의 데이터 침해 사고는 2013년의 공격으로 인해 30억 계정을 침해당하게 만들어, 역사상 최대 규모의 침해로 기록되었습니다. 별도의 2014년 침해 사고로는 5억 계정에 영향을 미쳤으며, 두 사건 모두 국가가 지원한 행위자와 연관된 것으로 파악되었습니다.
영향: 공격자들은 이전 침해 사고에서 재사용된 자격 증명을 악용해 사용자 계정에 접근했습니다. 사용자들이 여러 사이트에서 동일한 자격 증명을 반복해서 사용하는 경우가 많았기 때문에, 이들 계정 중 다수가 자격 증명 스터핑(credential stuffing) 기법을 통해 표적이 되었습니다.
결과: 이번 침해는 여전히 역사상 최대 규모 중 하나로 남아 있으며, 비밀번호 재사용의 위험성을 부각합니다. Yahoo의 평판에 큰 타격을 주었고, 결국 Verizon이 Yahoo를 할인된 가격으로 인수하기로 한 결정에도 영향을 미쳤습니다.
Amazon (2018)
개요: 2018년, Amazon이 크리덴셜 스터핑(credential-stuffing) 공격의 표적이 되었다는 보도가 있었습니다. 이 공격에서 사이버 범죄자들은 이전 침해(브리치)에서 유출된 로그인 자격 증명(credential)을 사용해 고객 계정에 무단으로 액세스하려고 시도했습니다.
영향: 공격자는 Amazon 고객 계정을 노려 무단 구매를 시도하거나 저장된 결제 정보를 사용하는 방식으로 접근을 시도했습니다. 크리덴셜 스터핑 공격은 다크 웹에서 인증 정보(자격 증명)가 대량으로 유출된 사건이 많았기 때문에 특히 효과적이었습니다.
결과: Amazon은 더 강력한 사기 탐지 시스템과 강화된 인증 메커니즘을 포함하여, 추가적인 보안 조치를 시행함으로써 대응했습니다.
Shopify (2020)
개요: 2020년, Shopify는 사용자들의 스토어 계정을 대상으로 한 크리덴셜 스터핑(credential stuffing) 공격을 겪었습니다. 공격자들은 이전 침해에서 확보한 데이터를 활용해, 도난된 자격 증명(credential)과 방대한 규모의 사용자 계정을 조합하여 공격을 수행했습니다.
영향: 공격자는 판매자 계정에 접근했지만 Shopify는 무단 활동을 신속하게 탐지했습니다. 일부 사례에서는 공격자가 거래 내역이나 고객 정보 같은 민감한 데이터에 접근하기도 했습니다.
결과: Shopify는 영향을 받은 계정을 즉시 정지하고, 추가 공격을 막기 위해 강화된 사기 탐지 프로토콜을 도입하는 방식으로 대응했습니다.
Credential Stuffing이 증가하는 이유
Credential stuffing은 최근 몇 년간 점점 더 큰 우려로 자리 잡았으며, 조직과 개인이 이러한 공격의 급증으로 어려움을 겪고 있습니다. 이러한 증가를 이끄는 요인을 이해하면 위험을 부각하고 더 강력한 보안 관행의 중요성을 강조하는 데 도움이 됩니다. 아래는 credential stuffing이 점점 더 큰 우려가 된 주요 이유들입니다.
대규모 데이터 유출
- 침해된 데이터의 기하급수적 증가: 수년 동안 데이터 침해의 빈도와 규모가dramatically(크게) 증가해 왔습니다. 사이버 범죄자는 기업, 웹사이트, 소셜 미디어 플랫폼에서 발생한 침해를 통해 다수의 탈취된 사용자 이름과 비밀번호에 접근할 수 있습니다. 그 결과, 향후 크리덴셜 스터핑 공격에 활용할 수 있는 자격 증명(크리덴셜) 풀(pool)이 확대됩니다.
비밀번호 취약점
- 인간의 행동: 많은 사용자는 여러 사이트에서 비밀번호를 계속 재사용합니다. 즉, 공격자가 한 번의 침해로부터 로그인 자격 증명 세트를 확보하면, 그 자격 증명을 다른 서비스(예: 이메일, 금융, 쇼핑 플랫폼)에 적용해 성공할 가능성이 높습니다.
- 취약한 비밀번호 관리(위생): 사람들은 여전히 단순한 조합이나 기본값(default) 비밀번호처럼 추측하기 쉬운 약한 비밀번호를 자주 선택합니다. 그 결과 계정은 크리덴셜 스터핑(credential stuffing)에 더 취약해집니다.
자동화 도구
- 실행 용이성: 크리덴셜 스터핑 공격은 고도로 자동화되어 있습니다. 사이버 범죄자들은 봇과 스크립트를 사용해 서로 다른 플랫폼에서 탈취한 로그인 자격 증명을 수천~수백만 건까지 빠르게 대입(테스트)합니다. 이러한 도구 덕분에 공격을 훨씬 더 쉽게 확장할 수 있습니다.
- 높은 효율성: 자동화 덕분에 공격자는 수동 개입 없이도 이러한 공격을 빠르게 실행할 수 있어, 계정을 손상(침해)할 수 있는 규모와 속도가 더 커집니다.
- 봇 개발: 사이버 범죄자들은 탐지를 회피하기 위해 인간의 행동을 시뮬레이션할 수 있는 점점 더 고도화된 봇을 개발합니다. 이러한 봇은 CAPTCHA 과제를 풀고, 사용자 에이전트를 순환하며, 경우에 따라서는 다단계 인증(MFA)을 우회하기도 합니다.
온라인 서비스 및 원격 근무의 활용 증가
- 더 많은 표적 계정: 더 많은 서비스가 온라인으로 이동함에 따라, 개인이 공격 대상으로 삼을 수 있는 계정이 늘어납니다. 소셜 미디어부터 은행, 전자상거래에 이르기까지 범위가 넓어지며, 이는 크리덴셜 스터핑 공격의 공격 범위를 확대합니다.
- 인터넷 연결성 증가: 인터넷에 연결된 기기의 수가 늘어나면서(IoT, 스마트 기기) 공격자는 이제 더 많은 침입 지점을 확보할 수 있으며, 자격 증명 스터핑을 사용해 이러한 기기에 있는 계정을 노릴 수 있습니다.
자격 증명 스터핑의 결과
자격 증명 스터핑은 개인과 조직 모두에 영향을 미칠 수 있을 정도로 광범위한 결과를 초래할 수 있습니다. 이러한 공격의 영향을 살펴보면, 왜 그것이 보안과 신뢰에 대해 매우 중대한 위협이 되는지 확인할 수 있습니다.
금전적 손실
- 직접적인 금전적 영향: I공격자가 금융 계정에 접근하게 되면, 사기성 구매를 하거나 자금을 이체하거나 다른 형태의 사기를 저지를 수 있습니다. 전자상거래 사이트의 경우, 이는 환불 청구(차지백) 또는 매출 손실로 이어질 수 있습니다.
- 복구 비용: 기업은 침해 사실을 조사하고, 피해를 입은 사용자에게 보상하며, 공격으로부터 복구하는 데 상당한 비용이 발생할 수 있습니다. 여기에는 법률 비용, 고객 지원, 그리고 사이버보안 조치가 포함될 수 있습니다.
IBM의 2023년 데이터 침해 비용 보고서에 따르면, 데이터 침해의 평균 비용(자격 증명 스터핑 공격이 포함될 수 있음)은 약 445만 달러였습니다. 자격 증명 스터핑은 규모에 따라 전체 침해 비용에 크게 기여할 수 있습니다.
신원 도용 및 개인정보 침해
- 도난당한 개인 정보: 공격자가 개인 계정(이메일, 소셜 미디어 등)에 성공적으로 접근하면 이름, 주소, 전화번호, 결제 정보와 같은 민감한 정보를 빼내 신원 도용이나 사기로 이어질 수 있습니다.
- 민감 데이터의 노출: 기업의 경우 손상된 계정에는 고객의 개인정보(PII)가 포함되어 있을 수 있으며, 이는 데이터 침해, 규제 기관의 과태료, 그리고 대중의 반발로 이어질 수 있습니다.
평판 손상
- 신뢰 상실: 고객은 크리덴셜 스터핑 공격을 경험한 기업에 대해 신뢰를 잃을 수 있으며, 특히 민감한 데이터가 유출되었거나 회사가 사용자 정보를 보호하지 못하는 것으로 보일 경우 그 정도가 크게 나타날 수 있습니다. 이는 고객 이탈로 이어지고 브랜드 충성도가 감소할 수 있습니다.
- 파트너십에 대한 부정적 영향: 파트너십에 의존하는 기업은 보안이 침해당할 경우 파트너와의 관계가 악화되거나 파트너로부터 신뢰를 잃을 수 있습니다. 기업에 대한 신뢰는 비즈니스 협상과 향후 협업에도 영향을 미칠 수 있습니다.
추가 공격을 위한 악용
- 피싱 및 소셜 엔지니어링: 공격자는 사용자의 계정에 접근한 뒤 이를 피싱 캠페인의 발판으로 활용할 수 있습니다. 또한 사용자인 것처럼 위장해 연락처를 속여 개인 또는 금융 정보를 공개하게 만들 수 있습니다.
- 교차 서비스 공격: 공격자가 한 계정에 액세스하게 되면, 동일한 자격 증명을 사용해 다른 서비스에 로그인을 시도할 수 있습니다. 사용자가 비밀번호를 재사용했다면 공격자는 다른 계정에도 접근하여 공격의 영향이 더욱 확대될 수 있습니다.
- 자격 증명 판매: 탈취된 자격 증명은 다크 웹에서 판매될 수 있으며, 이는 더 큰 규모의 사이버 범죄 시장으로 이어집니다. 공격자는 이 시장을 악용해 추가 공격 캠페인을 시작하거나, 다른 악의적인 행위자에게 자격 증명을 제공할 수 있습니다.
예방 및 방어 메커니즘
다음은 자격 증명 스터핑(credential stuffing) 공격을 완화하기 위한 모범 사례와 방법들입니다.
다단계 인증(MFA)
- 추가 인증: MFA는 사용자가 사용자 이름과 비밀번호를 확인하도록 요구합니다. 이 두 번째 인증 요소는 사용자가 알고 있는 것(예: PIN), 사용자가 가지고 있는 것(예: 스마트폰 또는 하드웨어 토큰), 또는 사용자인 것(예: 지문과 같은 생체 데이터)일 수 있습니다.
- 비밀번호 재사용 위험 완화: 자격 증명 스터핑 공격은 종종 사용자가 여러 사이트에서 비밀번호를 재사용한다는 점을 악용합니다. MFA는 공격자가 올바른 사용자 이름과 비밀번호를 가지고 있더라도 공격자가 접근을 획득하기 훨씬 더 어렵게 만듭니다.
비밀번호 관리자
- 각 계정마다 개별 비밀번호: 비밀번호 재사용은 종종 온라인 서비스에 요구되는 비밀번호 복잡성 때문에 발생합니다. 그 결과 사용자는 하나 또는 아주 소수의 복잡하지만 기억해 둔 비밀번호에 의존하는 경향이 있습니다. 비밀번호 관리자는 복잡한 비밀번호와 패프레이즈를 안전한 저장소에 보관함으로써 사용자를 지원합니다.
- 재사용 또는 유출 여부에 대한 자동 검사: 최신 비밀번호 관리자는 사용자가 저장된 비밀번호를 재사용하고 있는지 확인하고, 알려진 유출 계정 자격 증명과 계정 및 비밀번호를 대조하여 검증합니다.
CAPTCHA
사람에게는 간단한 작업을 완료하도록 요구하지만, 자동화 봇이 이를 그대로 재현하기는 어렵습니다.
텍스트 기반 CAPTCHA
- 왜곡된 텍스트: 이것은 전통적인 형태의 CAPTCHA로, 사용자가 이미지에서 왜곡된 문자나 숫자를 입력하도록 요청합니다. 왜곡으로 인해 알고리즘에 의존하는 봇이 단순한 패턴을 인식하고 문자를 정확하게 해독하기가 어렵습니다.
이미지 기반 CAPTCHA
- 객체 인식: CAPTCHA의 최신 변형은 사용자가 특정 물체가 포함된 이미지를 선택하도록 요청합니다(예: “신호등이 보이는 모든 이미지를 클릭하세요” 또는 “자전거가 있는 이미지를 선택하세요”). 사람은 물체를 쉽게 알아볼 수 있지만, 특히 이미지가 다양하거나 배경 잡음이 있는 경우 이 작업은 봇에게 여전히 어렵습니다.
인비저블 CAPTCHA (reCAPTCHA v3)
- 행동 시그널: 인비저블 CAPTCHA는 머신러닝 모델을 사용해 사용자가 스크롤하거나 클릭하는 방식과 같은 패턴을 분석합니다. 이러한 패턴은 인간의 고유한 행동 특성으로, 봇이 흉내 내기 어렵습니다.
봇 탐지
봇 탐지 또는 봇 관리에는 사용자가 사람인지 봇인지 판단하기 위해 다양한 행동, 네트워크, 기술 시그널을 모니터링하는 작업이 포함됩니다. 봇 활동을 포착하기 위해 여러 가지 방법이 사용되며, CAPTCHA 시스템과 함께 적용되는 경우가 많습니다.
- 행동 분석. 사람 사용자는 마우스 움직임, 타이핑 패턴, 페이지 상호작용 패턴 등 봇이 일반적으로 복제할 수 없는 방식으로 웹 페이지와 상호작용합니다. 또한 봇은 사람 사용자에게는 너무 빠른 속도로 양식을 작성하거나 작업을 수행하는 경향이 있으므로, 입력 지연을 분석하면 봇을 식별하는 데 도움이 될 수 있습니다.
- IP 주소 및 지리 위치 분석. 봇 탐지 시스템은 IP 주소와 그 평판을 추적합니다. 봇이 실제 위치를 숨기기 위해 자주 사용하는 것으로 알려진 프록시나 VPN은 의심을 유발할 수 있습니다. 짧은 기간에 동일한 IP 주소에서 많은 요청이 발생하면 봇 공격으로 플래그가 지정될 수 있습니다. 또한 봇은 계정이 없거나 위치가 비정상적인 국가에서 서비스나 리소스에 접근하려고 시도합니다. 예를 들어, 한 국가의 사용자가 다른 국가의 계정에 로그인하는 경우 의심스러운 것으로 플래그가 지정될 수 있습니다.
- 브라우저 및 OS 이상 현상. 봇은 흔치 않은 브라우저 버전이나 자동화된 브라우저 버전을 사용하거나, 운영 체제와의 불일치가 나타날 수 있으며, 이를 통해 의심스러운 활동을 식별하는 데 활용할 수 있습니다.
디바이스 지문 채취
브라우저 유형, 운영 체제, 화면 해상도, 설치된 플러그인 등 사용자의 디바이스 고유 속성을 추적함으로써 의심스럽거나 비정상적인 로그인 시도를 식별하는 데 도움이 됩니다. 봇은 일반적으로 실제 환경에서 작동하지 않거나 현실적인 디바이스 지문을 제시하지 못하므로, 이 방법은 정당한 사용자와 자동화된 공격 시도를 빠르게 구분할 수 있습니다. 이러한 의심스러운 로그인을 탐지하고 차단함으로써 디바이스 지문 채취는 자격 증명 스터핑(credential stuffing)에 대한 추가 보호 계층을 제공합니다.
IP 블랙리스트
크리덴셜 스터핑(credential stuffing) 공격에서 공격자는 자동화된 봇을 사용해 대량의 탈취된 사용자 이름과 비밀번호를 시도함으로써 무단 액세스에 성공하려고 합니다. 이러한 공격은 종종 제한된 소수의 IP 주소에서 시작되기 때문에, 해당 IP 주소를 블랙리스트에 올리는 것은 효과적인 방어 수단이 될 수 있습니다. 악의적인 활동과 연관된 IP를 차단함으로써 조직은 크리덴셜 스터핑 공격이 성공하는 것을 크게 방지하여, 무단 액세스가 발생하기 전에 차단할 수 있습니다.
레이트 리미팅
특정 시간 범위 내에서 IP 주소 또는 사용자(계정)가 보낼 수 있는 요청 횟수를 제한하면 레이트 리미팅이 자동화 봇을 차단하는 데 도움이 됩니다. 자동화 봇은 종종 빠르고 반복적인 로그인 시도를 하기 때문입니다. 봇은 일반적으로 요청 한도를 초과하므로, 이 기술은 크리덴셜 스터핑 공격을 크게 지연시키거나 중단할 수 있습니다. 정당한 사용자의 활동을 방해하지 않으면서 보안을 강화하기 위해서는, 이러한 악의적인 공격에 대한 추가 보호 계층을 제공하기 위해 주거용 IP 주소에 레이트 리미팅을 적용하는 것이 권장됩니다.
패스워드리스 인증
패스워드리스 인증(Passwordless authentication)은 사용자가 전통적인 비밀번호를 입력하지 않고도 인증할 수 있도록 하는 보안 메커니즘입니다. 대신 지문, 얼굴 인식과 같은 생체 인식(biometrics), 하드웨어 토큰(예: 보안 키), 일회용 패스코드(OTP), 또는 사용자 신원을 확인하기 위한 푸시 알림 같은 대체 방법을 활용합니다. 이러한 방식은 보안을 크게 강화하고, 자격 증명 스터핑(credential stuffing), 피싱(phishing), 비밀번호 기반 공격(password-based attacks) 등 다양한 사이버 공격으로부터 보호하는 데 도움이 됩니다.
자격 증명 스터핑(credential stuffing)을 방지하기 위한 고급 전략
자격 증명 스터핑(credential-stuffing) 공격이 더욱 정교해질수록, 조직은 앞서 나가기 위해 고급 전략을 도입해야 합니다. AI, 머신러닝, 난독화(obfuscation) 기법과 같은 기술을 활용하면 더 깊은 수준의 보호를 제공하여 공격자가 성공하기 어렵게 만들 수 있습니다.
AI와 머신러닝의 활용
최신 AI 도구는 고급 머신러닝과 행위 분석(behavioral analysis) 기법을 활용해 자격 증명 스터핑(credential stuffing) 시도를 식별하고 차단하는 데 매우 중요합니다. 이러한 도구는 대량의 데이터를 분석하고 실시간으로 의심스러운 패턴을 인지할 수 있어, 기존 보안 시스템이 놓칠 수 있는 악성 자동 로그인 시도를 탐지하고 차단할 수 있습니다.
- 행동 프로파일링: AI 기반 시스템은 정상적인 사용자 행동을 분석하여 정상적인 로그인 시도에 대한 기준선을 만듭니다. 이후 이러한 시스템은 동일 IP 주소에서 비정상적으로 많은 로그인 시도가 발생하는 경우나 로그인 시간 또는 위치에서 비정상적인 패턴이 나타나는 경우처럼, 기준선에서 벗어난 편차를 탐지할 수 있습니다.
- 동적 IP 모니터링: AI 시스템은 과거 활동 이력을 바탕으로 IP 주소의 평판을 추적하고 평가할 수 있습니다. 해당 IP 주소가 악의적인 행위 또는 알려진 봇 활동과 연관되어 있는 경우(위협 인텔리전스 피드나 과거 데이터로부터 확인), AI는 그 IP 주소에서 들어오는 요청을 차단하거나 추가 검증을 요구할 수 있습니다.
- 지오펜싱: AI는 지리적 패턴을 바탕으로 의심스러운 로그인 시도도 식별할 수 있습니다. 예를 들어, 계정이 비정상적이거나 예상과 다른 위치(특히 사용자의 일반적인 위치와 멀리 떨어진 곳)에서 액세스되는 경우가 있다고 가정해 보겠습니다. 이때 시스템은 외국 IP 주소에서 발생하는 크리덴셜 스터핑을 차단하기 위해, MFA 또는 CAPTCHA 같은 추가 검증으로 해당 로그인 시도를 “챌린지”할 수 있습니다.
난독화 기법
- 암호화: 이 방식은 평문(읽을 수 있는 데이터)을 암호화된 형태(암호문)로 변환하며, 올바른 키가 있어야만 원래 데이터로 다시 복호화할 수 있습니다. 암호화는 전송 중이나 저장 중에 비밀번호를 보호할 수 있습니다. 사용자가 비밀번호를 서버로 전송할 때, 암호화는 데이터가 가로채지더라도 공격자가 내용을 읽을 수 없도록 유지되게 합니다.
- 해싱(Hashing): 이 기법은 입력(예: 비밀번호)을 받아 고정된 크기의 문자열을 생성하는 단방향 암호화 함수입니다. 이 출력은 보통 16진수 형태로 표현됩니다. 이러한 출력물을 해시(hash)라고 하며, 입력값에 따라 고유하게 생성됩니다. 암호화와 달리 해싱은 단방향이므로 해시에서 원래 비밀번호를 다시 가져올 수 없습니다. 이는 매우 중요한데, 공격자가 해시된 비밀번호에 접근하더라도 원래 비밀번호를 복구하는 과정을 되돌릴 수 없기 때문입니다.
- 솔팅(Salting): 이 방법은 해싱하기 전에 각 비밀번호에 고유한 랜덤 값(솔트, salt)을 추가합니다. 두 사용자가 동일한 비밀번호를 사용하더라도, 각자의 고유 솔트 때문에 해시 값은 서로 달라집니다. 솔트는 데이터베이스에서 해시와 함께 저장되며, 일반적으로 사용되는 비밀번호에 대해 미리 계산된 해시를 사용하는 레인보우 테이블(rainbow table) 공격으로부터 보호합니다. 랜덤 솔트를 포함하면 흔한 비밀번호라도 고유한 해시가 생성되어, 공격자가 이를 악용하기 훨씬 더 어렵게 됩니다.
지속적인 인증
이 고급 보안 방법은 로그인 시점에만 확인하는 것이 아니라, 세션 전반에 걸쳐 사용자의 신원을 지속적으로 검증합니다. 또한 공격자가 도난 또는 유출된 자격 증명을 사용해 성공적으로 접근한 이후에도 무단 액세스를 감지하고 차단하는 데 도움이 되기 때문에, 자격 증명 스터핑(credential stuffing)을 방지하는 강력한 도구입니다.
사고 대응 계획 수립
대응 및 완화 계획 수립은 조직이 사이버 공격을 효과적으로 예방하고 피해를 줄이며 복구할 수 있도록 하는 데 매우 중요합니다. 잘 구조화된 사고 대응 계획은 보안 사고에 대응하기 위한 명확한 절차와 역할을 제시함으로써, 조직이 공격을 신속하게 탐지하고 차단하며 효율적으로 복구할 수 있도록 돕습니다.
사용자를 위한 모범 사례
사용자는 자격 증명 스터핑(credential stuffing) 공격으로부터 보호받기 위해 자신의 계정을 안전하게 지키는 데 중요한 역할을 합니다. 주요 모범 사례를 따르면, 손상된 자격 증명이 악용될 위험을 크게 줄일 수 있습니다.
- 여러 사이트 또는 여러 신원(Identity)에서 비밀번호를 재사용하지 않도록 하고, 재사용을 권장하지 마세요. 이는 침해된 자격 증명 데이터베이스를 사실상 쓸모없게 만들기 때문에, 자격 증명 스터핑 공격을 피하는 데 가장 효과적인 방법 중 하나입니다.
- 비밀번호 관리자를 사용하세요. 비밀번호 관리자는 모든 계정의 비밀번호를 안전하게 저장하고, 고유하고 강력한 비밀번호를 생성하는 데 도움을 줍니다. 이렇게 하면 각 비밀번호를 일일이 기억할 필요가 없으며, 비밀번호가 고유하고 복잡하게 유지되도록 할 수 있습니다. 가능하다면 MFA를 활성화하는 것을 권장합니다.
- 피싱 시도를 조심하세요. 많은 공격은 피싱 시도에서 시작됩니다. 사용자는 계정에 로그인하라고 하거나 비밀번호를 업데이트하라고 요청하는 원치 않는 이메일이나 링크에 주의해야 합니다.
Netwrix가 어떻게 도울 수 있는지
Netwrix는 자격 증명 스터핑(credential stuffing) 공격으로부터 조직을 방어하도록 설계된 여러 제품을 제공합니다:
Netwrix Threat Manager. 이 고급 위협 탐지 소프트웨어는 머신 러닝과 사용자 행동 분석을 활용하여 의심스러운 활동을 실시간으로 식별하고 대응함으로써 잠재적 위협을 신속하게 차단할 수 있도록 지원합니다.
Netwrix Threat Prevention. 이 도구는 50만 개가 넘는 알려진 유출(손상) 비밀번호에 대한 포괄적인 사전 정보를 활용하여 약하거나 도난당한 비밀번호의 사용을 방지함으로써 자격 증명 기반 공격의 위험을 낮추는 데 도움이 됩니다.
Netwrix Password Policy Enforcer. 이 솔루션은 조직이 Active Directory 전반에서 강력하고 사용자 지정 가능한 암호 정책을 적용할 수 있도록 하여 자격 증명 스터핑, 사전(딕셔너리) 공격, 기타 무차별 대입 방식의 위험을 완화합니다.
Netwrix Password Secure. 실시간 알림과 종합적인 보고 기능을 제공함으로써, 이 도구는 조직이 비밀번호 취약점을 사전에 파악하고 대응할 수 있도록 지원하여 전반적인 비밀번호 보안을 강화합니다.
Netwrix Directory Manager Password Management. Microsoft Entra ID (기존 Azure AD) 및 Active Directory에서 사용자가 자신의 비밀번호를 직접 재설정할 수 있도록 지원하여, 사용자는 바로 업무를 재개하고 IT 팀은 보다 전략적인 작업에 집중할 수 있습니다. 추가 보안을 위해 비밀번호 재설정을 허용하기 전에 MFA 또는 관리자 승인 절차를 원활하게 요구할 수 있습니다.
Netwrix Access Analyzer for AD/EntraID. 약한 비밀번호와 같은 주요 보안 위협을 정확히 찾아내고 즉시 조치하거나, 발생했을 가능성이 있는 의심스러운 로그인 이벤트를 식별합니다.
공유하기
Entra ID 애플리케이션 권한 악용—작동 방식과 방어 전략
AdminSDHolder 수정 — 작동 방식과 방어 전략
AS-REP Roasting 공격 — 작동 방식과 방어 전략
Hafnium 공격—작동 방식과 방어 전략
DCSync 공격 해설: Active Directory 보안에 대한 위협
ChatGPT 프롬프트 인젝션: 위험 이해, 사례 및 예방
NTDS.dit 추출 공격 이해하기
Kerberoasting 공격 – 작동 원리와 방어 전략
패스-더-티켓(Pass-the-Ticket) 공격 설명: 위험, 예시 및 방어 전략
비밀번호 스프레이 공격 이해하기
평문 비밀번호 추출(Plaintext Password Extraction) 이해하기: 위험, 예시 및 예방
Zerologon 취약점 설명: 위험, 악용 방법 및 대응 방안
랜섬웨어 공격에 대한 완전한 가이드
Skeleton Key 공격: 작동 원리와 탐지 방법
Lateral Movement: 그것이 무엇인지, 작동 방식, 그리고 예방 방법
중간자(MITM) 공격: 무엇인지, 그리고 어떻게 예방할 수 있는가
Silver Ticket 공격
4가지 서비스 계정 공격과 이를 방어하는 방법
공격자에게 PowerShell이 특히 인기 있는 이유는 무엇일까요?
업무에 악성코드 공격이 영향을 미치지 않도록 예방하는 방법
PowerUpSQL로 SQL Server 침해하기
마우스재킹 공격이란 무엇이며, 이에 대응하는 방법
Security Support Provider(SSP)를 사용한 자격 증명 탈취
레인보우 테이블 공격: 작동 방식과 방어 방법
비밀번호 공격에 대한 종합적 이해와 이를 막는 방법
Pass-the-Cookie 공격으로 MFA 우회하기
Golden SAML 공격을 위한 완전한 가이드