2021.09.17

강은성의 보안 아키텍트ㅣ비밀번호를 없애자!

강은성 | CIO KR
보안은 원래 보수적이다. 새로운 악성코드가 나왔다고 해서 10년 전 악성코드를 탐지, 제거하지 못하는 안티바이러스 제품이 있다면 시장에서 살아남을 수 없다. 보안정책을 개정할 때에도 기존 보안 위험을 빠뜨리지 않는지 꼼꼼히 살펴본다. 개인적으로도 나이도 좀 들어서 그런지 점점 더 보수적이 되는 것 같다.
 
ⓒGetty Images

그런데 문득 은행 거래를 하면서 비밀번호(Password)를 쓰지 않은 지 몇 년이 지났다는 걸 깨닫게 됐다. ‘공인’(공동) 인증서와 일회용 비밀번호(OTP) 단말기를 사용했기 때문이다. 심지어 은행 거래 안전성의 상징인 OTP 단말도 사용하지 않은 지 꽤 됐다. 은행 모바일 앱에서 지문 인증을 사용하면서부터다. 우리 사회 ‘보수성’의 상징인 은행이 혁명적 변화의 최첨단에 서 있는 셈이다.

사실 비밀번호는 사용자 인증(Authentication)의 오래된 수단이다. ID가 비대면 환경에서 사람을 구별(Identification)하기 위한 수단이라면, 비밀번호는 현재 로그인하는 사람이 바로 ‘나’임을 증명하는 사용자 인증의 한 수단이다. 

다들 알다시피 비밀번호 인증은 ‘지식 기반’(What you know) 인증인데, 사실은 ‘기억 기반’(What you remember) 인증이라는 말이 더 적합하다. 하지만 사람의 기억력은 한계가 있고, 요즘처럼 복잡하고 변화가 많은 환경에서 뭔가를 기억하기는 더 어려우며, 나이가 든 사람에게 기억하기는 정말 ‘고난도 기술’이다. 

사람의 기억력을 대신하는 다른 인증 방법이 있다. 스마트폰의 소유 여부를 확인하는 문자메시지나 구글 Authenticator 같은 OTP가 있고, 비밀번호 재설정에서는 등록된 계정으로 메일을 보내기도 한다. 출입 시 많이 쓰는 스마트카드 인증도 있다. 모두 해당 수단을 소유(What you have)하고 있는지 인증하는 것이다. 

스마트폰에서는 지문 인증을 비롯한 생체 인증, 즉 ‘존재 기반’(What you are) 인증이 많이 쓰인다. 생체인식 정보와 공개키 기반구조(PKI) 기술을 이용한 FIDO(Fast IDentity Online)가 국제표준(ITU-T)으로 채택되고, 스마트폰에 장착된 하드웨어 보안 기술과 함께 대중화되었다. 지금 스마트폰 앱에서 금융 거래를 할 때 사용하는 안전하고 편리한 인증 기술이다. 

하지만 여전히 법규에는 비밀번호에 관해 강력한 규제가 있다.
 
가. 비밀번호는 이용자 식별 부호(아이디), 생년월일, 주민등록번호, 전화번호를 포함하지 않은 숫자와 영문자 및 특수문자 등을 혼합하여 8자리 이상으로 설정하고 분기별 1회 이상 변경
(전자금융감독규정 제32조(내부 사용자 비밀번호 관리) 제2호)
 
1. 영문, 숫자, 특수문자 중 2종류 이상을 조합하여 최소 10자리 이상 또는 3종류 이상을 조합하여 최소 8자리 이상의 길이로 구성
2. 연속적인 숫자나 생일, 전화번호 등 추측하기 쉬운 개인정보 및 아이디와 비슷한 비밀번호는 사용하지 않는 것을 권고
3. 비밀번호에 유효기간을 설정하여 반기 별 1회 이상 변경
(개인정보의 기술적·관리적 보호조치 기준 제4조(접근통제) 제8항)

비밀번호를 주기적으로 계속 바꿔야 하게 되면 그걸 외우지 못하는 사용자들은 수첩에 기록해 놓거나 메모장 또는 엑셀에 작성하여 PC에 저장한다. 엑셀의 암호화 기능을 사용했다가 비밀번호를 잊어버려 낭패를 본 사람들은 웬만하면 그 기능을 사용하지 않는다.

평문으로 저장하지 말라고 아무리 권고해도 PC에 저장된 아이디, 비밀번호를 악용한 개인정보 탈취 범죄가 계속 발생하는 이유다. 반드시 바꿔야 할 규제다.

어떤 사용자들은 ‘크롬’ 브라우저에 방문한 사이트의 ID와 비밀번호를 저장한다. 아마 구글에 대한 신뢰가 큰 게 아닐까 싶다. 크롬은 해당 정보를 암호화하여 저장해 놓았다가 크롬이 기동할 때 복호화하여 메모리에 올려 놓는다. PC에 악성코드가 설치되면 크롬이 메모리에 평문으로 올려 놓은 URL-ID-비밀번호를 가져갈 수 있다.

이 보안 수준은 PC의 보안 수준(PC가 악성코드에 감염되지 않을 수준)과 그리 다르지 않다. 사용성은 좋지만 보안성은 별로 좋지 않은 방법이다. ID와 비밀번호를 확보한 범죄 집단은 사람을 특정하든 하지 않든 여러 사이트에 적용하여 성공한 사이트에서 자신의 목적을 달성한다. 전통적인 Credential Stuffing 공격이다. 

중요한 사이트 비밀번호는 ‘결코’ 크롬에 저장하지 말아야 하고, 최소한 크롬에 저장하는 비밀번호 크롬에서 자동 생성한 비밀번호를 사용해야 피해를 크롬에 저장한 사이트에 한정할 수 있다. 

그렇다고 비밀번호가 완전히 무용지물인 것은 아니다. 아직 ‘안전한 비밀번호’의 구성 요건조차 갖추지 못하거나 (예를 들어) 5회 이상 실패하는 데에도 아무런 제재 없이 계속 비밀번호를 입력할 수 있게 허용하는 사이트들도 적지 않다. 

다만 그런 곳에 여전히 비밀번호 규제가 필요하다면 최소한 사용성, 보안성 모두 떨어지는 특수문자 사용 대신에 영문의 소문자와 대문자 사용과 같이 사용성과 보안성이 더 나은 방법으로 규제를 바꾸는 것이 바람직하다.

또한 기억 기반 인증 방법 대신 소유 기반 인증, 존재 기반 인증 등 더 높은 보안 수준을 제공하는 서비스에 대해서는 비밀번호를 제공하지 않아도 되도록 법규를 개정할 필요가 있다. 

실제 사용하지도 않고 보안성을 떨어뜨리지만 오로지 법규 때문에 비밀번호를 유지하는 서비스가 꽤 있을 것 같다. 개인적으로는 오랫동안 사용하지 않는 은행 비밀번호가 어떻게 처리되고 있는지 궁금하다. 최소한 금융거래에서는 사용자 인증용 비밀번호는 없애도 되지 않나 싶다. 

* 강은성 대표는 국내 최대 보안기업의 연구소장과 인터넷 포털회사의 최고보안책임자(CSO)를 역임한 정보보호 및 개인정보보호 전문가다. 현재는 이화여대 사이버보안학과 산학협력중점교수로 있다. 저서로 「IT시큐리티」(한울, 2009)와 「CxO가 알아야 할 정보보안」(한빛미디어, 2015)이 있다. ciokr@idg.co.kr
 



2021.09.17

강은성의 보안 아키텍트ㅣ비밀번호를 없애자!

강은성 | CIO KR
보안은 원래 보수적이다. 새로운 악성코드가 나왔다고 해서 10년 전 악성코드를 탐지, 제거하지 못하는 안티바이러스 제품이 있다면 시장에서 살아남을 수 없다. 보안정책을 개정할 때에도 기존 보안 위험을 빠뜨리지 않는지 꼼꼼히 살펴본다. 개인적으로도 나이도 좀 들어서 그런지 점점 더 보수적이 되는 것 같다.
 
ⓒGetty Images

그런데 문득 은행 거래를 하면서 비밀번호(Password)를 쓰지 않은 지 몇 년이 지났다는 걸 깨닫게 됐다. ‘공인’(공동) 인증서와 일회용 비밀번호(OTP) 단말기를 사용했기 때문이다. 심지어 은행 거래 안전성의 상징인 OTP 단말도 사용하지 않은 지 꽤 됐다. 은행 모바일 앱에서 지문 인증을 사용하면서부터다. 우리 사회 ‘보수성’의 상징인 은행이 혁명적 변화의 최첨단에 서 있는 셈이다.

사실 비밀번호는 사용자 인증(Authentication)의 오래된 수단이다. ID가 비대면 환경에서 사람을 구별(Identification)하기 위한 수단이라면, 비밀번호는 현재 로그인하는 사람이 바로 ‘나’임을 증명하는 사용자 인증의 한 수단이다. 

다들 알다시피 비밀번호 인증은 ‘지식 기반’(What you know) 인증인데, 사실은 ‘기억 기반’(What you remember) 인증이라는 말이 더 적합하다. 하지만 사람의 기억력은 한계가 있고, 요즘처럼 복잡하고 변화가 많은 환경에서 뭔가를 기억하기는 더 어려우며, 나이가 든 사람에게 기억하기는 정말 ‘고난도 기술’이다. 

사람의 기억력을 대신하는 다른 인증 방법이 있다. 스마트폰의 소유 여부를 확인하는 문자메시지나 구글 Authenticator 같은 OTP가 있고, 비밀번호 재설정에서는 등록된 계정으로 메일을 보내기도 한다. 출입 시 많이 쓰는 스마트카드 인증도 있다. 모두 해당 수단을 소유(What you have)하고 있는지 인증하는 것이다. 

스마트폰에서는 지문 인증을 비롯한 생체 인증, 즉 ‘존재 기반’(What you are) 인증이 많이 쓰인다. 생체인식 정보와 공개키 기반구조(PKI) 기술을 이용한 FIDO(Fast IDentity Online)가 국제표준(ITU-T)으로 채택되고, 스마트폰에 장착된 하드웨어 보안 기술과 함께 대중화되었다. 지금 스마트폰 앱에서 금융 거래를 할 때 사용하는 안전하고 편리한 인증 기술이다. 

하지만 여전히 법규에는 비밀번호에 관해 강력한 규제가 있다.
 
가. 비밀번호는 이용자 식별 부호(아이디), 생년월일, 주민등록번호, 전화번호를 포함하지 않은 숫자와 영문자 및 특수문자 등을 혼합하여 8자리 이상으로 설정하고 분기별 1회 이상 변경
(전자금융감독규정 제32조(내부 사용자 비밀번호 관리) 제2호)
 
1. 영문, 숫자, 특수문자 중 2종류 이상을 조합하여 최소 10자리 이상 또는 3종류 이상을 조합하여 최소 8자리 이상의 길이로 구성
2. 연속적인 숫자나 생일, 전화번호 등 추측하기 쉬운 개인정보 및 아이디와 비슷한 비밀번호는 사용하지 않는 것을 권고
3. 비밀번호에 유효기간을 설정하여 반기 별 1회 이상 변경
(개인정보의 기술적·관리적 보호조치 기준 제4조(접근통제) 제8항)

비밀번호를 주기적으로 계속 바꿔야 하게 되면 그걸 외우지 못하는 사용자들은 수첩에 기록해 놓거나 메모장 또는 엑셀에 작성하여 PC에 저장한다. 엑셀의 암호화 기능을 사용했다가 비밀번호를 잊어버려 낭패를 본 사람들은 웬만하면 그 기능을 사용하지 않는다.

평문으로 저장하지 말라고 아무리 권고해도 PC에 저장된 아이디, 비밀번호를 악용한 개인정보 탈취 범죄가 계속 발생하는 이유다. 반드시 바꿔야 할 규제다.

어떤 사용자들은 ‘크롬’ 브라우저에 방문한 사이트의 ID와 비밀번호를 저장한다. 아마 구글에 대한 신뢰가 큰 게 아닐까 싶다. 크롬은 해당 정보를 암호화하여 저장해 놓았다가 크롬이 기동할 때 복호화하여 메모리에 올려 놓는다. PC에 악성코드가 설치되면 크롬이 메모리에 평문으로 올려 놓은 URL-ID-비밀번호를 가져갈 수 있다.

이 보안 수준은 PC의 보안 수준(PC가 악성코드에 감염되지 않을 수준)과 그리 다르지 않다. 사용성은 좋지만 보안성은 별로 좋지 않은 방법이다. ID와 비밀번호를 확보한 범죄 집단은 사람을 특정하든 하지 않든 여러 사이트에 적용하여 성공한 사이트에서 자신의 목적을 달성한다. 전통적인 Credential Stuffing 공격이다. 

중요한 사이트 비밀번호는 ‘결코’ 크롬에 저장하지 말아야 하고, 최소한 크롬에 저장하는 비밀번호 크롬에서 자동 생성한 비밀번호를 사용해야 피해를 크롬에 저장한 사이트에 한정할 수 있다. 

그렇다고 비밀번호가 완전히 무용지물인 것은 아니다. 아직 ‘안전한 비밀번호’의 구성 요건조차 갖추지 못하거나 (예를 들어) 5회 이상 실패하는 데에도 아무런 제재 없이 계속 비밀번호를 입력할 수 있게 허용하는 사이트들도 적지 않다. 

다만 그런 곳에 여전히 비밀번호 규제가 필요하다면 최소한 사용성, 보안성 모두 떨어지는 특수문자 사용 대신에 영문의 소문자와 대문자 사용과 같이 사용성과 보안성이 더 나은 방법으로 규제를 바꾸는 것이 바람직하다.

또한 기억 기반 인증 방법 대신 소유 기반 인증, 존재 기반 인증 등 더 높은 보안 수준을 제공하는 서비스에 대해서는 비밀번호를 제공하지 않아도 되도록 법규를 개정할 필요가 있다. 

실제 사용하지도 않고 보안성을 떨어뜨리지만 오로지 법규 때문에 비밀번호를 유지하는 서비스가 꽤 있을 것 같다. 개인적으로는 오랫동안 사용하지 않는 은행 비밀번호가 어떻게 처리되고 있는지 궁금하다. 최소한 금융거래에서는 사용자 인증용 비밀번호는 없애도 되지 않나 싶다. 

* 강은성 대표는 국내 최대 보안기업의 연구소장과 인터넷 포털회사의 최고보안책임자(CSO)를 역임한 정보보호 및 개인정보보호 전문가다. 현재는 이화여대 사이버보안학과 산학협력중점교수로 있다. 저서로 「IT시큐리티」(한울, 2009)와 「CxO가 알아야 할 정보보안」(한빛미디어, 2015)이 있다. ciokr@idg.co.kr
 

X