Top Coder RAW novel - Chapter (72)
탑 코더-72화(72/303)
# 72
잃어버린 코인
시스템 점검을 마친 엔지니어는 마치 얼음이 된 것 마냥 움직임을 멈추었다. 크라운 회장이 궁금함을 참지 못하고 물었다.
“뭐야, 정상화 된 거야?”
“그, 그런 것 같습니다.”
자원 이용 정보.
네트워크 현황.
시스템과 연결된 기기들의 상태.
그 모든 지표들이 정상 수치에 들어와 있었다. 그 말에 모니터에 집중하던 다른 참가자들도 하던 일을 내려놓고 상황에 귀를 기울였다. 크라운 회장이 한 번 더 물었다.
“정말이야?”
엔지니어가 고개를 끄덕이자 비서를 향해 버럭 소리를 질렀다.
“이 말이 사실인지 당장 바깥 상황 확인해봐.”
비서가 폰을 들어 확인 전화를 돌리는 사이 다른 엔지니어들도 각자의 시스템을 한 번 더 확인했다.
“호텔 예약 시스템 정상 작동합니다.”
“카지노 업장 모니터링 정상 작동합니다.”
“정산 시스템 정상 작동합니다.”
“환전 시스템 정상 작동합니다.”
······.
그렇게 수 개의 시스템이 정상이라는 보고가 올라왔다.
방어를 시작한 지 불과 20여분은 지났을까.
그 시간 만에 이뤄진 성과라고는 믿기 힘들었다. 그건 크라운 회장을 비롯한 카지노 관계자들만이 아니었다. 에이든이 자리에서 벌떡 일어나 엔지니어가 보고 있는 모니터에 고개를 들이밀었다.
“뭐야. 정말 정상입니까?”
“네. 여기 지표들 한 번 보세요.”
빨간색이 가득했던 화면을 녹색 빛이 가득 메우고 있었다. 흥분한 에이든이 폭포수처럼 말을 쏟아냈다.
“다른 침입 시도는 요? 한 번 끊겼다고 그 만 둘 놈이 아닌데. 이제 더 이상 공격시도도 없다는 말입니까?”
고동수가 살짝 손을 들며 말했다.
“그건 제가 설명해 드리겠습니다. 어차피 크라운 그룹에서 운영하는 모니터링 화면에는 나오지 않을 테니까요.”
고동수가 의기양양한 목소리로 말을 이었다.
“저희 ZONE 서비스는 OSI 레이어 7계층으로 오는 데이터를 전부 수집하여 분석. 비슷한 패턴의 요청은 자동으로 접속 거부 시킵니다. 덕분에 다른 IP로 공격시도를 해도 바로 막을 수가 있습니다.”
듣고 있던 헤나가 쓰고 있던 안경을 살짝 들어올렸다.
“100%의 확률이 아니면 기존 정상 접속을 차단할 위험이 존재하는데요.”
“그 위험은 승호님이 만든 자체 알고리즘으로 해결 했습니다.”
고동수의 시선이 승호를 향했다. 승호가 헤나를 쳐다보았다.
“어떻게 했는지 잔뜩 궁금하신 눈치인데··· 굳이 이 자리에서 자세한 설명까지 할 필요는 없을 것으로 보입니다. 아직 슬롯머신 취약점이 해결 되지 않았으니까요. 그것부터 해결해야 하지 않겠습니까. 회장님?”
승호는 크라운 회장을 보았다. 그러나 크라운 회장은 뭔가 탐탁지 않은 낯빛이었다.
“이게 이렇게 빨리 해결 될 일인가······.
승호가 살짝 한숨을 내쉬었다.
“카지노 입구에 쓰여 있더군요. 운도 실력이다. 회장님이 남기신 말이라는데.”
“흠. 흠흠.”
크라운 화장이 괜히 헛기침을 했다.
“그러나 이건 운이 아니라 기술입니다. 시내 소프트의 기술력. 기술력이 있기 때문에 빠른 시간 안에 해결 된 것입니다. 이런 뛰어난 기술력으로 시내소프트의 존 서비스는 선진 전자의 엔진 S에도 기본 탑재되어 나갑니다. 그 정도로 기술을 인정받았다는 뜻이지요.”
그 순간 승호는 놓치지 않았다. 크라운 회장이 선진이라는 두 글자에 반응하는 모습을.
“선진에서도 이 서비스를 쓴다는 말입니까?”
선진 전자.
그 한 단어면 충분했다. 선진이라는 두 글자 덕분에 크라운 회장의 표정이 밝아졌다. 승호는 왜 사람들이 대기업에 목을 매는지 알 것 같았다.
권위.
다른 말이 필요 없었다. 그 이름이 주는 권위에 사람들은 알아서 고개를 숙였다.
“그렇습니다.”
“흐음.”
그 사이 바깥 상황을 확인한 비서가 입을 열었다.
“더 이상 스피커에서 아무 소리도 들리지 않는 다고 합니다. 실제 예약 부서에서도 시스템 정상 접속 확인했습니다. 다른 업장 상황도 비슷하고요.”
현 상황에 대한 쐐기를 박는 말.
크라운 회장이 비서를 보며 말했다.
“그렇단 말이지.”
승호가 이번에는 운영진을 보며 말했다.
“체크포인트 우승. 이제 결정 된 거겠죠?”
운영진이 고개를 끄덕였다. 긴 일정이 끝나가고 있었다.
***
시상식은 휴식을 취한 후 하기로 했다. 승호는 크라운 회장을 비롯한 관련 엔지니어들과 함께 자신이 발견한 취약점 설명을 위해 별도의 장소로 이동했다. 내용은 아는 사람이 적을수록 좋기에 최소한의 인원만 대동했다. 빠르게 계약서를 작성하고 취약점에 대한 설명을 시작했다.
“먼저 현재 까지 제가 밝혀낸 슬롯머신 관련 문제는 두 가지입니다. 원격제어. 그리고 자체 조작.
앞서 보인 능력 덕분에 사람들은 귀를 쫑긋 세운 채 승호의 말을 경청했다.
“첫 번째 보고된 취약점은 두 가지 방법으로 예방 할 수 있습니다. 하나는 예외사항 처리 시 슬롯머신 프로그램 재 시작을 하지 않는 것입니다. 물론 이에 따라 관련된 많은 부분이 수정되어야 할 겁니다. 이 정도는 엔지니어 분도 알고 계실 테고.”
승호가 빠르게 말을 이었다.
“또 한 가지는 재 시작 시. 서버와의 통신 구조를 뜯어고치는 겁니다.”
승호가 관련 엔지니어를 보며 말했다.
“프로토콜의 오류 체크 과정이 아마 XOR 방식 일겁니다. 맞습니까?”
엔지니어가 고개를 끄덕였다.
“서버에서 던진 파라미터 전부를 각 섹터의 크기 별로 잘라서 XOR 한 결과를 서버 쪽 체크썸 결과 값과 비교해 정상 유무를 판단한다. 그것 자체는 큰 문제가 없습니다.”
듣고 있던 엔지니어가 손을 들었다.
“네 말씀하세요.”
“혹시 이번 대회에 저희 쪽 코드까지 공개가 된 건가요?”
“경험에 의한 추측입니다.”
모여 있던 크라운 그룹 측 엔지니어들이 서로 쑥덕거렸다.
“그게 경험으로 유추가 되는 거였나?”
“뭐, 정말 경험이 많다면 되지 않을까.”
“하, 하긴 될 수도 있겠지.”
“조용히 하고 일단 들어봐.”
함께 있던 고동수가 선망의 눈길로 승호를 보았다. 그리고 백채원을 보며 속삭였다.
“승호님이 이 정도야.”
백채원이 눈을 반짝 거리며 승호를 보았다. 백채원도 다른 엔지니어들과 비슷한 생각을 하고 있었다.
‘이게 추측으로 될 일인가.’
그런 생각이 들었다.
“그러면 계속 말씀 드리겠습니다.”
이어지는 설명을 엔지니어들이 경청했다.
가끔은 고개를 주억거리기도, 또 가끔은 탄성을 터트렸다.
그렇게 수 분의 시간이 흐르고.
“그러면 첫 번째 취약점에 대한 패치 설명은 이 정도에서 마치겠습니다. 이 정도면 엔지니어 분들도 충분히 패치를 만들 수 있을 거라 생각합니다. 다음으로 슬롯머신 자체조작 취약점 말씀 드리겠습니다. 사실 이건 간단합니다. 원인은 관리자 모드.”
이미 첫 번째 사안에 대해 신뢰를 쌓은 덕분일까. 승호의 말에 토를 다는 사람이 없었다.
“다들 관리자 모드가 뭔지는 아실 겁니다. 기기의 IP를 세팅하거나, 이름. 또는 화면에 표시해야 할 아이콘 등등 다양한 설정을 할 수 있죠. 여기 슬롯머신에도 관리자 모드가 있습니다.”
크라운 회장이 손을 들었다.
“잠깐. 그 관리자 모드에 진입하는 방법은 극비 사항입니다.”
승호가 빠르게 대답했다.
“세상에 극비는 없습니다. 털 릴 수 있느냐. 털릴 수 없느냐. 그 둘 중 하나 만 있을 뿐.”
그 말에 여기저기서 황당하다는 반응이 흘러나왔다.
“관리자 모드로 잭팟이······.”
“누군가 관리자 모드에 장난을 쳐 놨더군요. 특정 패턴으로 버튼을 누르면 잭팟이 터지게. 아마 회사를 퇴사 후에 한 몫 잡아볼 생각이었던 것 같은데······.”
승호가 빠르게 부연설명을 덧 붙였다.
“아 퇴사 후 이야기는 제 추측입니다. 어쨌든 그 모드 상에서 특정 패턴으로 버튼을 누르면 잭팟이 터지도록 되어 있었습니다. 전 그걸 찾아냈을 뿐이고요. 누가 왜 만들었는지. 앞으로 회장님께서 찾아보셔야 할 것 같습니다.”
그 말에 엔지니어들의 낯빛에 두려움이 스쳤다. 그 중 한 명이 버럭 소리를 질렀다.
“그 말. 책임질 수 있습니까? 지금 저희 엔지니어 전부를 사기꾼으로 모는 거나 마찬가지입니다.”
“전부는 아니고 한 명이거나 일 부 일겁니다. 그리고 책임질 수 있으니 말씀 드린 겁니다. 아까 보셨잖아요. 잭팟 터트리는 거.”
그 말에 흥분한 엔지니어가 입을 우물 거렸다. 그가 다시 입을 열려 할 때 승호가 말했다.
“베팅선택 버튼 두 번. 최대 배팅 버튼 한 번. 다시 베팅선택 두 번 다시 최대 베팅 두 번 후에 게임 시작 버튼을 연속으로 5번 누르면 됩니다.”
승호의 복잡한 설명에 크라운 회장이 다시 물었다.
“그, 그렇게 하면 잭팟이 터진다고요?”
“아마 그 프로그램이 설치된 기기는 전부 해당 될 겁니다. 확인해 보세요.”
크라운 회장의 표정이 사정없이 구겨졌다. 그리고 비서를 향해 말했다.
“당장 슬롯머신 엔지니어들 전부 모아놔. 오늘 안에 그 새끼 잡는다.”
목소리에 섞인 음습함에 엔지니어들이 살짝 몸을 떨었다.
***
일정이 끝나고 일행은 휴식을 취하기 위해 다시 방으로 돌아왔다. 스위트룸에 대회에 참가한 8명에 인솔자인 이정훈 까지.
총 9명이 한 방에 모였다.
그들의 시선이 일제히 한 곳을 향해 있었다.
“휴우······.”
승호가 긴 숨을 내쉬며 소파에 앉아 있었다. 체크포인트 대회에 이어 해킹 방어까지.
그리고 대미를 장식한 슬롯머신 취약점.
순식간에 상금 5억.
슬롯머신 패치로 수십 억.
ZONE 서비스 수출 까지 1타 3피를 만들어냈다. 백채원이 고동수를 보며 말했다.
“네 생각은 어떠냐?”
“뭐?”
“슬롯머신 취약점 발견. 어떻게 하신 것 같아?”
“······.”
“슬롯머신에는 따로 SSH 접근이 되지 않도록 막아 놔서 원격으로는 접속이 불가능 한 걸로 알고 있는데··· 어떻게 저런 취약점을 알아낸 걸까? 따로 시리얼 케이블 꼽아서 디버깅 한 것도 아니고.”
“승호님은 아이언 맨 이니까.”
“···뭐?”
“따로 디버깅을 할 필요도 없는 거야. 그냥 딱 보면 척 나오는 거지.”
황당한 대답이었지만 백채원은 자신도 모르게 고개를 끄덕였다.
-경험에 의한 추측입니다.
그 말 한 마디에 카지노 측 엔지니어들이 전부 고개를 끄덕였다. 그렇지 않고서는 설명이 되지 않았다. 고동수가 속삭이듯 중얼 거렸다.
“누나 원전 사건 기억나?”
고동수가 더 낮은 목소리로 말을 이었다.
“그때도 승호님이 나서서 결국 문제가 해결 됐었잖아. 이번 슬롯머신도 비슷한 거 아닐까?”
둘이 대화를 나누는 사이 지이잉 소리와 함께 승호의 핸드폰이 진동음을 토했다.
번호를 확인해 보니 한국에서 온 전화.
황호근의 전화였다.
“네. 사장님.”
전화를 받자마자 황호근이 놀란 목소리로 물었다.
-강승호 너··· 거기서 도대체 무슨 일을 벌인 거야.
“네?”
-크라운 그룹이라고 카지노 회사에서 ZONE 서비스 이용문의를 해왔다.
“아··· 뭐. 많은 일이 있었습니다.”
-거기만이 아니다. 비낸스라고 세계 최대 코인 거래소에서도 연락이 왔어. ZONE 서비스 이용 계약을 맺고 싶다면서.
“비낸스요?”
어렴풋이 생각이 났다. 아마 크라운 회장 옆에 있던 남자가 비낸스 사장 장민이라고 하는 것 같았다.
순간.
삐이익.
벨을 누르는 소리가 들렸고.
직원이 나가서 문을 열자 익숙한 얼굴이 문밖에 서 있었다.
“비낸스 CEO 장민입니다. 혹시 강승호씨 만날 수 있을까요?”
“CTO님 여기 비낸스 CEO라는 분이 찾아오셨습니다.”
그 말에 승호가 자리에서 일어났다. 방금 전 받았던 전화에서 들은 이름에 호기심이 생겼다. 승호가 문 앞으로 가자 말끔한 정장 차림의 장민이 악수를 청했다.
“우승 진심으로 축하드립니다.”
“감사합니다.”
“혹시 따로 이야기를 나눌 수 있을까요?
“지금은 제가 조금 바빠서 따로 시간을 내기에는 좀······.”
장민이 고개를 숙이며 귓속말을 전했다.
“50억. 정도 생각하고 있습니다.”
승호가 살짝 고개를 끄덕였다.
“피곤하지만 이야기나 한 번 들어볼까요.”