Top Coder RAW novel - Chapter (51)
탑 코더-51화(51/303)
# 51
터지면 죽는다
청와대 지하벙커.
대통령을 비롯해 각 비서관들이 자리에 앉아 초조한 눈빛으로 스크린을 보고 있었다. 안보실장 조장수가 방금 들어온 보고에 침음을 흘렸다.
“악성코드 발견. 현재 조치 중에 있습니다.”
“···사실입니까?”
비서관이 고개를 끄덕였다. 살짝 눈을 감았다 뜬 안보실장이 앞에 놓인 버튼을 눌렀다. LED에 불이 들어오며 마이크가 켜졌다.
“안보실장입니다. 방금 악성코드 발견 됐습니다.”
스크린을 보고 있던 대통령이 몸을 돌렸다.
“조치는?”
“현재 진행 중입니다.”
홍상훈.
현 대한민국 대통령.
안보실장의 보고에 대통령의 안색에 초조함이 더해졌다.
“비서실장.”
“네.”
“원전 정지 명령 준비하세요.”
그 한 마디에 비서실장의 안색이 딱딱하게 굳어졌다.
“대통령님······.”
“일단 정지 시키고. 생각 합시다. 이대로 있다가 사고가 터지면 그 혼란을 어떻게 감당할 겁니까.”
안보실장도 나섰다.
“진행 중이니. 곧 해결 할 수 있을 겁니다. 정지시킨다고 해서 문제 해결이 되지 않습니다. 해커들의 공격에 놀아나는 꼴 밖에 되지 않는 겁니다.”
“만약 그 사이에 저들이 뭔가를 한다면.”
침묵.
누구도 침묵을 깨지 못했다. 비서실장이 겨우 입을 열었다.
“만약 갑자기 정지를 시킨다면 이 문제가 외부로 흘러나갈 가능성이 높아집니다. 전력 수급에 문제가 생길 테니까요. 그러면 추후 국정운영에 큰 부담이 될 겁니다.”
대통령이 비서실장의 말을 막았다.
“만약 해결하지 못했을 때는 어떻게 되는 겁니까?”
비서실장이 입술을 꽉 깨물었다. 안보실 1차장이 의견을 냈다.
“우선 자신들을 체르노빌 피해자라 주장하는 놈들과 협상을 벌이고 있습니다. 최후에 그들에게 협상금을 지급하는 방법도 있습니다. 무작정 정지 명령을 내리면 혼란만 가중 시킬 위험이 높습니다.”
대통령의 목소리가 한 없이 낮아졌다.
“피해는 최소화 할 수 있겠지요.”
또 다시 조장수에게 연락이 도착했다.
“추거 악성 코드 발견 됐습니다······.”
국정원장이 주먹으로 책상을 ‘탕’ 두드렸다.
“발전소 보안 책임자 누구야! 내부 망이 이렇게 쉽게 뚫려도 되나!”
그러나 의미 없는 메아리 일 뿐이었다. 대통령이 안보 실 1차장에게 말했다.
“정지 명령 내리세요.”
대통령의 결심에 다른 이들의 안색이 딱딱하게 굳어졌다. 그 말에 비서실장도 고개를 끄덕일 수밖에 없었다.
***
월성 원자력 발전소 주제어실.
승호는 각 시스템에 노트북을 연결해 가며 악성코드를 찾아 다녔다.
“DSC 시스템 0X012FF78 주소에 악성 코드 확인됐습니다.”
승호가 찾으면 요원들이 재차 악성코드를 확인한다.
교차 확인 작업.
발전소라는 특성 상 교차 확인은 필수였다. 자칫 실수라도 하는 날에는 그 여파가 시스템이 셧 다운되는 수준으로 끝나지 않는다.
거대한 인명피해.
어쩌면 죽음을 눈앞에 마주해야 할 수도 있기에.
승호도 한 번 더 검증을 받아야 한다고 생각했다.
“PPS I/O 시스템의 112FXX197 주소에 하나 발견했습니다. 확인 부탁드립니다.”
승호가 또 하나의 악성코드를 발견했다. 그러자 다른 요원들이 승호가 말한 시스템에 달라붙어 교차검증을 진행한다. DSC에서 교차검증을 진행하던 요원들이 탄식 했다.
“DSC 0X012FF78 주소에 올라가 있는 스크립트. 악성 코드로 확인 했습니다······.”
우려 했던 일이 벌어졌다. 담당관이 깊은 한숨을 내쉬며 말했다.
“제거 까지 걸리는 시간은?”
“단순히 메모리에서 제거 시키는 수준이면 지금 바로 됩니다. 그러나 해당 악성코드가 다른 악성코드를 트리거 시킬 수 있어. 제거 까지 하나당 최소 10분 이상의 시간이 필요합니다.”
트리거.
하나의 일을 할 때 반드시 발생하는 다른 일을 뜻하는 말이었다. 악성코드를 그냥 죽여 버렸을 때 그걸 모니터링 하는 다른 악성코드가 실행 될 위험이 있었다. 다른 시스템 쪽으로 자리를 옮긴 승호가 몸을 돌렸다.
“제가 한 번 해보겠습니다.”
그러자 담당관이 승호를 멈춰 세웠다.
“시간이 없습니다. 승호씨는 먼저 악성 코드 감염여부 확인에 신경 써 주세요.”
“금방 끝납니다.”
승호는 능력을 마음껏 쓸 생각이었다. 그래도 모양새는 갖춰야 했기에 노트북을 연결하는 시늉은 했다. 그리고 DSC 시스템에 손을 얹고 0과 1의 세계에 간섭했다.
‘자칫 메모리에서 제거 시켜 버리면 참조하고 있던 다른 악성코드를 트리거 시킬 수 있으니까. 살아있다는 신호는 보내지만 아무런 일도 못하는 상태로 만들어 버려야 해.’
어차피 악성코드는 파일리스 형태.
곧 메모리에만 떠 있다는 말이었다. 그 0과 1의 세계에 간섭해 마치 식물인간처럼 만들어버릴 생각이었다.
살아있어도 살아 있는 게 아닌 상태.
승호는 하드웨어에 손을 대고 집중했다. 사람들은 불안한 눈빛으로 승호를 보았다.
담당관이 초조한 눈길로 승호를 보았다. 금방이라면 얼마의 시간을 말하는 것일까.
직원이 말한 10분은 아닐 것이다.
그럼 7분?
아니면 5분?
어쩌며 그보다 빠를 수도 있지 않을까.
약간의 희망을 가진 채 승호를 보았다. 만약 5분을 넘기면 다시 악성코드를 확인하는 작업에 전념시킬 생각이었다.
그렇게 3분쯤 지났을 때 승호가 자리에서 일어났다.
“일단 내부 로직 실행 막았습니다.”
순간 담당관은 말의 의미를 이해하지 못했다.
“네, 네?”
“말씀하신대로 다른 악성코드를 트리거 할 수 있어서. 메모리에서 제거 하지는 않고, 응답은 하되. 내부 로직 실행을 막았다는 말입니다.”
“아, 아니. 제 말은 그게 가능하냐는······.”
순간 이정훈이 담당관의 어깨에 손을 얹었다.
“담당관님 시간이 없습니다. 질문은 나중에.”
“아··· 알겠습니다.”
승호가 다시 다른 시스템으로 이동해 작업을 하는 사이.
직원들이 악성코드 분석을 시작했다. 그렇게 10여분쯤 흘렀을 때 DSC 시스템의 악성코드를 분석한 직원이 마른 침을 삼키며 말했다.
“저, 정말입니다. 응답신호는 오는데··· 내부 로직 실행은 안 되는 상태입니다. 메모리 덤프를 떠서 확인해 봤는데 run 함수를 실행하는 곳이 없습니다.”
죽어 있던 담당관의 안색에 희망의 빛이 떠올랐다.
***
청와대 지하벙커.
조장수가 전화기를 잡은 채 자리에서 벌떡 일어났다.
“뭐, 제거 했어?”
-네. 현재까지 3개 제거 했습니다. 전체 시스템 95% 확인. 앞으로 1시간 이내면 작업 완료 할 수 있을 것 같습니다.
“일단 알았다.”
흥분한 조장수가 대통령에게 말했다.
“제거 했답니다. 앞으로 1시간 이내에 작업 완료 할 것 같다고 합니다.”
“뭐?”
“파견된 요원에게서 온 정보입니다.”
대통령이 눈을 감고 두 손을 마주 잡았다. 조장수가 빠르게 보고를 이어나갔다.
“전체 95% 진행. 앞으로 1시간 이내에 작업 완료 예상입니다.”
앞으로 한 시간.
눈을 감고 있던 대통령이 번쩍 두 눈을 뜨며 말했다.
“한 시간이면 해커들이 말한 협상 종료 시간이잖아.”
“협상 팀에 최대한 시간을 끌어보라고 지시했습니다.”
대통령이 으득 이를 갈며 말했다.
“국정원장.”
“네. 대통령님.”
“어떤 놈들이 이런 짓거리를 벌였는지 꼭 밝혀내도록 하세요. 그리고 책임을 물어야 합니다.”
국정원장이 무겁게 고개를 끄덕였다.
그때.
비서실장의 핸드폰이 진동했다. 전화를 받은 비서실장의 얼굴이 사색이 되었다.
“대, 대통령님.”
홍상훈이 고개를 돌려 비서실장을 보았다.
벌써 수년간 알아 온 사람.
철의 심장을 가졌다고 알려진 그가 저런 표정을 짓는다는 건······.
불길함이 엄습했다.
“아까 내린 정지명령이··· 수행되지 않고 있답니다.”
“뭐, 뭐?”
“수동 정지에는 시간이 소요되는데··· 만약 그때 공격이 들어오면······.”
털썩.
대통령이 의자에 주저앉았다. 대통령의 얼굴도 하얗게 탈색되어 있었다.
***
담당관은 연신 시계를 힐끗 거리며 초조함을 감추지 못했다. 이정훈이 낌새를 눈치 채고 물었다.
“담당관님. 혹시 공유 안 된 정보가 있습니까?”
담당관이 입술을 꽉 깨물었다가, 다시 풀길 수차례.
이정훈이 한 번 더 채근했다.
“작은 것 하나도 문제를 풀 수 있는 단서가 될 수 도 있습니다. 더구나 강승호씨는 민간인입니다.”
“······.”
이정훈은 자신의 직감이 시키는 대로 말했다.
“문제가 생겼군요.”
이정훈이 살짝 목소리를 높였다.
“뭡니까? 무슨 내용입니까?”
담당관이 안색을 굳히며 말했다.
“일에 방해가 될 수도 있습니다.”
“방해요? 무슨 내용이기에 방해가 된다는 겁니까.”
담당관이 주먹을 쥐었다 펴며 말했다.
“이미··· 늦었습니다.”
늦었다.
이정훈은 그 말에 내포된 불길함을 알아차렸다. 이정훈이 자리에서 벌떡 일어나며 고함을 질렀다.
“담당관 당신!”
“나라가 없으면 국민도 없습니다.”
“그건 당신들 사정이고!”
갑자기 벌어진 말다툼에 직원들이 시선이 둘에게 쏠렸다.
“해결 하면 아무런 문제없이 지나길 일입니다.”
담당관은 차분히 말을 이어나갔다.
“당장 사고가 터진다고 해도. 대피할 시간은 있습니다. 원자로가 당장 폭발하는 것도 아니니까요.”
“지금 그걸 말이라고 합니까!”
“국가의 위기에 국민이 최선을 다하는 건 당연한 의무. 어차피 이제 선택은 두 가지 밖에 남지 않았습니다.”
으드득.
이정훈이 이를 갈며 담당관을 노려보았다.
순간.
드르륵.
거리며 담당관의 핸드폰이 진동했다. 황급히 핸드폰을 잡은 담당관의 얼굴이 핏기 한 점 없이 하얗게 탈색되었다.
“앞으로 10분. 협상 팀에 최후통첩 날아 왔습니다······.”
“당장 정지 명령 내리세요. 원전 정지하고 요원들 대피 시키라고!”
담당관이 힘없이 중얼 거렸다.
“정지는 안 됩니다······.”
승호는 빠르게 작업을 진행해 나갔다.
지금까지 경험한적 없는 거대한 0과 1의 세계.
그 세계에 빠져 있다 보니 시간 가는 걸 느낄 새가 없었다. 새롭고 신기한 정보들이 가득했다.
그 정보들이 머릿속의 지식과 연결되며 새로운 깨달음을 얻어가는 과정은 그 어떤 쾌락 못지않았다.
술.
담배.
게임.
육체적 쾌락.
그 무엇과도 비교하기 힘들었다. 영원히 이 세계 안에서 머리를 통해 들어오는 지식의 바다에서 헤엄치고 싶은 생각마저 들었다. 순간 누군가의 고함소리가 귓가를 파고 들었다.
“승호씨. 강승호씨!”
이정훈이 승호의 어깨를 흔들어 댔다.
“피해야 합니다. 앞으로 5분 뒤 안전을 위해 시설 폐쇄 조치가 시작 됩니다.”
“네?”
이정훈의 얼굴에는 다급함이 가득했다.
“시설 폐쇄가 시작되면 안에서 밖으로 나갈 수 없습니다. 방사능 유출을 막기 위한 조치가 시작되는 거라고요.”
그러고 보니.
귀를 찢는 사이렌 소리가 들리고 있었다.
-실제 상황입니다.
-현 근무자들은 안전지대로 이탈해주시기 바랍니다.
“아직 다 해결 하지 못했는데······.”
“이 정도면 됐습니다. 일단 나갑시다. 여기 계속 있다가는 죽을 수도 있습니다.”
죽을 수도 있다.
그 말에 승호가 마른 침을 삼켰다.