비밀번호 설정 제약이 있는 서비스

From CS Wiki

아래 서비스들은 비밀번호 사용에 제약이 있다. 비밀번호는 충분히 길게, 원하는대로 설정할 수 있도록 해야 하나 불필요한 제약(길이 제한, 특수문자 제한 등)이 있는 서비스들이 많아지면 이용자들은 자신들만의 비밀번호 규칙을 설정할 수 없고 예외적으로 사용해야 하는 사이트들이 많아지다 보니 불가피하게 비밀번호를 통일하거나 비밀번호를 어딘가 적어놓고 사용하는 경우가 많아진다.

각각의 사업자들이 이런 보안 문화적인 큰 틀에서 신경을 써 주면 쉽게 해결할 수 있으나 일부 보수적이고 어찌보면 이기적인 서비스 개발 때문에 우리나라의 전반적인 개인 사용자 보안이 취약해지므로, 개선이 필요한 사이트를 나열한다.

바람직한 방안[edit | edit source]

최근의 추세는 특수문자, 영대소문자 등을 무조건 섞을 것을 요구하는 것보단 길이를 충분히 길게 설정할 수 있도록 하는 것이다.

  1. 길이 제약은 없을 수록 좋다.
    • 최소 32자는 되어야 하며, 64자 이상 사용할 수 있도록 해주는 것이 좋다. 후술하였지만 길이 제약을 길게 하는 것은 시스템에 전혀 부담이 되지 않기 때문에 그냥 예전에 만들어 뒀던 걸 "고치기 귀찮다"라는 핑계로 버티고 있을 뿐이다.
  2. 특수문자 포함 여부는 필수가 아니라 선택이어야 하며, 많은 특수문자 사용이 가능할수록 좋다.
    • "특수문자를 꼭 한자 이상 포함해야 합니다!"라고 하면서 특수문자는 아주 일상적으로 사용되는 !@#$ 정도밖에 못쓰게 한다면 그건 보안에 큰 도움이 되지 않고 오히려 득보다 실이 크다. 특수문자는 사용여부도 자유롭게 선택할 수 있도록 하되, 사용한다면 최소한 키보드에 있는 모든 특수문자는 모두 허용하도록 해야 한다.

요약[edit | edit source]

서비스명 주소 비밀번호 길이 제약 특수문자 사용 제약 조합 강요 심각도
네이버 https://naver.com O (16자) X
예술의 전당 https://www.sac.or.kr/ O (16자) O (일부만 사용 가능)
CJ ONE(CVG 등) https://www.cjone.com/ O (12자) 심각

비밀번호 길이 제약[edit | edit source]

사실 기술적으로 보면 비밀번호 길이 제약은 상당히 여유있게 할 수 있다. 어차피 비밀번호를 우리가 짧게 입력하든 길게 입력하든 관계 없이 거의 고정길이로 일방향 암호화되어 저장된다. 예를 들어 SHA-512를 쓴다고 하면 우리가 8자리 비밀번호를 입력해도 512자로 저장되고, 우리가 30자리 비밀번호를 입력해도 512자로 저장된다. (이렇게 저장해도 비밀번호 확인이 가능한 이유는 일방향 암호화문서 참고)

따라서, 비밀번호는 한껏 길게 입력을 받아도 어차피 저장되는 데이터가 많아지는 것도 아니기 때문에 굳이 제한을 할 필요가 없는 것이다. 그럼에도 제한을 하는 이유는 그냥 '혹시 어디선가 문제가 될까' 싶어서이다. 비밀번호처럼 일방향 암호화되어 저장되는 값 보단 입력한 만큼 저장되는 값들이 훨씬 많다. 이런 값들은 정해진 길이 이상 입력되면 에러가 나버린다. 이런 에러는 버퍼 오버플로우 등의 공격 방법으로도 사용되기 때문에 대부분의 서비스에서 입력값을 길이를 철저히 제한하는 것이다. 그래서 개발자들은 내부 정책이나 본인이 지식이나 사회적 관례에 따라서 "이 입력값은 대략 이 길이 정도면 되겠다" 싶은 길이를 설정하여 제한을 하는 것이다. 비밀번호를 고정길이로 저장되으로 이런 제약에서 꽤나 자유로움에도 불구하고 그냥 "보통은 비밀번호 이정도 길이 이하로 쓰겠지?"라는 생각으로 짧게 제한해버리는 경우가 많다. 이런 부분들은 문제의식만 하면 충분히 개선이 가능하다. 그렇다고 입력을 무한대로 받을 수 없기 때문에 여기선 비밀번호 길이 제한이 20자 이내인 경우에 대해서 나열하기로 한다.

섬네일

300x300픽셀

섬네일

특수문자 제약[edit | edit source]

  • 예술의 전당(https://www.sac.or.kr/): 일부 소수의 특수문자만 입력 가능
    • 정말 일부 정해진 소수의 특수문자만 입력이 가능해서 많은 사람들이 원래 쓰던 비밀번호를 못쓰고 더 쉽게 바꾸어야 함

300x300픽셀