IT 감사
숫자를 믿으려면 그 숫자를 만든 시스템을 먼저 믿을 수 있어야 합니다. IT 감사의 정의와 범위, 일반통제와 응용통제의 관계를 설명합니다.
정의
IT 감사는 조직의 정보시스템과 그 운영 체계가 자산을 보호하고, 데이터의 무결성을 유지하며, 조직의 목표를 효과적으로 달성하도록 작동하는지를 평가하는 감사입니다. 정보시스템 감사라고도 합니다.
회계 감사를 하는 데에도 IT 감사가 필요합니다. 오늘날 재무 데이터는 사람이 장부에 적는 것이 아니라 전산 시스템이 만들어 냅니다. 시스템을 믿을 수 없으면 그 시스템이 산출한 숫자도 믿을 수 없습니다. 전표 한 장 한 장을 확인하는 것보다, 전표를 만들어 내는 구조가 건전한지를 확인하는 편이 효율적이기도 합니다.
IT 일반통제 (ITGC)
여러 시스템에 공통으로 적용되는 기반 통제를 말합니다. 대표적인 영역은 다음과 같습니다.
- 접근 통제: 권한이 있는 사람만 시스템에 접근하는가. 퇴직자 계정은 즉시 차단되는가. 한 사람이 요청과 승인을 모두 할 수 있지는 않은가(직무 분리). 공용 계정을 여럿이 나눠 쓰고 있지는 않은가. 공용 계정은 특히 위험합니다. 누가 무엇을 했는지 특정할 수 없으면 사고가 나도 책임을 물을 수 없고, 조사도 거기서 막힙니다.
- 변경 관리: 프로그램 변경이 승인, 테스트, 배포의 절차를 거치는가. 개발자가 운영 환경을 직접 고칠 수 있는가. 개발자가 운영 데이터베이스에 직접 접속할 수 있다면, 그 시스템이 만들어 내는 어떤 숫자도 검증되지 않은 것입니다.
- 운영 관리: 배치 작업, 장애 대응, 백업과 복구가 정해진 절차대로 이뤄지는가. 백업은 존재 여부가 아니라 실제로 복구되는지를 확인해야 합니다.
응용통제
개별 업무 시스템 안에 내장된 통제입니다. 입력값 검증, 한도 초과 시 승인 요구, 중복 전표 차단, 필수 항목 누락 방지처럼 특정 거래의 정확성을 직접 보장합니다.
왜 일반통제를 먼저 보는가
ITGC 가 무너지면 응용통제도 신뢰할 수 없게 됩니다. 누구나 프로그램을 고칠 수 있는 환경이라면, 그 프로그램 안의 검증 로직이 지금 이 순간에도 살아 있다고 장담할 수 없기 때문입니다. 승인 한도를 우회하도록 코드를 잠깐 바꾸고 되돌려 놓으면, 시스템은 아무 일도 없었던 것처럼 보입니다.
그래서 IT 감사는 대개 일반통제부터 확인하고, 그것이 신뢰할 만할 때 응용통제의 유효성을 인정합니다. 순서를 바꾸면 모래 위에 검증을 쌓는 셈이 됩니다.
로그라는 최후의 보루
통제가 완벽할 수는 없으므로, 무슨 일이 있었는지 나중에 확인할 수 있는 기록이 필요합니다. 접속 기록, 변경 이력, 권한 부여 이력이 그것입니다.
다만 로그는 남기기만 해서는 의미가 없습니다. 아무도 보지 않는 로그, 관리자가 마음대로 지울 수 있는 로그, 보존 기간이 한 달인 로그는 사고가 났을 때 아무 역할도 하지 못합니다. 로그를 누가 볼 수 없게 하고, 누가 지울 수 없게 하며, 얼마나 오래 보관하는지가 실제 통제의 수준을 결정합니다.

