한 서비스에서 유출된 아이디·비밀번호 조합은 크리덴셜 스터핑이라는 자동 공격으로 다른 서비스 로그인에 그대로 대입된다. 같은 비밀번호를 여러 곳에 돌려 쓰면 한 곳의 유출이 모든 계정의 위험으로 번진다. 비밀번호 관리자의 점검 기능과 패스키로 계정을 정리하되, 이메일·금융처럼 다른 계정 복구에 쓰이는 계정부터 바꾸면 된다.
10월 19일 금융감독원 국정감사에서 5대 은행장이 줄줄이 고개를 숙였다. KB국민은행에서 개인정보 81명, 신한은행에서 2만5727명이 새어 나갔고, 금감원장은 CEO의 내부통제 책임을 묻는 첫 사례가 될 수 있다고 했다.
이런 서버 침해는 고객이 손쓸 방법이 없다. 하지만 유출된 정보가 돌아다닐 때 내 계정이 추가로 털리느냐는 전적으로 한 가지에 달려 있다. 같은 비밀번호를 여러 곳에 돌려 썼는가다.
Photo by Onur Binay on Unsplash
크리덴셜 스터핑이라는 공격이 있다. 어느 쇼핑몰에서 유출된 아이디·비밀번호 조합을 확보한 뒤, 봇으로 은행·포털·간편결제 로그인 창에 그대로 자동 대입하는 방식이다.
핵심은 추측이 아니라는 점이다. 실제로 유효했던 조합을 들고 오기 때문에, 같은 비밀번호를 다른 서비스에도 쓴 사람만 골라 뚫린다. 아무리 복잡한 비밀번호도 여러 곳에 똑같이 쓰면 소용없다. 한 곳이 털리면 그 비밀번호를 공유한 모든 계정이 함께 위험해진다.
먼저 내 계정이 유출 명단에 있는지 본다. Have I Been Pwned(haveibeenpwned.com)에 이메일을 넣으면 어느 서비스 유출에 포함됐는지 무료로 확인된다. 비밀번호 확인 기능은 전체를 전송하지 않고 해시 일부만 대조하므로 입력해도 새지 않는다.
비밀번호 관리자를 쓰고 있다면 더 빠르다. 구글 비밀번호 관리자의 '비밀번호 점검'은 저장된 비밀번호를 유출 목록과 대조해 침해·재사용·취약 항목을 한 화면에 모아 보여준다. 1Password의 워치타워도 재사용 중이거나 유출된 비밀번호를 따로 집계해 준다. 이 목록이 곧 정리할 작업 리스트다.
재사용·유출로 표시된 계정을 열어 비밀번호를 바꾼다. 직접 지어내지 말고 관리자 앱의 자동 생성 기능으로 무작위 문자열을 만든다. 외울 필요가 없으니 계정마다 전부 다르게 둘 수 있고, 관리자가 저장해 다음 로그인부터 채워 준다.
외워야 하는 건 관리자 앱을 여는 마스터 비밀번호 하나로 줄어든다. 역설적이지만, 비밀번호를 기억하지 않을수록 계정은 안전해진다. 재사용이라는 연결 고리가 끊기기 때문이다.
패스키는 비밀번호를 아예 없애는 방식이다. 애플·구글·마이크로소프트가 함께 만든 표준으로, 서비스에 등록하면 기기나 관리자 앱이 그 사이트 전용 키 한 쌍을 만들고 서버에는 공개키만 저장한다. 로그인할 땐 지문·얼굴·PIN으로 기기 잠금만 풀면 된다.
서버에 비밀번호가 없으니 유출될 비밀번호 자체가 없고, 키가 도메인에 묶여 있어 가짜 사이트에서는 작동하지 않는다. 구글·애플 계정이나 주요 간편결제처럼 지원하는 곳부터 등록해 두면 크리덴셜 스터핑의 표적에서 빠진다. 다만 아직 모든 서비스가 지원하진 않아 당분간 비밀번호와 병행하게 된다.
전부 한 번에 바꿀 필요는 없다. 털렸을 때 피해가 크거나 다른 계정으로 번지는 순서대로 하면 된다.