주식회사 누리아이티

정보자산의 보안강화를 위한 다계층 인증SW (BaroPAM) 전문기업.

▶ BaroSolution/기술문서

디지털 시대의 철저한 신원 증명, 다중 인증(MFA) 질의응답

누리아이티 2021. 6. 17. 09:56

"정적인 비밀번호, 서명, 사인, 지문, 안면, 홍체 등과 같은 패턴과 시그니처를 기반으로 한 정적인 보안의 시대는 끝났고, 이젠 정적인 보안이 아닌 매번 변하거나 한번 사용하고 버리는 일회성 또는 휘발성 같은 동적인 보안의 시대로!"

 

1. 최근 다크웹 등을 통해 기업과 개인이 사용하는 ID·비밀번호가 유출 및 유통되고 있는 상황과, 이 때문에 발생할 수 있는 각종 사이버 위협에 대해 소개 부탁 드립니다.

 

기업 및 개인의 정보 유출에 대한 해킹 피해보도는 잊혀질 만 하면 계속 발생되고 있으며, 이에 대한 피해는 심각한 수준이다. 

 

 

이로 인하여 온라인 뱅킹 사고, 정보자산 해킹, 정보 노출 / 유출, 명의 도용, 불법 이용, 인터넷에 불법 접속 등이 발생할 수 있다.

 

 

2. 이러한 유출 사고에 대비해 어떤 개인은 보안조치(예를 들어 주기적인 비밀번호 변경 등)를 해야 할까요?

 

주기적으로 비밀번호를 변경하는 것이 온라인 해킹 침해를 결코 막지 못한다고 한다. 주기적인 비밀번호 변경은 약한 비밀번호를 생성시킬 가능성이 높을 뿐만 아니라 사용자는 수십 개의 비밀번호를 기억하지 못해서 결국 어디엔 가는 써 놓게 된다.

 

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

 

그러므로, 비밀번호 만으로는 결코 안전하지 않으며 비밀번호를 매번 사용할 때마다 비밀번호를 대체 또는 추가 인증(2차 인증)할 수 있는 일회용 비밀번호(OTP) 같은 게 필요하다.

 

 

3. 기업은 유출된 정보를 통한 접근 시도를 어떤 방식으로 차단할 수 있을까요?

 

비밀번호를 바꾸는 것보다는 2차 인증(추가 인증) 적용(: ID/PW + OTP) 및 일정 횟수(: 5) 이상 인증 실패 시 접속을 차단해야 한다.

 

또한 인증수단을 특정하지는 않으나, 지식기반.소유기반.특정기반 인증 수단 중 서로 다른 방식에 속하는 인증수단 2개를 조합하여 적용해야 한다.

 

 

4. 정보가 유출되어도 계정을 안전하게 보호할 수 있는 다중 인증은 어떤 원리로 작동하는지 설명 부탁드립니다.

 

다중 인증(MFA, Multi-Factor Authentication)는 최소 두 가지 이상의 인증 요소를 이용하여 본인 여부를 인증하는 것으로 비밀번호와 같이 해당 이용자만이 알고 있는 요소(지식기반), 하드웨어 토큰과 같이 해당 이용자만이 갖고 있는 요소(소유기반), 생체인식 정보와 같이 해당 이용자만의 고유 요소(속성기반), 어떤 인물의 반복된 행동이나 기기 사용 방식(행위기반), GPS나 이동통신과 같이 특정 장소(장소기반) 등에서 최소 2개 이상을 함께 사용하여 이용자를 인증한다.

 


또한, 다중 인증은 적어도 지식(knowledge), 소유(possession), 속성(inherence), 행위(behavior), 장소(place) 중 두 가지에 한해 별도의 여러 증거 부분을 인증 매커니즘에 성공적으로 제시한 이후에만 사용자가 접근 권한이 주어지는 컴퓨터 접근 제어 방식의 하나이다.
 
2-팩터 인증(Two-factor authentication, 2FA)은 두 개의 다른 요소를 병합함으로써 사용자가 주장하는 식별자를 확인하는 방식이다. 2-팩터 인증은 다중 인증의 일종이다.

대중적인 여러 웹 서비스들은 다중 인증을 사용하고 있으며, 일반적으로 기본값으로 비활성화되는 선택 기능이다.

수많은 인터넷 서비스(구글, 아마존 AWS 등)는 개방형 시간 기반 일회용 비밀번호 알고리즘(TOTP)을 사용하여 다중 또는 2-팩터 인증(Two-factor authentication)을 지원한다.


기기마다, 플랫폼마다, 계정마다 각기 다른 비밀번호를 설정하고 주기적으로 변경할 것을 권장한다. 하지만 여러 개의 비밀번호를, 그것도 특수문자와 대문자를 포함하고 생년월일과 무관하며 연속성이 없는 최소 8자 이상의 글자 조합을 외우는 것은 좀체 만만한 일이 아니다. 그렇다고 컴퓨터 앞에 적어 둘 수도 없는 노릇이다. 그러니 기존에 사용한 적이 없으면서도 잊어버리지 않을 만한 비밀번호의 조합을 만들어내는 것은 이제 창의성의 영역에 있는지도 모르겠다.

 

해외 보안 전문 업체의 발표에 따르면, 2020년에 가장 많이 사용된 패스워드는 "123456"이다. 2019 1위는 "12345"였으니, 겨우 숫자 한 자리가 늘어났을 뿐이다. 2위는 "123456789", 4위는 무려 "password". 비밀번호 입력을 통해 접근할 수 있는 정보의 양은 점점 방대해진다. 과거에는 메일 수신함 정도였다면, 이제는 핸드폰의 사진과 문자 기록, 계좌 정보와 같은 긴밀한 개인 정보까지 접근이 가능하다. 그리고 앞에서 열거한 비밀번호를 전문 해커가 풀어내는 데는 1초의 시간도 채 걸리지 않는다.

 

개인 정보 보호 및 정보 유출의 피해를 최소화 하기 위해서는 정보자산의 주기적인 비밀번호 변경이 중요하다. 그러나 보안 전문가들은 정기적인 번호변경 못지 않게 비밀번호를 설정하고 관리하는 방법이 더욱 중요하다고 말한다. 개인정보 유출사고 피해를 입은 사람들 중에는 외우기 쉽거나 유추가 가능하도록 비밀번호를 설정하거나 또는 여러 정보자산에 대해 동일한 비밀번호를 사용하는 경우가 많았기 때문이다.

 

비밀번호가 유출되어도 도용할 수 없도록 비밀번호를 대체 하거나 로그인-ID/비밀번호 이외에 2차 인증(추가 인증) 체계로의 변화가 필요하다.

 

정보자산 로그인 시 비밀번호 만으로는 결코 안전하지 않으며 매번 사용할 때마다 비밀번호를 대체 또는 추가 인증(2차 인증)할 수 있는 새로운 적용 방안인 추가 인증, 비밀번호 대체, 새로운 비밀번호 등이 필요하다.

 

 

비밀번호는 단방향 암호화를 적용해야 하며, 비밀번호 관리 지침에 따라 주기적으로 변경해야 하는데,비밀번호를 OTP로 대체하면 비밀번호를 기억할 필요도 없으며, OTP의 생성 주기마다 바뀌기 때문에 효율적인 방법이기도 하다.

 

새로운 비밀번호는 비밀번호와 같이 OTP를 입력할 경우, 비밀번호를 먼저 입력하고 공백 없이 이어서 OTP를 입력하면 된다.

 

예를 들어, 비밀번호가 "baropam" 이고, OTP "123456" 이라면 비밀번호 입력란에 "baropam123456"으로 입력하면 된다.

 

OTP의 생성 주기가 30초 이면 30초 마다 OTP가 바뀌기 때문에 고정된 비밀번호와 결합하면 OTP 생성 주기 마다 새로운 비밀번호가 생성되기 때문에 고전적 방법인 주기적으로 서버의 비밀번호를 바꿀 필요가 없게 된다.

 

분실.도용.해킹으로 인한 사용자 비밀번호를 초기화 해야 하는데, 이제는 사용자 본인 스스로 로그인-ID, 특정항목, OTP 등을 입력하여 맞으면 새로운 비밀번호를 등록하여 사용하게 한다.

 

 

5. 다중 인증에 사용될 수 있는 기술(예를 들어 OTP, 생체정보 등)은 어떤 것들이 있나요?

 

개인정보가 포함된 로그인 방식은 크게 4가지로 나누어지고 있다. IP 접속 제한, 공인인증서, 생체인식, OTP 등이며, 이중 간편한 인증방식을 거치며 보안성 높은 안전한 인증 수단으로 "OTP" 방식이 적합하다.

 

 

IP 접속 제한 방식은 정보자산에 고정IP가 필요하기 때문에 유동IP를 사용한다며 접속 제한에 의미가 없으며, 공인인증서 방식은 솔루션 비용이 비싸며 공인인증서 인증 모듈의 불편함 때문에 사용하기가 힘들고, 공인인증서 의무화가 폐지되어 대체할 대안이 필요하며, 생체인식 방식은 솔루션 비용이 비싸며, 생체정보가 유출되는 순간 평생 사용할 수가 없다.

 

그에 비해서 OTP는 누구나 사용하기 쉽고, 시간과 장소의 제약을 받지 않으며, 인증매체를 따로 소지하고 다닐 필요 없이 모바일 앱을 다운받아 스마트 폰에서 OTP를 생성하기 때문에 간편한 인증방법인 동시에 강력한 보안 기능을 제공한다.

 

OTP는 단순한 랜덤값 생성이 아닌 해시값을 생성하여 HMAC를 구현하는 키지정 해시 알고리즘을 사용한다. 그러기 때문에 사용자 인증을 받기 위해서는 매번 새로운 OTP를 사용하여야 하며, 휘발성으로 1회에 한해서만 사용 가능하여 ID/PW 유출 되어도 안전하다.

 

한번 사용된 OTP는 재사용할 수 없으며 OTP 유추가 어려워 다양한 해킹 공격에도 강력한 보안성을 제공한다.

 

보안 솔루션의 적용 방식은 크게 Gateway(+Proxy), Sniffing, Agent, LKM(Loadable Kernel Module), PAM(Pluggable Authentication Module) 방식 등이 있다.

 

 

1) Gateway 방식(+Proxy 방식)

 

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

 

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

 

인증서버 방식인 Gateway 방식을 사용하는 것은 해커들이 너무도 좋아하는 우회접속 및 원격 접속이 가능한 솔루션으로 보안 전문가들은 이런 분류의 솔루션은 보안 솔루션으로 취급하지도 않는다.

 

2) Sniffing 방식

 

Sniffing 방식은 사용자와 서버 간에 주고받는 패킷을 복사하여 서버에 전달하는 방식이다. 이것은 마치 고속도로 상의 감시 카메라가 지나가는 자동차의 속도를 측정하여 과속 차량이 발생하는 경우에만 사진을 찍어 과태료를 부과하므로 전혀 교통 흐름에 영향을 주지 않는 것과 같은 방식이다. 따라서 조직에 가장 필요한 솔루션을 설치하면 된다. 남들이 이것 설치했다고 좋은게 아니고 반드시 임베디드 테스트나 사전 도입 검토를 충분히 거쳐야 한다. 보안솔루션은 한번 설치되면 빼내기 무척 어렵고 제 기능 발휘하지 못해도 그대로 방치하는 경우가 발생할 수도 있다.

 

3) Agent 방식

 

Agent 방식은 서버에 접근제어를 설치하는 방식이다. 솔루션에 따라서 Agent만으로 접근이 가능하도록 설계되거나 어떤 솔루션은 별도로 외부에 서버를 설치한 후에 내부 패킷을 외부 서버로 전송하여 접근을 제어하기도 한다.

 

4) LKM 방식

 

LKM(Loadable Kernel Module) 방식은 커널 재컴파일 없이 작동중인 운영 체제 커널에 실행 기능을 모듈로 추가하기 위한 기법이다.

 

LKM은 현재 리눅스, 솔라리스, FreeBSD를 포함한 많은 운영체제에서 사용되고 있다.

 

트로이목마에 감염된 모듈이 LKM에 있으면 시스템을 리부팅 한다해도 부팅 과정에서 다른 커널 모듈들과 마찬가지로 감염된 LKM 모듈을 다시 적재하게 된다.

 

따라서 LKM 사용상의 이점이 널리 인정된다 하더라도 악의적인 침입자들에 의해 악용할 수도 있기 때문에 기능 자체를 반대하는 사람들도 있다.

 

전형적인 서버 접근제어에 사용한 방식으로 Secure OS가 이 방식을 채택하여 사용하고 있다.

 

5) PAM 방식

 

PAM(Pluggable Authentication Module) 방식은 Linux/Unix 시스템에서 중앙집중적인 인증 매커니즘을 지원하는 방식이다.

 

PAM의 기본 원리는 응용 프로그램이 password 파일을 읽어 오는 대신 PAM이 직접 인증을 수행 하도록 하는 것이다. PAM은 시스템 관리자가 원하는 인증 매커니즘이 무엇이든 상관하지 않는다.

 

PAM Windows 환경의 DDL(Dynamic Link Library)과 같은 것이다. Library로 프로그램이 어떤 사용자에 대한 인증을 수행하려면 PAM Library가 있는 함수를 호출한다. PAM은 해당 함수의 Library를 제공하여 응용 프로그램이 특정 사용자를 인증하도록 요청할 수 있다.

 

PAM을 통해 /etc/passwd 파일이나 /etc/shadow 파일을 확인하거나 또는 보다 복잡한 확인 작업을 수행하기도 하는데, 예로는 LDAP 서버에 접속하는 것이다.

 

확인 작업을 마치고, 인증 여부를 결정하게 되면 "인증됨/인증되지 않음"의 메시지를 자신을 호출한 응용 프로그램에 전송한다.

 

PAM을 사용하면 사용자 인증을 위한 시스템 항목 서비스(: ftp, login, telnet, rsh) 사용을 구성할 수 있다. PAM이 제공하는 몇 가지 이점은 다음과 같다.

 

■ 유연한 구성 정책

■ 응용 프로그램별 인증 정책

■ 기본 인증 방식을 선택할 수 있는 기능

■ 높은 보안 시스템에서 여러 권한 부여를 요구할 수 있는 기능

■ 최종 사용자의 사용 편의성

■ 암호가 여러 인증 서비스에 대해 동일한 경우 암호 재입력 없음

■ 사용자가 여러 명령을 입력할 필요 없이 여러 인증 서비스에 대해 사용자에게 암호를 요구할 수 있는 기능

■ 사용자 인증 서비스에 선택적 옵션을 전달할 수 있는 기능

■ 시스템 항목 서비스를 변경할 필요 없이 사이트별 보안 정책을 구현할 수 있는 기능

 

블록체인은 분산 데이터 처리 기술이지 사용자 식별.인증 기술이 아니다. 블록체인은 그 자체로 개인을 식별·인증할 수 있는 기능은 없다.

 

 

6. 귀사는 어떤 기술을 중심으로 다요소 인증 기능을 구현하고 계신가요?

 

별도의 인증 서버가 필요 없는 PAM(플러그 가능한 인증 모듈) 방식의 2세대 인증 솔루션으로 SHA-512를 적용한 OTP로 생성기로는 스마트폰 앱(BaroPAM)와 플라스틱 OTP 카드(BaroCARD)에 생체정보인 지문 정보를 카드에 직접 등록하는 방식을 적용하였으면, 정보자산의 보안 강화를 위해 인증이 필요한 다양한 운영체제와 애플리케이션에 손쉽게 바로 적용할 수 있는 플러그인이 가능한 인증 모듈(PAM: Pluggable Authentication Module) 기반의 솔루션이다.

 

 

 

7. 귀사의 솔루션이 내세울 수 있는 강점은 무엇인가요?

 

BaroPAM 솔루션은 별도의 인증서버가 필요 없는 PAM(플러그 가능한 인증 모듈) 방식의 2세대 인증 솔루션으로 다양한 운영체제와 애플리케이션의 보안을 강화하도록 PAM의 장점을 100% 활용해 보안성이 강하며, 단순하고, 관리도 필요 없고, 장애도 없고, 손쉽게 적용할 수 있고, 빠른 인증 속도로 서비스를 보장하고, 솔루션을 도입할 때 별도의 서버나 DB 같은 추가 도입이 필요 없는 솔루션이다.

 

 

제일 큰 문제인 통신을 필요로 하는 방식이 아니기 때문에 빈번하게 발생하는 통신 장애가 발생하지 않으며, 별도의 인증 서버가 필요 없는 방식이기 때문에 보안 지역에서 인증 서버와 통신할 수 없어서 인증을 받을 수 없다는 문제가 발생하지 않으며, 부하분산이 되기 때문에 인증 폭주로 인하여 인증 속도가 저하 문제가 발생하지 않으며, 별도의 인증 서버가 필요 없는 방식이기 때문에 서비스가 중단되는 장애가 발생하지 않는 다는 점이다.

 

타인의 폰번호를 부정 사용하지 못하도록 하기 위해서 별도의 본인 확인 기능을 적용할 필요가 있는데, 안드로이드 폰과 달리 아이폰(iPhone)폰의 기기정보를 얻지 못해서 아이폰용 "BaroPAM" 앱에서는 자체 알고리즘을 적용하여 자체적으로 본인 확인 절차를 적용하고 있다.

 

 

 

8. 기업 보안 담당자에게 보안 강화를 위해 권고하고 싶은 사항 혹은 유출사고 발생 시 대응 요령 등을 소개해주셨으면 합니다.

 

간편성과 편리성을 내세운 별도 인증 서버를 필요로 하는 인증서버 방식인 Gateway(+Proxy) 방식을 사용하는 것은 해커들이 너무도 좋아하는 우회접속 및 원격 접속이 가능한 솔루션으로 보안 전문가들은 이런 분류의 솔루션은 보안 솔루션으로 취급하지도 않는다.

 

Gateway(+Proxy)/FIDO 방식의 제일 큰 문제는 빈번하게 발생하는 통신 장애 또는 보안 지역에서 인증 서버와 통신할 수 없어서 인증을 받을 수 없다는 점, 인증 폭주로 인하여 인증 속도가 저하된다는 점, 인증 서버에 장애가 발생하면 관련 서비스가 모두 중단된다는 점이다.

 

또한 통합인증이 아닌 분산인증을 적용함으로써 위와 같이 만일에 발생할 수 있는 문제를 최소화 시킬 수 있다.

 

보안 솔루션은 내가 접속하고자 하는 다양한 운영체제나 애플리케이션에 설치가 되어야 하며, 접속하고자 하는 운영체제나 애플리케이션에서 인증을 해야 한다.

 

현재, 정보자산(H/W, S/W)에 대한 정보자산의 보안은 반대로 되어 있는 게 현실이다.

 

예를 들어, 아파트를 출입하는 1층에 Lock이 있고, 실제 집의 출입문에는 Lock이 없는 누구나 맘대로 들낙거릴 수 있는 오픈되어 있는 구조이다.

 

이 구조로는 도둑이 1층 출입문만 통과하면 실제 집의 출입문에는 열러 있는 구조라 얼마든지 이집 저집 이방 저방을 다니면서 생명과 재산에 피해를 볼 수 밖에 없다.

 

생명과 재산을 그나마 보호 받을려면 1층 출입문 뿐만 아니라 각 집마다 출입문에 Lock이 설치 되어 있어야 한다.

 

보안은 어렵고 적용하면 불편하다는 편견에 사로 잡혀 있는 게 현실이며, 이런 고정 관념을 탈피하여 외부의 해커 또는 내부 사용자가 불법적으로 정보자산에 접근하는 상황을 제한(정보자산의 우회/원격접속을 차단)하여 정보자산의 보안을 강화하는 것이 최상의 보안전략으로 정보 보안은 단순해야 하며, 누구나 손쉽게 적용할 수 있어야 하며, 운영 및 관리도 간편하면서 보안성은 강하게 해야 한다.