Dodam Space
계정 지키기

비밀번호를 주기적으로 바꾸라는 말

석 달마다 비밀번호를 바꾸라는 회사 규정, 다들 겪어보셨을 겁니다. 그런데 이 규칙을 만든 쪽이 지금은 그러지 말라고 합니다. 기준 문서를 열어보니 바뀐 것이 한둘이 아니었습니다.

석 달마다 바꾸라는 그 규칙

회사 시스템에 로그인하려는데 비밀번호를 바꾸라는 창이 뜹니다. 90일이 지났다고요. 예전 것과 비슷하면 안 되고, 대문자와 숫자와 특수문자를 섞어야 하고요.

그래서 어떻게 되나요. 대개 뒤에 숫자만 하나 올립니다. 봄에 쓰던 것이 여름에는 끝자리만 바뀌어 돌아옵니다. 아니면 어딘가에 적어둡니다.

이 규칙이 어디서 왔냐면, 미국 국립표준기술연구소가 낸 디지털 신원 지침입니다. 각국 기관과 기업이 이 문서를 기준 삼아 자기 정책을 만들었고, 그래서 90일 주기가 세계적으로 퍼졌습니다.

그런데 지금 그 문서를 열어보면 이렇게 적혀 있습니다. 비밀번호를 임의로, 예컨대 주기적으로 바꾸도록 요구해서는 안 된다고요.

왜 권고가 뒤집혔나

이유는 사람이 어떻게 행동하는지를 보면 분명합니다.

주기적으로 바꾸라고 하면 사람은 기억하기 쉬운 변형을 만듭니다. 규칙성이 생기고, 그 규칙성은 공격하는 쪽에서도 예측할 수 있습니다. 하나가 새면 다음 것도 대체로 짐작이 됩니다.

그리고 자주 바꾸게 하면 비밀번호 자체가 짧고 단순해집니다. 90일마다 새로 외워야 하는데 길고 복잡한 것을 만들 이유가 없으니까요.

결국 자주 바꾸게 한 대가로 하나하나가 약해지는 셈입니다. 지침은 그래서 방향을 바꿨습니다. 자주 바꾸는 대신 하나를 제대로 만들고 오래 쓰라는 쪽으로요.

그럼 언제 바꾸나

안 바꿔도 된다는 뜻은 아닙니다. 같은 문서가 바꿔야 하는 경우를 못 박아 두었습니다.

유출 정황이 있을 때입니다. 그때는 반드시 바꿔야 합니다.

즉 기준이 달력에서 사건으로 옮겨간 것입니다. 날짜가 지났으니 바꾸는 게 아니라, 샜을 수 있으니 바꾸는 것이죠.

그래서 실무에서 중요해지는 건 유출을 아는 일이 됩니다. 서비스가 유출 사실을 알려오면 바로 바꿔야 하고, 알림을 못 받더라도 같은 비밀번호를 여러 곳에 썼다면 한 곳이 샌 순간 나머지가 다 위험해집니다.

정리하면 이렇습니다. 주기는 신경 쓰지 말고, 대신 곳마다 다르게 쓰고, 샜다는 소식이 오면 즉시 바꾼다.

그럼 유출은 어떻게 아나

기준이 달력에서 사건으로 옮겨갔다면, 사건을 아는 게 중요해집니다.

가장 먼저 오는 건 서비스의 통지입니다. 유출이 확인되면 대개 메일로 알려오고 강제로 비밀번호를 초기화하기도 합니다. 이런 메일이 오면 미루지 않는 게 좋습니다. 다만 유출 통지를 사칭한 피싱 메일도 많으니, 메일 속 링크를 누르지 말고 주소창에 직접 서비스 주소를 쳐서 들어가는 편이 안전합니다.

두 번째는 계정 서비스가 제공하는 점검 기능입니다. 브라우저와 주요 계정 서비스가 저장된 비밀번호를 알려진 유출 목록과 대조해 알려줍니다. 켜두면 알아서 경고가 뜹니다.

세 번째는 로그인 알림입니다. 낯선 기기나 지역에서 로그인이 있었다는 알림이 오면 그 자체가 신호입니다. 내가 한 게 아니라면 비밀번호부터 바꾸고 로그인 세션을 전부 종료해야 합니다.

그리고 통지가 없다고 안 샌 것은 아닙니다. 유출 사실을 늦게 알거나 아예 모르는 서비스도 있으니, 곳마다 다른 비밀번호를 쓰는 습관이 결국 마지막 방어선이 됩니다.

관리자를 쓰는 게 규칙보다 낫다

지금까지 이야기를 실행에 옮기려면 사람이 외우는 방식으로는 한계가 있습니다. 곳마다 다르게, 길게, 규칙성 없이 만들라는 요구를 머리로 감당할 수는 없으니까요.

그래서 비밀번호 관리자가 답이 됩니다. 만드는 것도 기억하는 것도 프로그램이 하니, 위 조건이 자동으로 충족됩니다.

브라우저에 딸린 것으로도 충분한 경우가 많습니다. 별도 프로그램을 깔기 부담스럽다면 여기서 시작해도 됩니다. 중요한 건 어떤 도구냐가 아니라 곳마다 다른 값을 쓰게 되느냐입니다.

대신 관리자를 쓰면 그 하나가 전부의 열쇠가 됩니다. 그러니 관리자에 들어가는 비밀번호만큼은 길고 고유하게 만들고, 2단계 인증을 반드시 걸어둬야 합니다.

그리고 관리자에 넣어둔 값들을 한 번 훑어보시길 권합니다. 같은 값을 여러 곳에 쓴 게 몇 개나 되는지 대개 관리자가 알려줍니다. 처음 보면 놀라는 사람이 많습니다.

복잡도 규칙도 같이 사라졌다

뒤집힌 게 주기만이 아닙니다. 대문자와 숫자와 특수문자를 섞으라는 규칙도 마찬가지입니다.

지침은 그 외의 복잡도 요구를 부과하지 말아야 한다고 적습니다. 서로 다른 문자 종류를 섞게 하거나 같은 글자를 연달아 못 쓰게 하는 식의 구성 규칙을 두지 말라고요.

대신 길이를 봅니다. 사용자가 정하는 비밀번호는 최소 8자 이상이어야 하고, 검증하는 쪽은 64자까지는 허용해야 한다고 적혀 있습니다. 길게 쓰겠다는 사람을 막지 말라는 뜻입니다.

이것도 사람의 행동에서 나온 결론입니다. 특수문자를 넣으라고 하면 대개 끝에 느낌표를 붙입니다. 대문자를 넣으라고 하면 첫 글자를 대문자로 씁니다. 규칙은 지켜지는데 실제로 어려워지지는 않습니다.

반면 길이는 다릅니다. 한 글자 늘어날 때마다 경우의 수가 곱으로 늘어나니, 외우기 쉬운 단어 몇 개를 이어 붙인 긴 문장이 특수문자를 욱여넣은 여덟 자보다 훨씬 낫습니다.

복잡도 규칙은 사람이 예측 가능한 자리에 문자를 끼워 넣게 만드는 반면 길이는 곱으로 늘어난다는 것을 두 막대로 나타낸 모식도
막대 길이는 개념을 나타낸 것으로 실제 계산값이 아니다.
규칙을 지킨 것과 실제로 강한 것
복잡도 규칙은 통과

Summer2024! 대문자 O · 소문자 O · 숫자 O · 특수문자 O 11자 흔한 단어 + 연도 + 느낌표 — 유출 목록에 자주 있는 형태

길이로 가는 쪽

고등어와겨울바다와낡은우산 특수문자 없음 · 숫자 없음 13자 외우기는 쉽고 조합은 훨씬 많다

왼쪽은 규칙 검사를 통과하지만 흔한 패턴이다. 다만 유출 목록 대조는 별개 문제라, 실제로 쓰기 전에 아래 절을 함께 보시기 바란다.

기준이 바뀌면 제품도 바뀐다

지침이 권고를 뒤집었으면 제품에도 반영됐을까요. 실제로 확인해볼 수 있습니다.

Microsoft의 기업용 계정 서비스 문서를 열어보면 비밀번호 만료 기간의 기본값이 이렇게 적혀 있습니다. 만료 없음. 그리고 괄호를 달아 두었는데, 2021년 이전에 만들어진 테넌트는 기본값이 90일이라고요.

이 한 줄이 많은 걸 설명합니다. 어느 시점에 기본값을 바꿨고, 이미 만들어진 조직은 옛 설정을 그대로 갖고 있다는 뜻이니까요.

지금도 90일마다 비밀번호를 바꾸는 회사가 많은 이유가 여기 있습니다. 나쁜 정책을 고수해서가 아니라 오래전에 만들어진 설정이 그대로 남아 있어서인 경우가 대부분입니다. 아무도 그 항목을 다시 들여다보지 않았을 뿐이죠.

그런데 완전히 따르지는 않는다

재미있는 건 같은 문서에서 지침과 어긋나는 부분도 보인다는 점입니다.

지침은 복잡도 규칙을 부과하지 말라고 했는데, Microsoft의 비밀번호 정책은 여전히 소문자·대문자·숫자·기호 네 가지 중 세 가지를 요구합니다. 길이는 최소 8자에 최대 256자고요.

즉 만료는 없앴는데 복잡도는 남겨둔 상태입니다. 지침을 부분적으로만 따른 셈이죠.

왜 그런지는 문서가 말해주지 않습니다. 다만 짐작해볼 여지는 있습니다. 만료를 없애는 건 설정 하나를 바꾸면 되지만, 복잡도 규칙을 없애면 이미 그 규칙을 전제로 만들어진 조직 정책과 감사 항목이 전부 흔들립니다.

그리고 지침이 요구한 것 중 지킨 것도 있습니다. 금지 목록입니다. 문서는 사용자 지정 금지 비밀번호를 설정할 수 있다고 안내하고, 잘못된 비밀번호를 열 번 넣으면 계정이 잠기는 스마트 잠금도 함께 둡니다.

그러니 기준 문서 하나만 보고 판단하면 실제와 어긋납니다. 기준이 권고하는 것과 제품이 실제로 하는 것 사이에는 늘 시차와 사정이 끼어 있습니다.

지침과 제품 기본값을 나란히 놓으면
항목 NIST 지침 Microsoft Entra ID 기본값
주기적 변경 요구하지 말 것 만료 없음 (2021년 이전 테넌트는 90일)
복잡도 규칙 부과하지 말 것 네 가지 중 세 가지 요구
최소 길이 8자 이상 8자
최대 길이 64자까지 허용할 것 256자
유출 목록 대조 비교해 거부할 것 사용자 지정 금지 목록 설정 가능
힌트 저장하게 하지 말 것 해당 기능 없음

대신 하라는 것

지침이 없애기만 한 건 아닙니다. 새로 요구하는 것도 있습니다.

유출된 목록과 대조하라는 것입니다. 새 비밀번호를 정할 때 흔히 쓰이거나 이미 유출된 값 목록과 비교해서, 걸리면 거부하고 다시 정하게 하라고요.

이게 주기적 변경보다 훨씬 실질적입니다. 90일마다 바꿔봐야 그 값이 이미 유출 목록에 있으면 소용이 없고, 반대로 목록에 없는 긴 비밀번호라면 몇 년을 써도 별문제가 없습니다.

힌트 기능도 금지했습니다. 로그인하지 않은 사람이 볼 수 있는 힌트를 저장하게 해서는 안 된다고요. 힌트란 결국 비밀번호의 일부를 공개하는 일이니까요.

그러니 서비스를 고를 때 눈여겨볼 것이 생깁니다. 아직도 90일마다 바꾸라고 하면서 특수문자를 강요하는 곳이라면, 그 조직의 보안 정책이 몇 년째 갱신되지 않았다는 신호로 읽을 수 있습니다.

  • 주기적으로 바꾸지 않는다 — 유출 정황이 있을 때 바꾼다
  • 복잡도보다 길이를 늘린다
  • 곳마다 다른 비밀번호를 쓴다 — 하나가 새면 나머지가 위험해진다
  • 힌트 기능은 쓰지 않는다
  • 유출 알림이 오면 미루지 말고 그날 바꾼다
  • 관리자에 들어가는 비밀번호에는 2단계 인증을 건다

회사 규정이 아직 옛날식이라면

개인이 정책을 바꿀 수는 없으니, 그 안에서 손해를 줄이는 쪽으로 갑니다.

가장 확실한 건 비밀번호 관리자를 쓰는 것입니다. 90일마다 바꿔야 한다면 그때마다 관리자가 만들어주는 무작위 값을 쓰고 외우지 않으면 됩니다. 외울 필요가 없으니 규칙성도 안 생기고, 길이도 마음껏 늘릴 수 있습니다.

그리고 회사 비밀번호를 다른 곳에 쓰지 않는 것. 이건 규정과 무관하게 지킬 수 있습니다.

지침이 바뀐 지 시간이 꽤 지났는데도 옛 규칙은 여전히 많이 남아 있습니다. 한 번 만들어진 규정은 잘 안 바뀌니까요. 적어도 그게 최신 권고가 아니라는 건 알고 계시는 편이 낫습니다.

정리

  • 기준 문서가 주기적 변경을 요구하지 말라고 적고 있다
  • 바꿔야 하는 경우는 유출 정황이 있을 때다
  • 복잡도 규칙도 부과하지 말라고 되어 있다 — 길이를 본다
  • 사용자가 정하는 비밀번호는 64자까지 허용해야 한다
  • 대신 유출된 목록과 대조해 거부하라고 요구한다

출처

위 내용은 2026년 8월에 확인한 지침 문서를 기준으로 한 정리입니다. 소속 조직의 보안 규정이 따로 있다면 그것이 우선하며, 이 글은 규정을 대신하지 않습니다.

틀린 내용을 찾으셨다면 문의로 알려주세요. 확인 후 고치고 갱신일을 올립니다.