In 앱실링 블로그

라이프스타일 앱의 크리덴셜 스터핑(Credential Stuffing)

2022년 12월 대규모 크리덴셜 스터핑(Credential Stuffing) 공격으로 약 35,000개의 계정의 개인정보가 노출된 PayPal 사건을 기억하시나요? 스타벅스도 2023년 크리덴셜 스터핑 공격으로 일부 고객의 개인정보가 유출되었으며, 로그인에 성공한 일부 계정을 통해서는 충전금 결제를 도용하기까지 했습니다. 같은 해에 유전자 검사 회사인 23andMe도 크리덴셜 스터핑 공격을 받았습니다. 이 공격으로 약 1,400만 개의 사용자 계정이 접근당했고, 이 중 690만 명의 사용자와 그 가족들의 개인 및 건강 정보(PHI/Protected health information)가 도난당했죠.

이처럼, 최근 몇 년간 발생한 크고 작은 보안 사건들 중 많은 비중을 차지하는 공격이 바로 크리덴셜 스터핑 공격입니다. OWASP TOP 10 리스트에서도 크리덴셜 스터핑은 중요한 위협 요소로 다뤄지고 있죠. 이 공격은 공격자가 도난당한 사용자명과 비밀번호를 사용하여 자동화된 도구로 다양한 웹사이트와 애플리케이션에 대량의 로그인 시도를 하는 사이버 공격 유형으로, 많은 라이프스타일 앱이 표적이 되고 있습니다. 

ID 및 액세스 관리 솔루션 전문기업 옥타(Okta)가 2023년 발표한 보고서에 따르면,  모든 로그인 시도의 24.3%가 크리덴셜 스터핑으로 높은 수치를 기록했으며, 모든 산업 중 금융 서비스의 크리덴셜 스터핑시도 비율이 28.8%로, 가장 높았습니다. 또한, 최근 옥타(Okta)는 최근 자사의 신원 및 액세스 관리 솔루션을 표적으로 삼은 크리덴셜 스터핑공격이 ‘전례 없이’ 급증하고 있다고 경고했습니다.

라이프스타일 앱은 사용자의 금융, 건강, 사회적 상호작용과 같은 일상의 중요한 측면들을 다루기 때문에, 이러한 앱들이 보안 위협에 노출될 경우 사용자에게 심각한 영향을 미칠 수 있습니다. 그렇기 때문에 기업과 개인 모두 이러한 공격의 위험을 줄이기 위해 적극적인 보안 조치를 실행해야 합니다.

함께 읽으면 좋은 포스팅
  • OWASP Top 10 Mobile 2024: 앱 개발자를 위협하는 10가지 보안 위험과 대응 방법 (클릭!)

 

크리덴셜 스터핑이란?

크리덴셜 스터핑의 정의

앞서 말했듯이 크리덴셜 스터핑 공격은 사이버 보안 분야에서 매우 흔한 위협 중 하나로, 공격자가 대량의 유출된 사용자 이름과 비밀번호를 이용해 다수의 웹사이트에 자동화된 로그인 시도를 하는 방식입니다. 비밀번호 재사용이 빈번한 현대 사이버 환경에서 이 공격은 특히 위험하며, 사용자의 개인 정보와 금융 정보가 쉽게 위험에 노출될 수 있습니다.

크리덴셜 스터핑 공격 메커니즘

크리덴셜 스터핑 공격 메커니즘

☑️ 데이터 수집: 공격자들은 이전에 유출된 데이터에서 사용자 이름과 비밀번호 리스트를 수집합니다. 이러한 목록은 종종 다크 웹에서 거래되거나 판매됩니다.

☑️ 자동화 도구 사용: 공격자는 자동화된 스크립트나 소프트웨어(예: 봇넷)를 사용하여 수집한 크리덴셜을 이용해 여러 웹사이트에 대한 로그인 시도를 합니다. 이 과정에서는 주로 대량의 로그인 시도가 빠르게 이루어집니다.

☑️ 성공적 로그인 확인: 로그인 시도 중 일부는 성공할 수 있습니다. 많은 사용자들이 여러 사이트에 동일한 비밀번호를 사용하기 때문에, 한 사이트에서 유출된 크리덴셜이 다른 사이트에서도 유효할 가능성이 있습니다.

☑️ 무단 액세스 활용: 유효한 로그인 정보를 확보한 공격자는 해당 계정을 통해 개인정보를 도용하거나, 금융 정보를 탈취할 수 있습니다.

 

크리덴셜 스터핑이 증가하는 7가지 이유

크리덴셜 스터핑 방지를 위한 보안 전략

사용자와 기업은 강력한 비밀번호 정책을 수립하고, 다중 요소 인증 시스템(MFA)을 활용하여 보안을 강화해야 합니다. 아래 기술된 전략으로 크리덴셜 스터핑을 통한 무단 접근 시도를 효과적으로 차단함으로써 사용자와 기업을 안전하게 보호할 수 있습니다

  • 다중 요소 인증(MFA)을 통한 보안 강화
    • 단순한 비밀번호 외에 추가적인 검증을 요구함으로써 보안 계층을 추가합니다. 예를 들어, 사용자가 비밀번호를 입력한 후, 전화로 발송된 코드를 입력해야 할 수도 있습니다. 또한, 새로운 기기나 이상한 위치에서의 로그인 시도와 같이 의심스러운 상황에서 선택적으로 MFA를 적용할 수 있습니다.
  • 다층 방어 전략
    • MFA를 실행하기 어려운 경우에는 여러 가지 다른 보안 조치를 사용하여 크리덴셜 스터핑을 방어할 수 있습니다. 예시로, 온라인 소매업체는 고객 계정보다는 직원 계정에 대해 더 엄격한 로그인 프로토콜을 적용할 수 있습니다.
  • 심층 방어 및 모니터링 지표 구현
    • 심층 방어 전략은 여러 보안 계층을 결합하여 사용하는 것을 의미합니다. 이는 한 계층의 방어가 실패하더라도 다른 계층들이 여전히 기능을 수행할 수 있도록 보장합니다. 예를 들어,회사는 JavaScript challenge 같은 클라이언트 측 방어와 속도 제한과 같은 서버 측 방어를 함께 사용할 수 있습니다. 또한, 각 방어 계층에 대한 모니터링 지표는 잠재적 공격이나 오류를 탐지하는 데 필수적입니다.
  • 보조 인증 요소
    • 기억에 남는 단어의 특정 문자나 보안 질문에 대한 답변 등 사용자에게 추가 보안 정보를 요청하여 보조 인증 요소를 추가할 수 있습니다. 
  • 자동화된 공격 방지를 위한 CAPTCHA 활용
    • CAPTCHA는 자동 로그인 시도를 지연시키거나 막는 데 유용하며, 크리덴셜 스터핑 공격을 방지하는 데에도 흔히 사용됩니다. 이는 MFA(다단계 인증)처럼 선택적으로 적용될 수 있습니다. 예를 들어, 온라인 포럼에서는 로그인 실패가 반복될 때나 새 기기에서 로그인을 시도할 때 CAPTCHA를 요구할 수 있습니다.
  • IP 주소 완화 및 정보 활용
    • 지리적 위치나 사용자 행동과 같은 다양한 요인을 고려하여 IP 주소를 차단하거나 검증하는 세밀한 접근법은 공격을 줄이는 데 도움이 될 수 있습니다. 예를 들어, 소셜 미디어 플랫폼은 짧은 시간 내에 여러 번 로그인에 실패한 IP 주소를 일시적으로 차단할 수 있습니다.
  • 강화된 인증을 위한 장치 지문 수집
    • 운영 체제, 브라우저 유형 및 기타 장치 특성과 같은 데이터를 수집하여, 웹사이트는 각 사용자의 장치에 대해 고유한 지문을 생성할 수 있습니다.  이 지문은 사용자가 평소 사용하지 않는 장치로 로그인 시도할 때 이를 감지하는 데 활용됩니다. 예를 들어, 전자상거래 사이트는 낯선 장치 지문을 가진 로그인 시도에 대해 계정을 플래그 하여 추가적인 검증을 요구할 수 있습니다.
  • 다단계 로그인 프로세스 구현
    • 로그인 프로세스에 여러 단계를 추가하면 자동화된 공격을 방지하는 데 효과적입니다. 이 과정에는 사용자 이름과 비밀번호를 별도의 단계에서 입력받거나, CSRF 토큰과 같은 추가적인 인증 요소를 요구하는 것이 포함될 수 있습니다.

용어 설명

  • JavaScript Challenge 란 웹사이트에 접속하는 클라이언트 중 실제 사람에 의한 올바른 접근과 봇(bot), 자동화된 에이전트, 혹은 해킹 도구를 통한 악의적인 접근을 구분하기 위해 JavaScript를 사용하는 방법입니다.
알아 두면 좋은 정보!
  • AppSealing API 를 활용하여 다단계 로그인 프로세스를 구현하는 방법은 이 페이지에서 확인해 보세요! (클릭)

 

급증하는 크리덴셜 스터핑 완벽하게 대응하는 4가지 방법

앱실링은 크리덴셜 스터핑과 같은 보안 위협으로부터 앱을 보호하기 위해 다양한 기능을 제공합니다. 이를 통해 사용자의 개인정보를 보호하고 앱의 안전성을 유지할 수 있습니다.

1. DEX 암호화

DEX 암호화는 앱의 Dalvik Executable (DEX) 파일을 암호화하여 앱의 코드를 안전하게 보호합니다.  Dalvik은 안드로이드 운영 체제의 가상 머신이며, DEX 파일은 안드로이드 애플리케이션의 실행 파일로 사용됩니다. 이 파일을 암호화함으로써 해커들이 앱의 코드를 쉽게 해석하고 조작하는 것을 방지할 수 있습니다. 크리덴셜 스터핑 공격의 경우, 해커는 앱의 코드를 분석하여 사용자의 인증 정보를 탈취할 수 있습니다. DEX 암호화는 이러한 시도를 방해하고, 앱의 코드를 안전하게 보호하여 개인 정보와 사용자 데이터를 안전하게 유지합니다.

알아 두면 좋은 앱실링 정보!
  • 앱실링 콘솔의 Dex암호화와 Dex 부분 암호화는 무엇이 다른가요? (클릭)

2.  Anti-Tampering (방지)

앱실링의 기능인 Anti-Tampering은 앱의 코드나 자원이 해킹되거나 조작되지 않도록 방지하는 기술입니다. 해커들은 크리덴셜 스터핑과 같은 공격에서 앱의 코드를 수정하거나 변경하여 보안을 침해할 수 있습니다. Anti-Tampering은 이러한 시도를 감지하고 방지하여 앱의 무결성을 유지합니다. 이를 통해 사용자는 안전한 환경에서 앱을 사용할 수 있으며, 개인 정보와 민감한 데이터가 보호됩니다.

3. Rooting Detection (탐지)

앱실링은 루팅 된 기기에서의 실행을 탐지하여 앱의 보안을 유지합니다. 크리덴셜 스터핑은 루팅 된 기기를 사용하여 인증 정보를 도난할 수 있으므로, 루팅 탐지는 이를 방지하는 중요한 요소입니다.

4. 실시간 위협 탐지(RASP)와 대응

앱실링의 런타임 애플리케이션 자가 보호(RASP) 기능은 실시간으로 앱에서 발생하는 보안 위협을 모니터링하여 비정상적인 액세스나 의심스러운 활동을 즉시 감지합니다. 이러한 실시간 감지 시스템은 위협을 초기 단계에서 차단하여 크리덴셜 스터핑과 같은 공격을 탐지하고 즉각 대응합니다. 이를 통해 앱이 보안적으로 취약한 상태가 되지 않도록 유지할 수 있습니다.

함께 읽으면 좋은 포스팅
  • 런타임 애플리케이션 자가 보호(RASP) 란 무엇입니까? (클릭)
  • 반드시 알고 있어야할 앱실링 Anti- Tampering 기능이란? (클릭)

 

라이프스타일 앱 보안 강화 필요성

앱실링은 라이프스타일 앱이 직면한 다양한 사이버 위협으로부터 사용자 데이터를 보호하고, 앱의 신뢰성을 유지하는 데 필수적인 솔루션입니다. 사용자의 신뢰를 얻고 유지하는 것은 라이프스타일 앱의 성공에 결정적인 요소이며, 이를 위해 앱실링과 강력한 앱 보안 기술의 선택은 매우 중요합니다. 

크리덴셜 스터핑 공격은 대부분 자동화 도구를 사용하므로, 앱실링의 보안 기능들은 매우 효과적인 방어 수단이 될 수 있습니다.  앱 보안 솔루션 ‘앱실링’은 크리덴셜 스터핑 공격을 실시간으로 대응할 수 있는  정적/동적 코드 암호화, 데이터 암호화, RASP, 앱 위변조, 모드 공격 등으로부터 앱을 보호하는 기능은 물론, 해킹 행위에 대한 모니터링까지 사이버 보안의 모든 기능을 합리적인 가격으로 제공하고 있습니다. 

보안에 대한 투자는 브랜드 가치를 높이고, 사용자의 신뢰를 강화하는 효과적인 방법입니다. 그러므로 이제는 보안을 단순히 기능의 하나로 보지 말고, 사용자에게 안전하고 신뢰할 수 있는 서비스를 제공하기 위한 기본적인 전제로 삼아야 할 때입니다.

앱실링은 전 세계 800개 이상의 모바일 앱을 보호하고 있으며, 사이버 보안의 우수성을 글로벌하게 인증받았습니다. 크리덴셜 스터핑 공격을(Credential Stuffing) 효과적으로 방어할 수 있는 강력한 앱 보안 솔루션의 모든 기능을 무료로 사용해 보시고 앱 보안 효과를 직접 체험해 보세요!

앱실링-문의하기-appsealing-contact-us
앱위변조-모바일게임-해킹-대응모바일 앱, 무료 와이파이와 연결할 때 주의해야 할 보안 취약점