1. 서 론
스마트폰 사용자의 증가와 아울러, 일상생활에서 스마트폰을 이용한 다양한 응용 생태계가 조성이 되고 있다. 특히 금융 관련 분야에서 사용자 편의성을 고려한 다양한 핀테크(Fin Tech) 서비스가 출시되고 있으며, 사용자 개인정보에 밀접하게 관련된 응용 서비스들도 증가하는 추세이다.
이와 같이 급속도로 그 영향력이 증가하는 모바일서비스 생태계에서 사용자의 개인 정보 유출이나 개인 자산 침해와 관련된 사고는 지속적으로 증가하고 있는 추세이며 앞으로도 증가할 것으로 예상된다. 그러나 현재 대중적으로 이용되는 개인 인증기법인 비밀번호에 기반한 사용자 인증 방법과 같은 문자 패스워드 기반 사용자 인증 기법은 유출이 쉽고, 최근 발생하는 다양한 공격 유형에 안전하지 않다. 이에 기존 문자 기반 인증기법의 편리성은 유지하면서도 다양한 공격에 대응하는 방법으로 이미지, 그래픽, 또는 생체 정보를 이용한 사용자 인증 기법들이 연구되고 있다. 그런데, 최근의 모바일 기기 대상의 공격 유형들 중 엿보기[1], 레코딩[2], 스머지[3], 패스워드 추정 공격[4,5] 유형은 보안 기법의 알고리즘 허점을 대상으로 하는 공격이 아니며 사용자의 실수를 유발하거나 직·간접적인 접촉을 통해 이루어지는 공격 기법으로써 기존의 보안 알고리즘으로 해결하기 어려운 부분이 존재한다. 이에 본 연구에서는 엿보기, 레코딩, 스머지, 패스워드 추정 공격을 포함한 무작위 공격 기법에 대응하는 순환식 키보드와 그리드 포인터를 이용한 사용자 인증 기법을 제안한다.
본 논문의 구성은 다음과 같다. 2장은 본 논문의 관련연구로서 기존의 공격 기법들과 인증 기법들을 설명한다. 3장에서는 제안 기법을 설명하며, 제안 기법의 사용자 패스워드 등록 및 그리드 포인터 설정에 따르는 절차와 이를 이용한 사용자 인증의 순서로 서술한다. 4장에서는 제안 기법을 기존 기법들과 안전성 및 편의성으로 나누어 비교하며 각각 성능을 평가하고 5장에서 결론을 맺는다.
2. 보안위협
2.1 엿보기 공격
엿보기 공격(Shoulder-Surfing Attack)[1] 은 공격자가 직·간접적인 수단을 통해 정상적인 사용자의 비밀정보를 취득하는 형태의 공격이다. 최근의 스마트폰 스크린 사이즈는 약 5인치 이상으로 공격자에 의한 엿보기 공격에 취약하다. 따라서 안전을 담보하려면 반드시 디스플레이 정보는 개인 비밀정보를 포함하지 않으며 비밀정보를 추정할 수 있는 요소를 배제해야 한다.
2.2 레코딩 공격
레코딩 공격(Recording Attack)[2] 은 사용자의 비밀정보 입력행위를 영상 기록 장치를 이용하여 녹화 및 재생하여 비밀정보를 취득하는 방법으로 엿보기 공격에 비해 높은 공격 성공률을 보이고 있어 매우 강력한 공격 기법으로 인식되고 있다.
2.3 스머지 공격
스머지 공격(Smudge Attack)[3] 은 주로 패턴기반 사용자 인증 소프트웨어를 사용하는 안드로이드기반 스마트폰에서 스크린에 흔적이 남은 패턴 정보를 공격자가 취득하여 비밀정보를 추정하는 공격 기법이다.
2.4 패스워드 추정 공격
패스워드 추정공격[4,5]은 스마트폰에 탑재되어 있는 방향 센서, 가속도 센서의 감지 데이터를 이용해 사용자 패스워드 입력시 키 위치를 추정하는 공격 기법이다. 이 기법은 가상 키패드 키 터치시 센서가 생성하는 데이터들을 통해 패스워드를 획득하는 기법으로 패스워드 추정 공격에 해당한다.
3. 관련연구
3.1 QWERTY 보안 키패드
현재 주로 사용되는 QWERTY 보안 키패드[6]는 각 키의 위치를 일정 부분 임의로 바꾼다는 점에서 기본적인 원리는 같으며 은행에서 사용하는 보안 키패드는 다음의 Fig. 1과 같다.
Fig. 1.Examples of secure keypad layout of internet banking services.
이 기법은 각 키의 위치가 매번 일정 부분 무작위로 바뀐다. 또한 실행중인 상태에서도 다음의 Fig. 2와 같이 재배열 버튼을 눌러 키 배치를 일정 부분 변경 가능하다.
Fig. 2.Partially randomized Keypad layout by re-arrange button.
3.2 ABC 보안 키패드
ABC 키패드[7,8] 는 다음의 Fig. 3과 같이 ABC 순서로 키가 배열되어 있다. 키패드의 각 행에 고정된 범위의 키를 사용하는 QWERTY 기법과 달리, ABC 키패드는 삽입되는 공백에 대한 제약이 적고 각 행에 배열되는 키의 개수가 매번 다르다. 따라서 키패드 좌표 값이 유출되더라도 QWERTY 키패드에 비하여 실제 킷값을 유추하기 어렵다.
Fig. 3.Example of ABC Keypad layout.
3.3 터치&슬라이드 키패드
터치&슬라이드 키패드[7] 는 다음의 Fig. 4와 같이 스크린의 좌우 화살표를 터치하여 좌우 방향으로 문자를 넘기거나 슬라이드 기능으로 입력을 원하는 문자를 찾아 이동 후 가운데 사각형 부분에 위치시킨 후 사각형 안의 문자를 입력하는 방식을 사용한다.
Fig. 4.Example of touch&slide keypad.
3.4 4색 기반 보안 키패드
4색 기반 보안 키패드[9,11]는 4색 이론[10]에 근거한 키보드 색 마스킹 기법을 사용하며, 다음의 Fig. 5와 같이 사용자 입력에 별표 마스킹을, 패드의 각키를 4색 중 하나로 마스킹을 적용하였다. 이 기법 사용자는 색으로 구분된 키를 입력하며, 입력 확인 윈도우에 나타난 별표 색으로 입력 확인 및 오류를 구분 할 수 있도록 하였다.
Fig. 5.4-color based keypad layout.
3.5 랜덤 키패드
랜덤 키패드[12] 는 QWERTY 키패드 열의 위치는 고정되어 있고, 행을 임의로 변경하는 기법이다. 다음의 Fig. 6은 키패드가 생성할 수 있는 4가지 형태의 키 배열을 나타낸다.
Fig. 6.Random keypad layout.
여기에 다음의 패스워드 추측을 어렵게 하기 위해 패스워드 중간 임의의 자리에 임의 개수의 속임수키가 사용 가능하다.
4. 제안 방법
제안하는 방법은 사용자가 임의 선정한 그리드 포인터와 패스워드를 동시에 사용하여 사용자 인증을 하는 방법이다. 이 방법은 기존의 패스워드 기반 사용자 인증 기법들과 유사하나 입력에 사용하는 그리드 포인터와 키패드의 구조가 기존의 방법과 상이한 동작 구조를 갖고 있으며, 이로 인해 엿보기, 레코딩, 스머지, 패스워드 추정 공격 대해 보안상 안전하다.
4.1 제안 기법 구조
제안하는 방법은 키패드와 그리드의 2중 구조로 되어 있다. 키패드의 구조는 다음은 Fig. 7과 같이 기존의 QWERTY 키패드와 같은 형태이며 최하단을 제외한 각 상하 좌우 모서리에 키패드의 시작과 끝을 표기하기 위한 삼각형 모양의 태그가 있다.
Fig. 7.Proposed keypad layout.
그리드는 키패드 상단에 겹쳐지는 형태로써, 다음의 Fig. 8과 같이 최초 사용자 패스워드 등록시 그리드 중 자신이 키패드 입력을 위한 포인터로 사용할 특정 위치의 그리드를 임의로 선택한다. 이때 선택된 위치의 그리드는 패스워드 입력을 통한 사용자 인증시 화면에 표시되지 않는다.
Fig. 8.Grid structure & user selected grid pointer.
4.2 제안 기법 동작
제안하는 방법의 키패드는 다음의 Fig. 9와 같이 경계가 존재하지 않는 순환식 구조를 가지고 있으며 항상 위치가 고정되어 있는 QWERTY 타입의 키보드와 달리 QWERTY 구조는 유지하되 상하 좌우의 경계 없이 위 아래 및 좌우가 연속적으로 순환하여 움직이는 키패드이다. 사용자가 이 키패드의 QWERTY 구조 파악을 쉽게 하기 위해 삼각형의 태그가 있으며 이 태그의 위치를 보고 사용자는 QWERTY 구조를 파악하여 패스워드 입력을 수행한다. 또한 화면의 터치 지점 좌표를 통한 공격에 대응하기 위해 이 순환식 키패드의 초기 레이아웃은 QWERTY 구조를 유지하면서 키 배치 좌표가 임의로 변한다.
Fig. 9.Proposed keypad layout (a) QWERTY key layout (b) edgeless circulation example.
제안 기법은 다음의 Fig. 10과 같이 순환식 키패드에 그리드가 오버랩된 구조를 갖으며, 사용자는 자신이 포인터로 선택한 그리드에 자신이 등록한 패스워드를 순환식 키패드를 이용하여 순서대로 일치시켜 입력하는 구조이다.
Fig. 10.Grid & keypad layout of proposed scheme.
사용자가 사전에 설정한 패스워드가 ‘key’ 이고 그리드의 위치가 현재 Fig. 10에서 붉은색으로 표시되어있는 부분이라고 가정하면 사용자는 비밀번호 ‘key’ 의 입력을 위해 손가락으로 화면을 슬라이드하여 키패드의 ‘k’ 를 붉은색 그리드로 이동시킨 후 탭과 같은 입력 동작을 통해 ‘k’ 를 입력한다. 다음의 Fig. 11은 비밀번호 ‘key’ 중 ‘k’ 를 입력하는 동작과정에 대한 예시이다.
Fig. 11.How to use the proposed scheme (a) Initial stage (b)‘k’word selection #1 (c)‘k word selection #2.
Fig. 11(a) 의 키패드는 QWERTY의 랜덤 위치로 초기화 된 상태이다. 먼저 사용자는 위 Fig. 11(a)의 그리드 위치가 붉은색으로 표시되어있는 부분으로 비밀번호 k의 입력을 위해 손가락으로 화면을 좌로 키 a까지의 거리만큼 이동 후, 다음의 Fig. 11(b), 11(c) 와 같이 위로 키 1 까지 거리만큼 이동한다. 이후, 키 k가 사용자가 사전에 선정한 그리드 위치에 오면 탭을 하여 선택하는 동작으로 해당 값을 입력한다. 실제 그리드의 위치의 붉은색은 보이지 않는다. 사용자는 임의로 설정한 그 부분을 인지하고 있어야 한다. 그리고 키패드의 킷값을 입력하기 위한 방향은 정해져 있지 않으며 사용자가 보기에 적절한 이동 방향을 정하여 이동할 수 있다. 예를 들어 비밀키 입력을 위한 그리드의 위치가 h 키 자리에 있을 경우, 사용자는 k 입력을 위해 좌로 k를 두키 간격만큼 이동하여 입력할 수 있으며, 또는 이와 반대 방향인 우측으로 k를 8키 간격만큼 이동하여 입력할 수 있다.
Fig. 11(b)는 패스워드 ‘k’ 의 입력을 위해 먼저 Fig. 11(a) 단계에서 손가락으로 화면을 좌로 이동한 거리만큼 키의 배열이 변경된 모습이다. Fig. 11(a) 에서의 키 ‘a’ 지점은 이제 Fig. 11(b)와 같이 ‘k’가 위치하게 되며, 키패드 배열의 위치 이동으로 인해 키 ‘a’는 오른 쪽으로 밀려난 형태로 나타난다.
Fig. 11(c)는 ‘k’ 입력의 마지막 단계로써, 사용자는 Fig. 11(b) 단계의 ‘k’ 위치에서 그리드 포인터 위치로 ‘k’를 이동시키기 위해 위 또는 아래로 키 ‘k’를 이동시킬 수 있다. Fig. 11(c) 는 위로 ‘k’ 를 이동하는 것을 나타낸다.
이와 같이, ‘e’ 및 ‘y’ 에 대해서도 동일한 과정을 통해 패스워드 입력이 진행되며 마지막 패스워드 ‘y’ 를 사용자 그리드 포인터 위치로 이동 후 입력하면 패스워드가 완성된다.
5. 성능 평가
우리는 제안한 기법을 기존의 기법과 안전성 및 사용자 편의성 측면에서 비교 및 평가하기 위해 기존의 QWERTY 기반 보안 키보드를 포함한 ABC기반, 터치&슬라이드, 4색 기반, 랜덤 보안 키패드를 사회공학적 공격 기법에 대한 안전성 측면에서 엿보기, 레코딩, 스머지, 그리고 패스워드 추정 공격에 대해 비교하였다. 또한 사용자 편의성 측면에서 패스워드 등록 편의성, 로그인 절차 편의성, 기억의 용이성, 입력 오류 발생율, 입력속도, 그리고 로그인에 걸리는 총 시간을 기준으로 하여 상호 비교, 평가하였다. 평가에 사용된 기법들은 안드로이드 킷캣 이상의 모바일 기기에서 실행이 가능하도록 제작하였고 내부 보안 알고리즘을 제외하고 레이아웃을 기준으로 하여 제작 테스트하였다.
5.1 안전성
다음의 Table 1은 엿보기, 레코딩, 스머지, 그리고 패스워드 추정 공격에 대한 안전성을 기존의 기법과 비교한 비교표이다.
Table 1.(0 to 5, 0: None 1: Low, 2: Low-moderate, 3: Moderate, 4: Moderate-plus, 5: High)
위의 Table 1은 기존의 QWERTY 기법을 기준으로 하여 직 간접 공격에 대한 공격 안전성을 비교한 비교표이다. 3을 기준값으로 하여 안전성을 높고(4,5) 낮음(1,2)에 따라 구분하였다. 표에 의하면, QWERTY 보안 키패드 기법은 사용자와 공격자 모두 키 입력을 확인할 수 있다는 점에서 최근의 사회 공학적 공격에 취약(3점)하다. ABC기반 기법의 경우, 키의 배열 변경 확률이 조금 더 높은 것 이외에 QWERTY 기법과의 차이점은 없으며 역시 사회공학적 공격 기법에 취약(3점)하다. 그러나 이 기법은 엿보기, 레코딩 공격과 같은 직접적인 영상 획득을 통한 공격에는 취약하나 스머지, 센서 값을 통한 암호 추정과 같은 류의 간접적인 암호 획득 시도에는 QWERTY 에 비해 조금 더 강인(4점)하다. Touch&slide 기법의 경우 키 배열 복잡도 및 표시 개체 수가 QWERTY, ABC에 비해 현저히 적어 직접 공격에 매우 취약(1점)하다. 그러나 간접 공격의 경우, 스머지 공격 및 센서 값을 이용한 암호 추정에 대해 키패드 기반 보안 기법(3점)에 비해 경우의 수가 적어 QWERTY 및 ABC 기반에 비해 상대적으로 취약(2점)하다. 4-color 기반 기법의 경우, 입력 키 값의 노출을 줄여 QWERTY, ABC, Touch&slide에 비해 입력 화면의 일부 노출으로는 입력 키를 추정하기 어렵게 하였다. 따라서 직접 공격에는 앞의 기법들에 비해 일부 강인(4점)한 특성을 갖는다. 그러나 간접 공격으로 인한 패스워드 추정에는 대응 요소가 없어 QWERTY, ABC 기법과 동등한 수준의 취약점(3점)을 갖는다. Random 기법의 경우 키 배열의 조합과 속임수 키를 사용하여 간접 공격에 대해 ABC 기법과 유사한 확률적 안전성(4점)을 확보하였다. 그러나 직접 공격의 경우 QWERTY, ABC 기법과 안전성면에 차이는 없다(3점).
제안 기법의 경우 그리드 포인터와 패스워드의 두 비밀정보의 조합과 순환식 키패드의 적용으로 직접 공격시 노출되는 입력 키 정보의 추정에 따르는 복잡도가 증가하며, 간접 공격의 경우에도 순환식 키패드시작 지점을 알아야 하는 등의 확률적 복잡성으로 인해 패스워드 추정 확률이 기존의 4-color 와 random기법의 확률적 안전성(4점)에 비해 현저히 낮아지는 효과가 있다. 또한 그리드 포인터의 위치가 노출되지 않는다면 입력을 위한 경우의 수가 증가하므로 직·간접 공격에 대해 기존의 ABC 및 random의 안전성(4점) 대비 높은 안전성을 갖게 된다. 따라서 순환식 키패드의 키 좌표와 그리드 포인터의 좌표를 모른다는 가정 하에 제안 기법은 안전하다고 할 수 있어 조건부 안전성(5점)을 갖는다.
5.2 사용자 편의성
다음의 Table 2는 패스워드 등록 편의성, 로그인 절차 편의성, 기억의 용이성, 입력 오류 발생율, 입력 속도, 그리고 로그인에 걸리는 총 시간을 사용자 편의성 측면에서 기존의 QWERTY 기법을 기준(3점)으로 하였을 때 상호 편의성을 비교한 비교표이다.
Table 2.(0 to 5, 0: None 1: Low, 2: Low-moderate, 3: Moderate, 4: Moderate-plus, 5: High)
위의 Table 2에 의하면 QWERTY 기법에 비해 ABC 기법의 경우 다른 부분은 동일하며 Typing speed 부분에서만 낮은 결과(2점)를 보인다. 이는 사람의 습관에 의한 것으로 QWERTY 기반 키패드에 익숙한 사람이 ABC 형태의 배열에서 키를 입력하는 속도는 상대적으로 느리기 떄문이다. 따라서 로그인 절차에 소비되는 시간이 QWERTY 기반에 비해 더 걸리게(4점) 된다. Touch&slide 의 경우 입력 방법 절차에 있어 슬라이드를 이용한 이동이 많아 암호 기억에 대한 부분을 제외한 대부분의 항목에서 QWERTY 대비 낮은 수준의 사용자 편의성을 보인다. 입력 속도 부분에서는 입력을 위해 슬라이드를 하는 특성상 입력의 속도가 기존보다 현저히 낮아질수 밖에 없다(1점). 그러나 입력 오류율 부분에서는 입력을 위한 선택지가 기존의 키패드에 비해 적으므로 오류 또한 낮다(1점). 4-color 기법은 색 정보를 이용하는 것 이외에 다른 점이 기존의 QWERTY 및 ABC 대비 없으므로 동일한 결과(3점)을 갖는다. Random 기법의 경우 QWERTY 구조에서 4가지로 변형되는 키 배열로 인해 입력 속도 및 로그인 절차에 QWERTY, ABC, 4-color 대비 약간의 시간이 더 소비(4점)된다. 제안 기법의 경우 순환 키 및 그리드 포인터의 적용으로 입력시간이 증가하게 되며 이는 ABC 기법의 입력 속도, 로그인 절차와 유사한 수준(4점)으로 나타난다. 또한 기존의 패스워드만 기억하는 형태에서 그리드 포인터의 좌표를 추가적으로 기억해야 하는 부분이 있어 기존 기법들에 비해 기억해야할 부분이 많아 낮은 결과(2점)를 보인다. 입력 오류 부분에 있어 Touch&slide 기법과 유사한 결과(1점)를 보이는데, 이는 제안 기법이 Touch&slide 와 유사한 입력 방식을 채택하고 있기 때문이다. 패스워드 등록시 편의성 면에서도 패스워드를 등록하는 절차에 순환키를 사용하며 그리드 포인터를 설정 과정이 포함되어 있어 기존 대비 낮은 결과(2점)를 보인다.
6. 결 론
본 논문에서는 기존의 보안 키패드 및 보안 입력 기법의 취약점을 개선한 순환키가 적용된 그리드 포인터 기반 보안 키패드 입력 기법을 제안하였다. 안전성 및 사용자 편의성 비교 결과 제안하는 방법은, 기존의 QWERTY, ABC, Touch&slide, 4-color, Random 키패드 입력 기법에 비해 상대적으로 엿보기, 레코딩, 스머지 및 패스워드 추정에 대해 높은 보안 안전성을 보이며, 높은 안전성에 비해 사용자 편의성 면에 있어서도 비교적 이해하기 쉬운 사용방법과 함께 포인터 그리드의 적용으로 입력 오류를 최소화 하였으며 기존의 문자 입력 기반 패스워드 기법이 갖는 사용자 편의성에 비해 입력 시간을 제외하고는 비교적 양호한 결과를 보인다. 향후 연구로써 우리는 최근 발생하는 다양한 형태의 휴먼 에러 기반 공격에 대응하는 비접촉식 스마트 기기 사용자 인증 기법을 제안하고자 한다.
References
- H. Sun, S. Chen, J. Yeh, and C. Cheng, "A Shoulder Surfing Resistant Graphical Authentication System," IEEE Transactions on Dependable and Secure Computing, Vol. PP, Issue 99, pp. 1, 2016.
- T. Takada "FakePointer: An Authentication Scheme for Improving Security against Peeping Attacks using Video Cameras," Proceeding of International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies, pp. 395-400, 2008.
- A.J. Aviv, K. Gibson, E. Mossop, M. Blaze, and J.M. Smith, "Smudge Attacks on Smartphone Touch Screens," Proceeding of USENIX Conference on Offensive Technologies, pp. 1-7, 2010.
- L. Cai and H. Chen, "TouchLogger: Inferring Keystrokes on Touch Screen from Smartphone Motion," Proceedings of the 6th USENIX Conference on Hot Topics in Security, pp. 9-9, 2011.
- E. Miluzzo, A. Varshavsky, S. Balakrishnan, and R.R. Choudhury, "TapPrints: Your Finger Taps Have Fingerprints," Proceedings of the 10th International Conference on Mobile Systems, Applications, and Services, pp. 323-336, 2012.
- Y. Lee, "An Analysis on The Vulnerability of Secure Keypads for Mobile Devices," Journal of Korean Society for Internet Information, Vol. 14, No. 3, pp. 15-21, 2013.
- D. Lee, D. Bae, S. You, J. Chae, Y. Lee, and H. Yang, "An Analysis on the Security of Secure Keypads for Smartphone," Korea Institute of Information Security and Cryptology, Vol. 21, No. 7, pp. 30-37, 2011.
- ABC Keyboard, http://opendyslexic.org/2015/02/17/abc-keyboard/ (Accessed Jun., 20, 2016).
- H. Kim, H. Seo, Y. Lee, T. Park, and H. Kim, "Implementation of Secure Virtual Financial Keypad for Shoulder Surfing Attack," Korea Institute of Information Security and Cryptography, Vol. 23, No. 6, pp. 21-29, 2013.
- D. Jungnickel, Graphs, Networks and Algorithms, Springer, Berlin Heidelberg, 2013.
- D. Choi, C. Baek, and I. Chung, "Virtual Keyboard against Social Engineering Attacks in Smartphones," Journal of Korea Multimedia Society, Vol. 18, No. 3, pp. 368-375, 2015. https://doi.org/10.9717/kmms.2015.18.3.368
- I. Kim and J. Choi, "Secure Keypad against Password Guessing Attacks with Accelerometer and Gyroscope Sensors" Journal of Knowledge Information Technology and Systems, Vol. 9, No. 4, pp. 483-491, 2014.
Cited by
- 핀테크에서 터치 위치 차단을 위한 테트리스 모양의 보안 키패드의 구현 vol.10, pp.8, 2016, https://doi.org/10.22156/cs4smb.2020.10.08.144