공동현관 비밀번호를 아는 침입자

1화: 부서지지 않은 현관문
오세경은 공동현관문이 멀쩡한데도 침입 신고가 세 건 들어온 이유를 확인해야 했다.
첫 번째 신고는 102동 7층의 우산 한 개가 사라졌다는 내용이었다. 두 번째는 104동 2층 앞에 놓인 슬리퍼 한 짝이 없어졌다는 민원. 세 번째는 엘리베이터 앞에 두었던 유모차 덮개가 다른 층에서 발견됐다는 전화였다. 문은 부서지지 않았고 세대 안으로 들어간 흔적도 없었다. 입주민들은 관리실장인 세경에게 “공동현관 비밀번호를 바꿔 달라”고 요구했다.
“비밀번호를 바꾸면 택배와 방문자도 새 번호를 알아야 해요. 먼저 출입 로그를 확인하겠습니다.”
“그럼 누가 들어왔는지 나와요?”
“입력 시각은 나오지만, 누가 눌렀는지는 알 수 없습니다.”
입주자 대표 윤정미는 팔짱을 끼었다. “카메라 있잖아요. 기록하고 맞춰 보면 되죠.”
세경은 카메라 영상을 아무나 볼 수 없다고 설명했다. 공용부 영상은 보존 기간이 지나면 자동 삭제되고, 사건 확인 목적과 범위를 먼저 정해야 했다. 주민들은 그 설명을 변명으로 받아들였다. 정미도 답답해 보였지만, 영상에 찍힐 주민들까지 생각해야 했다.
“그럼 오늘 안에 뭐라도 해야 해요. 어젯밤에는 우리 집 앞에 낯선 장갑 한 짝이 놓여 있었어요.”
세경은 민원을 접수하고 시간과 위치만 기록했다. 장갑은 입주민이 분실물 보관함에 넣어 둔 상태였다. 그녀는 장갑을 열거나 안쪽을 뒤지지 않았다. 물건을 훔치러 들어온 흔적인지, 누군가 떨어뜨린 건지 먼저 확인할 수 없었다.
관리실 보안 화면에는 공동현관의 카드 태그와 키패드 입력 시각이 나왔다. 새벽 2시 13분, 2시 14분, 2시 15분에 세 번 입력이 기록되어 있었다. 문은 매번 열렸다. 방문 예약 명부에는 해당 시각 방문자가 없었다. 세경은 출력물을 입주민 대표에게 보여 주지 않고, 사건 접수 번호만 메모했다.
“입력 기록이 있으니 비밀번호를 아는 사람이 들어온 거네요.” 정미가 말했다.
“입력된 사실만 확인됩니다. 비밀번호가 노출됐는지, 누가 눌렀는지는 조사해야 해요.”
그때 보안업체 기사 남경수가 장비 가방을 들고 관리실로 들어왔다. 키패드가 종종 입력을 두 번 받는다는 민원이 있어 점검을 예약했다고 했다. 그는 로그를 보자마자 얼굴이 굳었다.
“3회 연속 입력이면 사용자가 번호를 잘못 누른 것일 수도 있습니다.”
“문이 열린 로그도 있는데요.”
“입력 성공과 문 열림은 별개일 수 있어요. 도어 센서가 지연되면 다른 태그와 연결될 수 있습니다.”
세경은 그 가능성을 기록했다. 경수는 장비를 열어 키패드 접점을 점검했지만, 고장 흔적은 없었다. 그는 로그를 USB로 내려받으려 했고, 세경은 승인 절차를 먼저 밟자고 했다. 경수는 “제가 설치한 시스템이라 확인해도 됩니다”라고 말했지만, 계약서에는 관리실이 자료 열람을 승인하도록 되어 있었다.
“자료가 외부로 나가면 입주민 개인정보가 포함될 수 있어요. 필요한 시간대만 추출하죠.”
경수는 도구를 내려놓았다. “보안업체가 로그를 못 보면 뭘 고쳐야 할지 모릅니다.”
“입력 시각과 도어 상태만 보이게 추출할 수 있어요. 세대 호수는 가리고요.”
그는 불만스럽게 동의했다. 세경은 사고 접수 문서를 작성하고 정미의 확인을 받았다. 세대 내부 정보는 포함하지 않고, 공용현관 시간대와 방문 예약 여부만 적었다. 경수는 그 자료를 확인한 뒤 키패드 펌웨어가 일주일 전에 업데이트된 기록을 발견했다. 업데이트 요청은 보안업체 계정으로 되어 있었지만, 작업자 서명은 비어 있었다.
그날 오후, 102동 7층 입주민 한도윤이 관리실을 찾아왔다. 그는 새벽에 공동현관 비밀번호를 누른 사실은 있지만, 우산을 가져간 적은 없다고 했다. 귀가 시간이 늦어 번호를 누를 수밖에 없었고, 자신이 의심받는 것을 알고 있었다.
“저는 7층에 삽니다. 집 앞 물건을 훔칠 이유가 없어요.”
“누구도 당신이라고 말하지 않았어요. 출입 기록은 사람을 특정하지 않습니다.”
“그런데 단톡방에는 제 이름이 올라왔어요.”
세경은 주민 단체방을 확인할 권한이 없었다. 도윤은 캡처를 보여 주며 자신이 새벽마다 들어오는 사람이라 의심받고 있다고 했다. 세경은 그 캡처를 수사 자료처럼 보관하지 않았다. 대신 게시글 작성자에게 당사자 동의 없이 이름을 퍼뜨리지 말아 달라고 전달했다.
정미는 도윤의 설명을 듣고도 표정을 풀지 않았다. “그럼 네가 비밀번호를 다른 사람에게 알려 준 건 아니야?”
“택배기사에게 알려 준 적은 없습니다. 문 열어 준 적도 없어요.”
도윤은 동생을 돌보느라 밤늦게 귀가했고, 현관에서 기다리는 일이 많았다. 그가 키패드를 누른 시간과 우산이 사라진 시간은 겹쳤지만, 그것만으로 범인이라고 말할 수는 없었다. 세경은 그에게 입주민 개인정보와 관련된 불필요한 질문을 하지 않았다. “오늘 밤 귀가할 때 불편하면 경비실에 연락하세요. 함께 확인하겠습니다.”
그는 고개를 끄덕였지만, “저를 감시하는 건 싫습니다”라고 했다.
“당신을 감시하려는 게 아니라, 문 앞에서 어떤 일이 생기는지 확인하려는 거예요. 원치 않으면 동행하지 않겠습니다.”
도윤은 잠시 생각하다가 경비실 동행은 받아들였다. 그가 관리실을 나간 뒤, 정미는 세경에게 “이런 식으로 다 믿으면 아무것도 못 잡는다”고 했다.
“누구를 의심하느냐보다, 어떤 기록이 실제로 있는지부터 확인해야 합니다.”
“그럼 물건은 누가 가져갔는데요?”
세경은 대답하지 못했다. 기록에는 공동현관이 열렸다는 사실만 있었다. 문 앞에 놓인 물건이 언제 사라졌는지는 확인할 CCTV가 없었다. 단지 카메라는 엘리베이터 쪽만 비추고, 각 세대 문 앞은 찍지 않았다.
저녁 교대 시간, 세경은 보안업체에 키패드 입력을 임시 기록하는 센서를 추가해 달라고 요청했다. 경수는 개인정보 우려 때문에 별도 동의가 필요하다고 말했다. 정미는 주민 설명회를 열어 결정하자고 했다. 세경은 그때까지 비밀번호를 무작정 바꾸지 않고, 방문자 임시코드를 폐기하고 주민들에게 문이 닫혔는지 확인해 달라고 안내했다.
밤 10시, 관리실 모니터에 공동현관이 비어 있는 모습이 떴다. 아무도 문 앞에 없는데 도어 센서가 열림으로 바뀌었다. 세경은 즉시 경비원에게 확인을 요청했다. 문은 닫혀 있었고, 잠금 장치도 정상 작동했다. 로그에는 키패드 번호가 입력된 흔적이 없었다.
경수는 시스템을 재부팅하자고 했지만 세경은 로그를 먼저 복사해 저장했다. “이번엔 입력 없이 문이 열린 걸로 기록됐어요.”
그는 센서 오류일 가능성이 높다고 말했다. 세경은 일단 현장 점검을 신청했다. 새벽 2시 13분이 가까워질수록 화면을 보는 눈이 뻑뻑해졌다. 정각이 되자 현관문이 다시 열림 상태로 바뀌었다. 복도 화면에는 아무도 없었다.
세경은 화면을 확대했다. 유리문 바깥에 놓인 택배 하나가 안쪽으로 조금씩 움직이고 있었다. 누군가 끈을 문 아래 틈으로 밀어 당기는 것처럼 보였다.
그녀는 경비실에 즉시 연락하고 관리실 문을 잠갔다. 혼자 현관으로 뛰어나가지 않았다. 경비원 윤기석이 무전으로 현장에 도착했다고 알려 왔다. 그는 유리문 바깥에 사람은 보이지 않지만, 택배 상자 아래에 얇은 끈이 걸려 있다고 했다.
“상자를 건드리지 마세요. 경찰에 연락하고 사진부터 남겨 주세요.”
기석은 손전등을 비추며 멀리서 사진을 찍었다. 끈은 문 아래 고무 틈을 지나 안쪽으로 들어와 있었고, 바깥쪽 끝은 우편함 아래에 묶여 있었다. 누군가 문을 열지 않고도 상자를 당기려 했을 수 있었다. 그러나 끈이 택배기사의 작업 도구인지, 장난인지, 실제로 물건을 훔치려는 시도인지는 확인되지 않았다.
세경은 주민들이 현관으로 나오지 않도록 안내 방송을 했다. 정미는 이미 복도에 나와 있었고, “저게 침입자가 맞잖아요”라고 말했다. 세경은 그 말에 동의하지 않았다. “사람은 아직 확인되지 않았어요. 상자와 끈은 경찰이 확인할 겁니다.”
경찰이 도착했을 때 택배 상자는 비어 있었다. 배송 시스템에는 해당 호수로 배달 완료된 기록이 없었다. 상자의 라벨은 젖어 읽을 수 없었고, 끈에는 손자국이 보이지 않았다. 경수는 키패드와 도어 센서가 서로 다른 로그를 기록했을 수 있다고 설명했다. 경찰은 상자를 수거해 분석을 요청했다.
세경은 그날 야간 기록을 따로 보관했다. 공동현관 입력 없이 문 열림으로 기록된 시각과 상자가 움직인 시각은 정확히 1분 차이였다. 문이 실제로 열린 것이 아니라 센서만 열림으로 바뀌었을 수도 있었다. 그녀는 로그에 ‘침입 확인’이라고 쓰지 않고, ‘센서 열림 표시, 현장 확인 시 문 잠김’이라고 기록했다.
경수는 펌웨어 업데이트 후 문 센서가 흔들릴 수 있다며 재부팅을 제안했다. 세경은 원본 기록을 복사했는지 재차 확인했다. 그는 “이 정도 로그가 증거가 되겠습니까?”라고 물었다.
“증거가 되는지는 경찰이 판단합니다. 우리가 본 상태는 정확하게 남겨야 해요.”
그는 마침내 업데이트 요청 이력을 출력했다. 요청서에는 관리실 승인란이 비어 있었고, 작업 메모에는 ‘문이 잠긴 상태에서 원격 테스트’라고 적혀 있었다. 세경은 그 서명 칸을 보며 자신이 현장을 보지 않은 채 승인 처리한 날을 떠올렸다. 서명은 자기 것이 아니었지만, 관리실 계정은 공유되어 있었다.
세경은 경수에게 그 계정을 누가 사용했는지 묻지 않았다. 먼저 주민들이 사용하는 공용 계정의 암호를 바꾸고, 접속 기록을 추출했다. 그날 밤 작업을 했던 사람이 있었는지 확인하려면 경수의 직원 출입 기록과 대조해야 했다.