컴퓨터 시스템에서 인증(줄여서 'auth')은 사용자가 본인임을 확인하는 프로세스입니다. 대부분의 인증 시스템은 사용자만 가지고 있는 항목(스와이프 카드), 특성(지문 스캔) 또는 정보(PIN 코드)와 같은 인증 요소에 의존합니다.
일반적인 인증 시나리오로, 이메일 계정에 로그인하기 위한 사용자 ID와 비밀번호를 제공하는 경우를 생각해 보세요. 사용자가 사용자 ID(이 경우 이메일 주소일 수 있음)를 입력하면 이메일 시스템에 "내가 바로 이 사람입니다."라고 말하는 것입니다.
하지만 이것만으로는 최종 사용자의 신원을 확인하기에 충분하지 않습니다. 누구나 원하는 사용자 ID를 입력할 수 있으며, 특히 사용자 ID가 이메일 주소와 같이 공개적인 경우 더욱 그렇습니다. 자신이 실제로 해당 이메일 주소를 소유한 사람임을 증명하기 위해 사용자는 (이론적으로) 다른 사람이 가져서는 안 되는 비밀 정보인 비밀번호를 입력합니다. 그런 다음, 이메일 시스템은 이 사용자가 실제 계정 소유자임을 식별하고 허용합니다.
인증 프로세스는 또한 서버, 웹 애플리케이션 및 기타 컴퓨터 및 워크로드와 같은 비인간 사용자의 ID를 확인할 수 있습니다.
인증은 정보 보안 전략의 기본 구성 요소입니다. 사용자가 디지털 리소스에 액세스하는 방법을 다루는 사이버 보안 분야인 ID 및 액세스 관리(IAM)에 특히 중요합니다. 인증을 통해 조직은 합법적인 사용자에 대한 네트워크 액세스를 제한할 수 있으며 이는 개별 사용자 권한을 적용하는 첫 번째 단계입니다.
오늘날 사용자 ID는 위협 행위자의 주요 표적입니다. IBM X-Force Threat Intelligence Index에 따르면 유효한 사용자 계정을 탈취하는 것은 공격자가 네트워크에 침입하는 가장 일반적인 방법으로, 사이버 공격의 30%를 차지합니다. 해커는 자격 증명을 훔친 다음, 합법적인 사용자로 가장하여 네트워크 방어를 우회하여 멀웨어를 심고 데이터를 훔칩니다.
이러한 ID 기반 공격에 맞서기 위해 많은 조직이 순수한 암호 기반 인증 방법에서 벗어나고 있습니다. 대신, 사용자 자격 증명을 도용하거나 위조하기 어려운 다단계 인증, 적응형 인증 및 기타 강력한 인증 시스템을 도입하고 있습니다.
인증과 권한 부여는 서로 연관되어 있지만 별개의 프로세스입니다. 인증은 사용자의 ID를 확인하고, 권한 부여는 확인된 사용자에게 리소스에 대한 적절한 수준의 액세스 권한을 부여합니다.
인증과 권한 부여는 두 가지 보완적인 질문에 답하는 것으로 생각할 수 있습니다.
인증은 일반적으로 권한 부여를 위한 전제 조건입니다. 예를 들어, 네트워크 관리자가 보안 시스템에 로그인할 때 올바른 인증 요소를 제공하여 관리자임을 증명해야 합니다. 그런 다음에만 IAM 시스템이 사용자에게 다른 사용자 추가 및 제거와 같은 관리 작업을 수행할 수 있는 권한을 부여합니다.
개략적으로 인증은 인증 요소라고도 하는 사용자 자격 증명의 교환을 기반으로 합니다. 사용자는 인증 시스템에 자격 증명을 제공합니다. 시스템에 저장된 파일과 일치하는 경우 시스템은 사용자를 인증합니다.
좀 더 자세히 살펴보면 인증 프로세스를 일련의 단계로 나눌 수 있습니다.
이 예제에서는 인간 사용자를 가정하지만 인증은 일반적으로 인간이 아닌 사용자에 대해 동일합니다. 예를 들어, 개발자가 앱을 애플리케이션 프로그래밍 인터페이스(API)에 처음 연결할 때 API는 API 키를 생성할 수 있습니다. 키는 API와 앱만 알고 있는 비밀 값입니다. 그때부터 앱이 해당 API를 호출할 때마다 호출이 진짜임을 증명하기 위해 키를 표시해야 합니다.
사용자는 자신의 신원을 증명하는 데 사용할 수 있는 네 가지 유형의 인증 요소가 있습니다.
지식 요소는 이론적으로 사용자만 알 수 있는 정보(예: 암호, PIN, 보안 질문에 대한 답변)입니다. 지식 요소는 흔하지만 훔치거나 해킹하기 가장 쉬운 요소이기도 합니다.
소유 요소는 사용자가 소유한 것입니다. 일부 사용자는 소유 요소로만 작동하도록 설계된 전용 하드웨어 보안 토큰을 가지고 있지만 많은 사람들이 모바일 디바이스를 사용합니다.
예를 들어 사용자는 한 번 사용 후 만료되는 일회용 암호(OTP)를 생성하는 인증 앱을 설치할 수 있습니다. 사용자는 SMS 문자 메시지를 통해 OTP를 받을 수도 있습니다.
머신과 워크로드들은 종종 신뢰할 수 있는 제3자들에게 발급된 디지털 인증서들을 소유 인증 요소로 사용합니다.
내재 요소는 사용자에게 고유한 신체적 특성입니다. 이 범주에는 얼굴 인식 및 지문 스캔과 같은 생체 인식 인증 방법이 포함됩니다.
행동 요소는 사용자의 일반적인 IP 주소 범위, 활동 시간, 평균 타이핑 속도와 같은 행동 패턴입니다.
적응형 인증 체계는 종종 행동 요소를 사용하여 사용자의 위험 수준을 평가합니다. (자세한 내용은 "인증 유형"을 참조하세요.)
기존에는 각 개별 앱, 웹 사이트 또는 기타 리소스에 사용자 인증을 처리하기 위한 자체 IAM 시스템이 있었습니다. 디지털 트랜스포메이션이 부상하고 기업 및 소비자 앱이 확산됨에 따라 이러한 단편화된 시스템은 번거롭고 불편해졌습니다.
조직은 사용자를 추적하고 네트워크 전체에서 일관된 액세스 정책을 적용하는 데 어려움을 겪고 있습니다. 사용자는 간단한 암호를 사용하거나 시스템 간에 자격 증명을 재사용하는 것과 같은 잘못된 보안 습관을 가지고 있습니다.
이에 대응하여 많은 조직에서는 단일 시스템이 다양한 앱 및 자산에 대해 사용자를 인증할 수 있는 ID에 대한 보다 통합된 접근 방식을 구현하고 있습니다.
인증 시스템마다 다른 인증 체계를 사용합니다. 가장 일반적인 유형에는 다음이 포함됩니다.
단일 요소 인증(SFA) 프로세스에서 사용자는 ID를 증명하기 위해 하나의 인증 요소만 제공하면 됩니다. 가장 일반적으로 SFA 시스템은 사용자 이름과 암호 조합을 사용합니다.
SFA는 해커가 사용자 계정을 장악하기 위해 하나의 자격 증명만 훔치면 되기 때문에 가장 안전하지 않은 인증 유형으로 간주됩니다. 미국 사이버 보안 및 인프라 기관(CISA)은 SFA를 "나쁜 관행"으로 규정하여 권장하지 않습니다.
다단계 인증(MFA) 방법에는 최소 두 가지 유형의 두 가지 이상의 인증 요소가 필요합니다. MFA는 해커가 사용자 계정을 장악하기 위해 여러 자격 증명을 훔쳐야 하기 때문에 SFA보다 강력한 것으로 간주됩니다. 또한 MFA 시스템은 암호보다 훔치기 훨씬 어려운 자격 증명을 사용하는 경향이 있습니다.
2단계 인증(2FA)은 정확히 두 개의 인증 요소를 사용하는 MFA 유형입니다. 아마도 오늘날 사용되는 가장 일반적인 형태의 MFA일 것입니다. 예를 들어, 웹 사이트에서 사용자에게 비밀번호와 휴대폰으로 문자로 전송된 코드를 모두 입력하도록 요구하는 경우 이는 2FA 체계가 작동하는 것입니다.
암호 없는 인증은 암호 또는 기타 지식 요소를 사용하지 않는 인증 시스템입니다. 예를 들어, Fast Identity Online 2(FIDO2) 인증 표준은 비밀번호를 공개 키 암호화에 기반한 패스키로 대체합니다.
FIDO2에서는 사용자가 자신의 디바이스를 앱, 웹사이트 또는 기타 서비스에서 인증자 역할을 하도록 등록합니다. 등록하는 동안 공개-비공개 키 쌍이 생성됩니다. 공개 키는 서비스와 공유되고 비공개 키는 사용자의 디바이스에 보관됩니다.
사용자가 서비스에 로그인하려고 하면 서비스는 디바이스에 인증 확인을 보냅니다. 사용자는 PIN 코드를 입력하거나, 지문을 스캔하거나, 다른 작업을 수행하여 응답합니다. 이 작업을 통해 디바이스는 비공개 키를 사용하여 인증 확인에 서명하고 사용자의 ID를 증명할 수 있습니다.
조직은 자격 증명 도용을 방지하기 위해 암호 없는 인증을 점점 더 많이 채택하고 있으며, 자격 증명 도용자는 비교적 쉽게 훔칠 수 있기 때문에 지식 요소에 집중하는 경향이 있습니다.
사이버 보안 통제가 더욱 효과적이게 됨에 따라 위협 행위자들은 사이버 보안 통제에 정면으로 대응하는 대신 이를 우회하는 방법을 배우고 있습니다. 강력한 인증 프로세스는 해커가 사용자 계정을 도용하고 유효한 권한을 남용하여 네트워크 방어를 뚫고 혼란을 야기하는 ID 기반 사이버 공격을 차단하는 데 도움이 될 수 있습니다.
X-Force Threat Intelligence Index에 따르면 ID 기반 공격은 가장 일반적인 초기 공격 벡터이며 위협 행위자는 자격 증명을 훔치기 위한 다양한 전술을 사용합니다. 사용자 비밀번호, 심지어 강력한 비밀번호도 해커가 봇과 스크립트를 사용하여 가능한 비밀번호를 체계적으로 테스트하는 무차별 암호 대입 공격을 통해 쉽게 해독할 수 있습니다.
위협 행위자는 소셜 엔지니어링 전략을 사용하여 대상자를 속여 비밀번호를 제공하도록 할 수 있습니다. 그들은 중간자 공격이나 피해자의 디바이스에 스파이웨어를 심는 등 더 직접적인 방법을 시도할 수도 있습니다. 공격자는 다크 웹에서 자격 증명을 구매할 수도 있으며, 다른 해커는 이전 침해 과정에서 훔친 계정 데이터를 판매할 수 있습니다.
그러나 많은 조직이 여전히 비효율적인 인증 시스템을 사용하고 있습니다. X-Force Threat Intelligence Index에 따르면 식별 및 인증 실패는 두 번째로 일반적으로 관찰되는 웹 애플리케이션 보안 위험입니다.
강력한 인증 프로세스는 해커가 자격 증명을 훔치고 합법적인 사용자로 가장하는 것을 어렵게 만들어 사용자 계정과 사용자가 액세스할 수 있는 시스템을 보호하는 데 도움이 될 수 있습니다.
예를 들어, 다단계 인증(MFA)을 사용하면 해커가 물리적 디바이스 또는 생체 인식 데이터를 비롯한 여러 인증 요소를 훔쳐 사용자로 가장해야 합니다. 마찬가지로 적응형 인증 체계는 사용자가 위험한 행동을 하는 경우를 감지하고 작업을 진행하기 전에 추가 인증 문제를 제기할 수 있습니다. 이것은 도용된 계정을 악용하려는 공격자의 시도를 차단하는 데 도움이 될 수 있습니다.
인증은 사이버 보안을 강화를 통해 추가적인 이점을 창출하는 데도 도움이 될 수 있습니다. 예를 들어, IBM 기업가치연구소(IBV) 연구에 따르면 운영 임원의 66%가 사이버 보안을 수익 창출 요인으로 보고 있습니다.
또한 인증 시스템은 개별 사용자 계정을 보호하는 것 이상의 특정 사용 사례에 도움이 될 수 있습니다.