Vulnerability
애플의 끝없는 실수?, 이어지는 버그 발생 ②
2017 12 05
  • Facebook
  • Twitter
  • Copy URL

iPhoneX에서 버그가 잇따라 발생하고 있다. 며칠 전, iPhone의 홈 화면이 계속 재부팅되는 리스프링(Respring) 버그가 전 세계 동시다발적으로 발생하였고, 이에 사용자들은 불편함을 호소했다.[1] 정확히, iPhone의 홈 화면 프로그램인 ‘스프링보드(SpringBoard)’가 계속 재실행되는 것으로, 바람개비 모양의 아이콘이 잠시 보이다가 얼마 안 있어 다시 정상작동 되었다. 이 버그의 원인은 iPhone에 설치된 앱이 시간과 날짜에 영향을 받아 처리하는 과정에서 문제가 생겨 발생한 버그였다.[2] 한편, 리스프링 버그 전에는 콜드게이트(Coldgate)라 하여, 추운 곳에 iPhone을 들고 나가면 iPhone의 터치가 먹통이 되는 버그가 발생했었다.[3] 본래, iPhone의 가이드라인에 따르면 iPhone은 0도부터 35도 사이에서 정상작동을 해야 했다.[4] 하지만 콜드게이트 버그는 해당 범위 안에 있음에도 낮은 기온에 영향을 받아 액정 앞면에 있는 광 센서에 따른 조명 변화에서 발생하는 버그였다.[5] 이같이 연이어발생하는 버그는 그것이 끝이 아니었다. 리스프링, 콜드게이트 그리고 다른 두 개의 버그와 함께 iPhone뿐만 아니라 버그는 Mac OS에서도 꾸준히 발생했다.

이미지를 불러오는데 실패했습니다.

콜드게이트가 발견되기 약 이틀 전, 애플의 몇몇 기기에서 버그가 발생하여 사용자들이 불편함을 겪고 있다는 커뮤니티 글이 올라왔다.[6] 그 글은 같은 증상을 겪고 있는 사용자들이 너도나도 댓글을 달고 트윗하면서 퍼져 나갔다.[7][8][9] 해당 버그가 발생한 기기는 아이패드, 아이팟 터치 그리고 iOS 11.1버전과 iOS 11.0.3버전의 iPhone 등에서 발생했다.[10] 이 버그는 사용자가 영문 알파벳 ‘i’를 입력하면 ‘i’가 느낌표(!) 혹은 물음표(?)와 같은 다른 문자로 자동 변환되었다.[11]
이 같은 현상이 발생하는 이유는 글자가 자동으로 수정되기 때문에 발생하는 것으로, 자동수정에서 'i'를 대체 할 때 우리에게 보이지 않은 문자가 i에 추가된다. 여기서 추가되는 문자, VS-16 문자는 이전 문자가 그림 이모티콘으로 사용되도록 하기 위한 것으로, 예를 들어 문자 'I'와 함께 사용하면 일부 응용 프로그램에서 'A ? '로 표시되었다.[] 이와 관련하여 Emojipedia의 Jeremy Burge 편집장은 블로그 게시물에 작성하기도 했다.[12]
해당 버그의 원인은 사용자의 입력을 자동으로 바꾸는 데 과정에서 생겨났다. 버그가 공개되고 얼마 안 있어서 따라서 애플은 업데이트로 문제를 해결하였다. 하지만 애플이 적절한 패치를 하기 전까지는 설정에 있는 앱에서 일반, 키보드, 텍스트 대체로 들어가 글자 자동 변환 설정을 비활성화하여 해결하는 방법이 최선이었다.[13] 여기에서 언급되는 텍스트 대체 기능은 전체 문장이나 문구를 입력할 때, 사용하는 텍스트의 메시지 약어를 설정하는데 사용되는 기능이다.
글자가 자동으로 바뀌는 버그 외에도 하드웨어적인 문제도 발생했었다. 출시된 지 얼마 되지 않은 iPhoneX에서 화면 액정 사이드에 초록색 줄이 생기는 결함이 발생한 것이다.[14][15] 이는 OLED 디스플레이가 분리된 결함으로 추측되며, 많은 사용자가 iPhone을 다시 시작하거나 초기화했음에도 화면의 오른쪽이나 왼쪽을 따라 녹색 선이 계속 나타났다고 한다.[16] 이 녹색 선의 원인은 앞서 얘기한 것처럼 iPhone X의 OLED 디스플레이가 분리되면서 발생한 것으로 추측했다.[17] 이번 iPhone X에서 사용되는 디스플레이는 새로운 다이아몬드 서브 픽셀 패턴을 가지고 있으며, 녹색 하위 픽셀을 기준으로 빨간색과 파란색이 번갈아 나타나는 구조다. 하지만 이 디스플레이에 전기적 결함이 발생하면서 전압이 라인의 모든 녹색 하위 픽셀로 흐르게 되고, 화면 상 녹색 선이 보이게 된 것이다. 즉, 디스플레이의 가장자리에 몇 줄의 픽셀로 잘못된 전압을 보내어 발생한 현상이라는 것이다.[18]
사실, 이 같은 버그는 iPhone에서 처음 발생하는 것은 아니었다. iPhoneX에서 사용되는 OLED 디스플레이는 작년에 삼성의 갤럭시 S7에서 사용되었고[19], 이와 비슷한 사례로 디스플레이에 핑크 라인이 보였던 적이 있었다. 삼성은 이 문제를 하드웨어 오류로 인정하였고, 이 오류가 발생한 기기를 대체하기도 하였다. 반면, 애플은 삼성처럼 해당 오류를 인정하고 이에 대해 얘기를 하진 않았다. 그렇다면, 어떻게 녹색 라인은 어떻게 해결했을까. 이는 소프트웨어 문제가 아닌 하드웨어 문제로 애플 매장에서 교환을 통해 해결할 수 있다고 한다.
버그는 iPhone 뿐만이 아니다. 며칠 전, MacOS High Sierra에서 비밀번호와 관련하여 권한상승을 할 수 있는 버그에 관해 얘기한 적이 있다.[20] 그 때 다뤘던 3개의 버그 중 누구나 할 수 있는 공격인 Lemi Orhan이 찾은 버그는 도구도 필요 없고, 누구보다 빠르게 루트권한을 얻을 수 있는 방법이었다. 해당 버그는 컴퓨터에 로그인하기 전, 사용자 이름과 암호를 묻는 메시지가 뜰 때, 사용자 이름을 ‘root’로 입력하고, 비밀번호 창을 비워둔 후, ‘unlock’을 두 번 누르면 즉시 패스워드 칸에 패스워드가 가득 차게 되며 암호 없이 로그인되는 것이었다.[21]
이 버그가 발견되고 약 18시간 만에 애플은 해당 버그를 급하게 패치 하였다.[22] 하지만 너무 성급했던 것일까. MacOS를 업데이튼 했음에도 다시 ‘root’ 버그가 발생한다는 제보가 있었던 것이다. 더욱이, 업데이트한 후, 재부팅을 하지 않으면 해당 패치를 다시 설치하더라도 여전히 루트 버그는 존재하였다. 그렇다면 해결된 이는 뭐란 말인가. 이런 효과 없는 패치에 대해 먼저 언급한 사용자는 결국 ‘재부팅’을 하고 나서야 마침내 루트 버그를 해결할 수 있었다고 한다.[23]
문제으 핵심은 애플의 보안 업데이트한 후, MacOS 시스템은 사용자에게 재부팅 하라고 요구하지 않는다. 더욱이 우리의 컴퓨터는 쉽사리 꺼지지 않고, 몇 날 며칠, 몇 달 동안 켜져 있는 사람들도 상당하다. 결과적으로 애플은 언급을 안 했지만, 업데이트 패치 후에는 재부팅이 필요하다는 것이다. 그렇다면 이 버그를 수정한 팀은 단순히 기계적으로 패치한 것이 아닐까란 생각이 들기도 한다.
이처럼 최근 들어 애플 제품에서는 연이은 버그가 나오고 있다. 문제는 앞서 얘기한 모든 버그가 단 한달 사이에 일어난 것이란 거다. 더욱이, 패치를 했음에도 혹은 해결책을 구하지 못하는 상황을 보면 이전에 완벽함을 추구했던 잡스의 철학에 흠이 생기는 것 같아 안타까운 마음마저 든다. 물론, 팀쿡의 경영 방식이 나쁘다거나 혹은 애플 제품의 기기가 나쁘다는 것은 아니다. 하지만 최근 들어 애플의 구멍 숭숭 뚫린 제품이나 변해가는 것을 보면 팀쿡은 어떤 시대에 맞춰가느라 이렇게 급하게 맞춰나가려는 것인지 의문이 든다. 겉모습은 더욱 화려해지고, 더 좋은 기능과 스펙을 담고 있지만, 기본에 충실했던 이전의 애플이 조금은 그리워지는 것 같다.

유성경 yuopboy@grayhash.com