신한은행
급하게 송금해야 하는데 앱이 안 열리는 사태가 발생했다. 은행 전산망이 멈추면 고객 일상은 순식간에 마비된다.
신뢰가 생명인 은행에서 절대 일어나선 안 될 일이, 담당자의 '클릭 실수'나 '절차 무시' 같은 황당한 이유로 발생했다면 믿을 수 있을까?
금융감독원이 5일, 신한은행에 대해 전자금융거래 안전성 확보 의무 위반을 이유로 과태료 9600만 원을 부과하고 직원들에게는 자율처리 필요사항을 통보했다.
책임자 승인 없는 서버 변경…은행 업무 86분간 올스톱
2022년 3월 14일 오전 11시 4분, 점심시간을 앞두고 한창 바쁜 시간대에 신한은행의 모든 전자금융 업무가 갑자기 멈춰 섰다. 원인은 심장부인 '코어뱅킹 데이터베이스(DB) 서버' 작동 중단이었다.
도대체 왜 서버가 죽었을까? 이유는 허무하게도 '절차 무시'였다. 당시 A부서는 서버 운영체제에 과부하를 줄 수 있는 '접근 통제 프로그램' 설정을 변경하면서, 책임자 승인조차 받지 않았다.
금융사의 프로그램 변경은 시스템 안정성을 위해 반드시 책임자의 승인을 거쳐야 하는 것이 법적 의무이자 기본 상식이다.
그럼에도 이 기본을 지키지 않았다. 승인 없이 변경된 설정이 결국 운영체제 과부하를 일으켰다. 신한은행 전자금융 업무는 12시 30분까지 86분간 '올스톱' 됐다.
추석 앞두고 '노룩 패치'···무결성 테스트 실종 사건
그로부터 6개월 뒤인 2022년 9월 7일. 민족 대명절 추석을 앞두고 거래량이 폭증할 것에 대비해 코어뱅킹 DB 성능 개선 작업에 착수했다.
취지는 좋았으나, 과정은 엉망이었다. A부서는 DB 시스템 프로그램을 변경하면서, 데이터가 중복되지 않게 막아주는 '기본키(Primary Key)'가 잘못 생성되도록 프로그램을 짰다.
코드를 잘못 짰으면 테스트 단계에서 걸러냈어야 했지만 신한은행은 '무결성 테스트'도 거치지 않은 채 프로그램을 그대로 운영 시스템에 적용했다. '노룩(No-Look) 패치'가 된 셈이다.
결국 사고가 났다. 프로그램 적용 직후인 0시부터 새벽 1시 58분까지 118분 동안, 단순 조회를 제외한 전자금융 업무가 중단되는 장애가 발생했다.
신뢰 잃고 시스템 고치기···반복 실수 원인은 인재
로그가 제대로 저장되지 않는 장애를 막겠다고 시작한 일이, 되려 2시간 가까운 서비스 중단을 불러온 촌극이었다.
결국 신한은행은 사고가 터지고 나서야 뒤늦게 제3자 검증 체계를 강화하고, 중요 DB 변경 시 거래 테스트를 의무화하는 등 업무 방식을 뜯어고쳤다.
이번 9600만 원의 과태료는 단순한 벌금이 아니다. 고객의 소중한 자산을 다루는 은행이 '설마 별일 있겠어?' 같은 안일함으로 기본 원칙을 어겼을 때, 어떤 혼란이 초래되는지 보여주는 명세서다.