사람의 세상에서도 평범한 사람과 범죄자가 있듯이, 프로그램 세계도 평범한 프로그램과 악성(malicious) 프로그램으로 구분할 수 있다. 악성 프로그램을 정보통신망법은 '정보통신시스템, 데이터 또는 프로그램 등을 훼손·멸실·변경·위조하거나 그 운용을 방해할 수 있는 프로그램'으로 정의하고 있다.
그런데 문제는 정의 규정의 '운용 방해'가 지나치게 포괄적이고 광범위해서 프로그램 세계에서는 '죄형법정주의'가 적용되지 않는 것과 같은 느낌이 든다는 것이다. 그래서인지 실제 판례를 보면 '훼손·멸실·변경·위조'를 악성 프로그램으로 본 예가 대부분이고, '운용 방해'를 악성프로그램으로 적용한 예는 극히 드물다.
예컨대 법원은 마우스를 클릭하거나 키보드를 누르는 것을 자동화하여 일부러 게임을 지도록 만든 오토 프로그램이 악성 프로그램이 아니라고 판시하였고, 미니홈피 방문자의 정보를 방문자 추적 사이트의 서버로 유출시키는 프로그램 역시 악성 프로그램이 아니라고 판시하였다.
하지만 간혹 수사기관은 '운용 방해'에 집착하곤 한다. 예컨대 과정을 단축시킴으로써 짧은 시간 안에 많은 작업을 할 수 있게 하는 자동화 프로그램은 그 성질상 트래픽이 다소 늘어날 수도 있는데, 이를 두고 시스템에 대한 '운용 방해'의 악성 프로그램으로 보는 경우도 있었다. 약간의 트래픽 증가를 '운용 방해'로 이해한다면, 조금이라도 편리를 도모한 프로그램이 악성 프로그램이 될 여지가 있는데, 이러한 현상은 궁극적으로 소프트웨어에 대한 새로운 시도를 막는 원인이 될 수 있고, 혁신에 대한 저해 요소가 될 수 있다.
더불어 지능형전력망의 구축 및 이용촉진에 관한 법률은 '컴퓨터 바이러스 등 전력망의 안정적인 운영을 방해할 수 있는 프로그램'을 '악성 프로그램'으로 정의하고 있고, 전자금융감독규정, 정보보호 침해사고 대응 지침도 나름대로 '악성 코드'를 정의하고 있다. 악성 프로그램이나 악성 코드는 IT나 정보 보안에서 매우 중요한 개념인 바, 명확한 개념 정의가 선행되어야 할 것이다.
* 법무법인 민후 김경환 대표변호사 작성, 법률신문(2014. 2. 24.) 기고.