글쓴이 보관물: Toughman

유니티(Unity) 보안 취약점 관련 조치

개요

10월 초쯤 Unity에서 다음의 제목으로 메일이 왔습니다.

Unity 플랫폼 보호: 게임과 앱 보호를 위해 즉시 조치가 필요합니다

내용을 확인해 보니 Unity 2017.1 이상 버전으로 Android 앱을 개발, 배포한 경우 문제가 되므로 조치하라는 내용이었습니다. 게임 개발 엔진에 취약점이 발견되어 메일까지 보냈다는 것은 심각한 문제가 아닐까하는 생각이 들었습니다. 그러나 아직 피해 사실이 보고 되지 않았다는 내용을 보고 당장 조치는 필요하지 않겠다고 생각했습니다.

다량의 메일

얼마 지나지 않아 메일이 많이 왔습니다. 좋지 않은 징조라고 생각했는데 다음과 같은 제목으로 메일이 왔습니다.

조치 필요: 앱이 Google Play 정책을 준수하지 않음

Unity로 제작해서 Google Play 에 배포한 앱과 게임이 몇 개 있었는데 모두 같은 내용이었습니다. 구글에서도 심각한 문제라고 생각하고 조치를 취한 것 같았습니다.

문제해결

이번 문제와 관련된 사항과 조치 방법은 이곳에서 확인하실 수 있습니다. 요약하자면 Unity 패치를 받아 업데이트 한 후 프로젝트를 다시 빌드해서 배포하라는 것 입니다.

필자는 2022.3.62f1 버전에서 빌드해서 배포 했습니다. Unity Hub 을 실행해 보니 해당 버전의 패치가 있었습니다. 2022.3.62f2 버전으로 업데이트 했습니다. 그 다음 프로젝트를 업데이트 된 버전으로 열었습니다. 이전 버전은 보안 문제가 있다는 메시지가 나타나서 사용하면 안된다는 것을 알 수 있습니다.

모든 프로젝트를 새로운 버전으로 변경
모든 프로젝트를 새로운 버전으로 변경

버전 코드, 번호를 업데이트 한 후 Google Play 올렸습니다. 앱이 업데이트 된 것을 확인하고 혹시 몰라서 문제가 해결되었다는 알림이 올 때까지 기다렸습니다. 최초로 다시 올린 앱이 문제가 해결되었다는 알림을 받고 경고가 사라진 것을 확인 후 나머지 것도 조치했습니다.

느낌 점

게임 엔진에 보안 문제가 있고 이것을 명시적으로 알리고 조치를 취하도록 한 것은 잘한 것이라고 생각 들었습니다. 방치하거나 숨겨서 문제가 되는 것 보다는 먼저 대응하는 것이 Unity, 개발자, 사용자 모두에게 도움이 되는 것이라 생각되었습니다. 처음 겪는 일이다 보니 좀 황당하기도 했습니다. 하지만 조금 생각해 보니 게임 엔진도 일종의 프로그램이라서 그럴 수 있겠다는 생각은 들었습니다.

다만 개발자/개발사 입장에서 보면 번거로운 작업임에는 분명했습니다. 필자의 경우 규모 자체가 그리 크지 않고 간단한 게임들이라서 조치가 비교적 간단했던 것 같습니다. 그런데 이것도 개수가 많아지니 꽤 번거로운 작업이었습니다. 규모가 큰 프로젝트의 경우 조치하기가 꽤 어려울 수 있겠다는 생각이 들었습니다.

정말 많은 앱과 게임이 영향을 받았을 것으로 생각되는데 게임 엔진 개발사에서 조금 더 주의를 기울여 주었으면 좋겠습니다. 모든 것을 완벽하게 만들 수는 없지만 수 많은 개발자/개발사에 영향을 주는 중요한 부분 만큼은 만전을 기해 주었으면 좋겠습니다.

ipTIME Extender-A6T

ipTIME Extender-A6T 구매는 개인적인 기호로 선택했습니다. 별도의 지원을 받은 사실이 없습니다.

개요

미니 PC를 무선인터넷으로 연결하여 사용하고 있었습니다. 인터넷 공유기와의 거리가 그렇게 멀지 않다고 생각했는데 무선 품질이 좋지 않았습니다. 뭔가 방법이 없나 알아보다가 Wi-Fi 영역을 확장할 수 있는 기기가 있다는 것을 알게 되었습니다.

처음에 고려 했던 사항

처음에는 공유기를 구입하여 무선 AP 형태로 사용하려고 했습니다. 생각보다 설치 방법이 복잡하고 단순히 중계 역할만 하도록 하는 것은 낭비라는 생각이 들었습니다. 그러다가 ipTIME Extender-A6T 을 보게 되었고 원래 사용하던 무선 공유기 제품이 ipTIME 이라서 고민 없이 선택했습니다.

제품 선택

ipTIME Extender 는 몇 가지 종류가 있습니다. 필자가 사용하는 공유기가 제공하는 무선 스펙과 가장 잘 맞아 ipTIME Extender-A6T 를 선택했습니다. 나중을 위해서 더 성능이 좋은 것을 구매하셔도 될 것 같습니다.

상자 개봉

제품을 받아보니 생각보다 상자가 크다고 느껴졌습니다.

ipTIME Extender-A6T 상자
ipTIME Extender-A6T 상자 앞면
ipTIME Extender-A6T 상자 옆면
ipTIME Extender-A6T 상자 옆면
ipTIME Extender-A6T 상자 뒷면
ipTIME Extender-A6T 상자 뒷면
ipTIME Extender-A6T 상자 옆면
ipTIME Extender-A6T 상자 옆면

개봉해 보니 구성은 간단했습니다. 본체에 플러그가 붙어 있고 별다른 케이블은 없었습니다. 벽면에 있는 전원에 바로 설치할 수 있는 점이 좋다고 생각이 들었습니다. 그러나 상황에 따라 플러그 자체가 본체에 붙어 있어서 불편할 수 있겠다는 생각도 같이 들었습니다. 그리고 크기가 좀 더 작았으면 좋겠다는 생각도 같이 들었습니다.

ipTIME Extender-A6T 본체
ipTIME Extender-A6T 본체
ipTIME Extender-A6T 전원 플러그 부분
ipTIME Extender-A6T 전원 플러그 부분

설치

동봉된 설명서를 보니 공유기의 WPS 버튼을 누르고 ipTIME Extender-A6T 의 WPS 버튼을 누르면 설치가 완료된다고 기재되어 있었습니다. 공유기의 WPS 버튼을 딸깍 소리가 나도록 누르고 ipTIME Extender-A6T 의 WPS 버튼을 눌렀습니다. 전면의 LED 가 몇 번 깜빡이더니 파란색으로 전환되면서 완료되었습니다. 설치가 간편한 것도 큰 장점이었습니다.

이 방법으로 설치되지 않더라도 다른 방법으로도 가능하니 큰 문제는 없을 것 같습니다.

성능

거창하게 프로그램 같은 것을 이용해서 테스트 하지는 않았습니다. 휴대전화의 WiFi 강도가 세지고 실제로도 끊김 없이 잘 되었습니다. 설치 전 방 구석에서는 아예 WiFi가 잡히지 않았는데 같은 지점에서 테스트 해 보니 잘 되었습니다.

무선으로 연결된 미니 PC에서 원격 데스크톱을 통해 원격지에 있는 PC에 접속해서 작업을 했습니다. 설치 전에는 화면 전환이나 키보드 입력의 지연이 있어서 매우 답답했습니다. 상태가 좋지 않을 때는 거의 작업이 불가능 할 정도였습니다. 하지만 설치 후 별다른 불편 없이 작업할 수 있었습니다.

비싸지 않은 가격으로 그 동안의 고민과 짜증을 한번에 날려버리도록 해준 좋은 제품이라 생각됩니다. WiFi 신호가 약하거나 불안정해서 고민이셨던 분들은 이런 종류의 제품을 적절하게 이용하시면 많은 도움이 되시리라 생각됩니다.