"8자리 숫자 푸는데 단 37초" 충격…내 '비밀번호'도 뚫린다

by BaroPAM posted Aug 27, 2024
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

 

8자리 숫자 37초면 무력화

다른 곳에 적어두면 유출 위험

 

현재 운영체제 및 애플리케이션에서 가장 흔하게 활용하는 로그인 방법은 아이디와 비밀번호다. 이 방식은 비밀번호가 유출될 경우 곧바로 계정을 탈취당할 수 있다는 단점이 있다. 정보기술의 발달로 간단한 비밀번호는 몇 초 만에 뚫릴 수 있다. 숫자만으로 이뤄진 8자리 비밀번호는 37초면 해커의 수중에 떨어진다. 이런 이유로 숫자와 알파벳 대소문자, 특수기호를 섞어 비밀번호를 만들도록 강제하는 정보자산이 많다. 비밀번호가 길고 복잡할수록 외우기 어려워 어딘가에 기록할 수밖에 없다. 이것 역시 해킹의 빌미가 될 수 있다.

 

가장 많이 사용하는 암호는 다음과 같다.

 

Password-1234 / Br0nc0$2012 / Password123$ / Password1234 / Summ3rSun2020! / 0rlando_0000 / Password1234! / ChangeIt123 / 1234password$ / ChangeItN0w! / admin / 12345 / 123456 / 123456789 / qwerqwer / default / password / root

 

Microsoft가 기업의 보안 관리자에게 권장하는 내용(보안기준)은 주기적인 비밀번호 변경이 보안에 실질적으로 도움이 되지 않는다는 주장이 힘을 얻은 상황에서 PC 운영체계인 Windows 10과 Windows 서버의 보안 기준에서 비밀번호를 주기적으로 변경해야 한다는 조항을 삭제했다.

 

KISA의 주기적인 비밀번호 변경 조항이 이용자 불편만 초래할 뿐 보안에 대해서는 긍정적인 효과가 미약하다.

 

인터넷 보안 전문가는 "사용 중인 웹사이트에 비슷한 비밀번호를 적용해 오다가 해킹으로 탈취돼 비밀번호를 변경했으나, 나 자신 조차도 변경한 비밀번호를 기억하지 못하고 있다"고 말했다. 이어 "특수문자를 포함하라는 기준이 생겼지만, 기존에 수많은 곳에 적용한 비밀번호와 다르고, 가입하는 웹사이트마다 허용하는 특수문자의 제한이 있어서 이에 대한 기억을 일일이 하지 못한다. 자신이 변경한 비밀번호를 기억 못해 해당 비밀번호 재설정에 시간과 비용 낭비를 빈번하게 경험하고 있다"고 비밀번호 기반 로그인 기능 사용의 불편함을 토로했다.

 

미국립표준기술연구소(NIST)가 최근 발표한 패스워드 가이드라인에 따르면 주기적으로 비밀번호를 변경하는 것이 온라인 해킹 침해를 결코 막지 못한다고 한다. 주기적인 비밀번호 변경은 약한 비밀번호를 생성시킬 가능성이 높을 뿐만 아니라 사용자는 수십 개의 비밀번호를 기억하지 못해서 결국 어디엔 가는 써 놓게 된다는 것이다. NIST는 패스워드 가이드라인 개정을 통해 비밀번호를 특수문자를 포함한 여러 문자로 조합하고 일정 기간마다 바꾸도록 하라는 강제요건을 삭제했다.

 

비밀번호를 자주 바꾸면 일련의 좋아하는 숫자.문자 한두개를 규칙적으로 변경하기 때문에 비밀번호 해킹툴에게는 다음에 변경할 비밀번호 예측이 가능하다.

 

지금쯤이면 누구나 한 번쯤 "복잡한 비밀번호 생성 규칙" 때문에 짜증이 나 본 적이 있을 것이다.

 

이는 "문제의 본질을 이해하지 못한 상태에서 나온 정책"의 폐해를 드러내는 사례다.

 

비밀번호를 강력히 해야 한다는 표면의 내용만을 가지고 사용자들에게 모든 부담을 전가하는 게 바로 이 "과도하게 복잡한 비밀번호 생성 규칙"이고, 사실 보안에 유의미한 도움이 되는 것도 아니다.

 

또한, 지금까지 보안상 분기마다 한번씩 주기적으로 비밀번호 변경 규정에 따른 복잡한 비밀번호를 변경(비밀번호 증후군/리셋 증후군 호소)하는 것 보다 생각의 전환이 필요한 것 같다.

 

그러기 때문에 기업은 비밀번호가 유출되어도 도용할 수 없도록 비밀번호를 일회용 인증키(One-Time Authentication key)로 대체하거나 로그인-ID/비밀번호 이외에 2차 인증체계로의 변화가 필요하다.

20240726_123133.png

 

 

2차 인증은 정보자산의 보안 강화를 위하여 로그인-ID 및 비밀번호(지식기반 인증) 이외에 별도의 추가인증(소유기반/속성기반/행위기반/장소기반 인증)절차를 의미하며, 2 팩터 인증2 채널 인증으로 구분한다.

 

다운로드.png

 

 

2차 인증은 별도의 인증서버가 필요한 Hard 방식의 1st 인증(1세대 인증)와 별도의 인증서버가 존재하지 않아 관리가 필요 없고, 손쉽게 적용할 수 있는 Soft 방식(jar, so, dll 등의 인증모듈 호출)의 2nd 인증(2세대 인증)로 구분한다.

다운로드 (1).png

 

 

SMS, 이메일 등 문자 기반의 2차 인증은 별도의 인증서버가 존재하는 방식의 통합 인증과 별도의 인증서버가 존재하지 않아 관리가 필요 없고, 손쉽게 적용할 수 있는 모듈 인증 방식의 다계층 인증으로 구분한다.

 

다운로드 (2).png

 

 

FIDO(Fast Identity Online)는 Password를 서로 공유하여 인증하는, 공유방식 인증 방식 대신, 사람의 생체정보(지문, 얼굴모양, 홍채 등)나 외부 인증장치(Yubikey, Titan Security key 등)을 사용하여, "Public-Key Cryptography(공개키 암호기술)" 방식으로 보다 편리하고 안전하게 인증 기능을 제공하는 인증 프로토콜 표준이다.

다운로드 (3).png

 

2차 인증의 적용방안은 다양한 운영체제와 애플리케이션 같은 정보자산 로그인 시 비밀번호 만으로는 결코 안전하지 않으며 매번 사용할 때마다 비밀번호를 대체 또는 추가 인증(2차 인증)할 수 있는 새로운 적용 방안(추가 인증, 비밀번호 대체, 새로운 비밀번호)이 필요하다.

 

다운로드 (4).png

 

 

다양한 운영체제와 애플리케이션 같은 정보자산의 인증 정책은 다양한 사이버 공격에 대비하여 통합해 보호하는 방법이 아니라 각각의 컴포넌트 하나하나를 보호하는 방안으로 중앙 집중식에서 벗어나 탈중앙화 방식의 다계층 인증(Multi-layer Authentication)을 지원하여 보다 안전하게 정보자산을 보호할 수 있다.

정보자산의 보안 강화를 위하여 사용자 식별.인증하기 위한 인증 시스템은 우리가 많이 적용하여 사용하고 있는 Gateway(+Proxy) 방식은 접속하기 위한 통로를 별도로 설치한 후 사용자가 해당 통로를 통해서만 접근하도록 하는 방식이다.

예를 들어, 자동차를 타고 고속도로에 진입하기 위해서 반드시 톨게이트를 거쳐 통행료 징수를 위한 체크를 하듯이 서버나 네트워크, DB에 접속, 로그인하거나 로그인 한 후에 프로세스를 수행하기 위해서는 반드시 Gateway를 거치도록 구성하여 모든 로그인과 철저하게 통제하는 방식이다.

중앙 집중식으로 중앙화 되어 있는 Gateway(+Proxy) 방식은 별도의 서버(안전성을 위해 이중화 구성 필요)를 설치한 후에 독립적인 IP 및 포트를 부여하고, 접속 시 해당 IP 및 포트로 로그인 하도록 한다.

분명한 것은 서버 접근제어 기능 측면에서 서버보안S/W(Agent, LKM, PAM)가 Gateway(+Proxy, 별도의 보안서버) 방식에 비해 훨씬 기술적인 장점이 많다는 점이다.

 

물론 네트워크 관점에서 바라볼 때 서버 접근제어 시스템을 구축하는 것은 Gateway (+Proxy) 방식이 훨씬 쉽다는 장점이 있다.

 

왜냐하면, 중앙집중식으로 중앙화 되어 있는 Gateway (+Proxy) 방식은 서버보안S/W와 달리 서버마다 무언가를 설치하지 않아도 되기 때문이다.

 

하지만 논리적인 망구성의 변경이나 우회경로가 쉽게 뚫릴 수 있다는 점 그리고 자칫 Gateway (+Proxy) 서버의 접근 계정이 유출되면 더 큰 문제가 발생할 수 있다는 점 게다가 Gateway (+Proxy) 서버의 장애 발생 시 전체서버에 접근이 불가능해지고 사용자들이 서버에 접근하기가 많이 불편해지는 점 등 네트워크 기반에서 서버접근제어를 바라볼 때문에 발생할 수 있는 문제점에 대해 신중하게 검토하여야 한다.

사이버 보안은 현대 기업의 IT 환경에서 복잡하고 중요한 문제이다. 공격자들은 기업 방어를 뚫기 위한 새로운 방법을 계속해서 찾고 있으며, 기업은 이에 대응하기 위해 다계층 방어 전략을 채택해야 한다.

 

또한, 국정원에서는 획일적인 업무.인터넷망 분리에서 업무 중요도(기밀, 민감, 공개 등급으로 분리)에 따른 보안체계를 차등 적용하는 "다중 보안체계(Multi Level Security)"를 목표로 개선할 방침이다.

 

중앙 집중식으로 중앙화 되어 있는 Gateway(+Proxy) 방식을 사용하는 것은 해커들이 너무도 좋아하는 우회/원격 접속, 중간자 공격이 가능한 솔루션으로 보안 전문가들은 이런 분류의 솔루션은 보안 솔루션으로 취급하지도 않는다.

중앙 집중식으로 중앙화 되어 있는 Gateway(+Proxy) 방식은 기술적으로 "단일 지점 공격"에 의한 시스템 전체가 장악되거나, 파괴될 수 있는데, 이번 사태는 인증 시스템도 예외가 아님을 보여줬다.

 

중앙 집중식에서 벗어나 탈중앙화하는 PC, 서버, 네트워크, 애플리케이션, 데이타베이스 등 각각의 레이어(다계층)별 인증 시스템(Multi-layer authentication system) 은 "단일 지점 공격"에서 시스템을 보호할 수 있다. 탈중앙화하는 다계층 인증 시스템이 필요하다는 주장이 힘을 받고 있다.

 

2차 인증 도입 시 검토 사항은 다음과 같다.

 

제로 트러스트(Zero Trust) 개념이 적용되어 있는지?

별도의 인증서버 방식인지, 모듈인증 방식인지?

통합인증인지 분산인증인지?

인증키 생성 및 검증 시 사용되는 키는 정적인지, 동적인지?

제한된 시간 내에 횟수 제한을 할 수 있는지?

다양한 운영체제와 애플리케이션에 손쉽게 적용 및 관리가 단순한지?

간단(느슨)한 구성에서 시작해 더 복잡(견고)한 보안 시스템으로 진화할 수 있는지?

중앙 집중식에서 벗어나 탈중앙화 방식의 다계층 인증(Multi-Layer Authentication)을 지원하는지?

인증 폭주 시 인증 속도는 얼마나 저하되는지?

통신망을 사용하는지?

보안시스템의 우회 및 원격접속을 차단할 수 있는지?

보안지역이나 통신장애에 영향을 받는지?

인증절차 시 데이터를 위변조하여 우회 인증절차에 대한 문제가 없는지?

로그인 계정이나 개인정보의 도난, 스파이 행위, 통신 방해, 데이터 변경 등에 사용되는 중간자 공격(Man-in-the-middle attack)을 방어할 수 있는지?

모바일 문자 메시지로 인증코드를 전송 했을 때 발생하는 심스와핑(SIM-swapping) 공격을 방어할 수 있는지?

리버스 프록시(Reverse Proxy)와 같은 기술을 적용하여 인증을 우회할 수 있는 구조인지?

푸시 알림을 계속 보내 상대방을 지치게 만들어 우발적으로 로그인 승인 버튼을 누르게 만드는 공격인 "MFA 피로 공격(fatigue attacks)"을 방어할 수 있는지?

 

서버 접근제어와 망분리로 인한 보안이 강화된다는 것은 어불성설이며, 지금은 정보보안에 대한 인식의 대전환이 필요한 시대이다

 

아직도 보안에 취약한 이런 방식이 사용되고 있다는 현실이다

 

▶2차 인증 중 해커들의 가장 좋아하는 적용 방식: Gateway(+Proxy) 방식

▶2차 인증 중 가장 취약한 인증 방식: SMS, 이메일 등 문자기반의 인증

▶2차 인증 중 해커들이 가장 애용하는 우회 기술과 피로공격에 취약한 인증 방식: 2 채널 인증

▶피싱 공격에 잘 속는 링크 방식: QR 코드 방식

 

다양한 운영체제와 애플리케이션 같은 정보자산의 보안 강화를 위해서는 가장 중요한 기본 사항은 다음과 같다.

 

▶인증 절차 시 데이터 위변조를 어떻게 방어할 것인지?

▶계정 정보 도용 및 악용은 어떻게 차단할 것인지?

▶브라우저 자동 로그인은 어떻게 방어할 것인지?

▶단일 지점 공격을 어떻게 방어할 것인지?

▶우회/원격접속을 어떻게 차단할 것인지?

▶중간자 공격을 어떻게 방어할 것인지?

▶다중인증(MFA)의 우회기술을 어떻게 차단할 것인지?

▶다중인증(MFA)의 피로공격을 어떻게 방어할 것인지?

 

무엇보다도 인증키는 본인이 소유하고 있는 인증키 생성매체를 사용해서 본인이 직접 인증키를 생성하여 본인이 접근하고자 하는 정보자산에 직접 입력 및 검증해야 그나마 정보보안 사고를 예방할 수 있는 최선책이다.

 

"공격자들은 딱 한 번만 성공하면 된다"고 한다. 레딧의 해킹 사고가 이를 적나라하게 드러냈다. 그런데 "방어도 딱 한 사람의 의심으로 성공할 수 있다"라는 사례가, 같은 레딧 해킹 사고를 통해 입증됐다. "사람은 보안의 최종 결론"이다.

 

"아무 것도 하지 않으면 중간은 간다"는 건 오래된 말이고, 클라우드 시대에는 통하지 않는 말이다. 새로운 시대에는 새로운 보호 장치가 어울린다. 비밀번호 하나로 관문을 지키는 건 더 오래된 방식이다. 시스템과 인프라는 자꾸만 새 것으로 바뀌는데 왜 예전 것들을 부여잡고 있는지 각자가 스스로를 검토해야 할 때다.

 

결론은 "2차 인증을 도입했다"는 것이 아니라 기술 및 보안성 등 "어떤 2차 인증을 도입했느냐"가 관건이다.

"아무 것도 신뢰하지 않는다" = "아무도 믿지 마라" = "계속 검증하라"


Articles

1 2 3 4