소프트웨어 역분석과 법 · 프로그램코드역분석
Legal Limits of Software Reverse Engineering
소프트웨어 역분석과 법이란?
- 저작권법은 호환 목적만 좁게 허용
- 약관의 역분석 금지 조항이 회사를 묶는다
- 연동은 되고 따라 만들기는 위험
리버스 엔지니어링이 기술적으로 쉬워졌다고 법적 판단까지 쉬워진 것은 아닙니다. 저작권법 제101조의4는 정당한 권한으로 프로그램을 쓰는 사람이 다른 프로그램과의 호환에 필요한 정보를 쉽게 얻을 수 없을 때, 그 부분에 한해 권리자 허락 없이 프로그램코드역분석을 할 수 있다고 정합니다. 반대로 이렇게 얻은 정보를 호환 외의 목적으로 쓰거나 남에게 넘기는 것, 그 정보로 실질적으로 비슷한 프로그램을 만드는 것은 금지됩니다. 허용의 핵심은 '연동하려고'이지 '따라 만들려고'가 아닙니다.
두 번째 경계는 계약입니다. 상용 소프트웨어와 SaaS 이용약관 상당수는 역분석·디컴파일 금지 조항을 두고 있고, 회사가 동의 버튼을 눌렀다면 그 약관이 회사를 묶습니다. 법이 허용하는 범위라도 약관 위반으로 계약 해지나 손해배상 문제가 생길 수 있습니다. 세 번째는 영업비밀입니다. 적법하게 손에 넣은 제품을 분석해 알아낸 정보는 일반적으로 영업비밀 침해로 보지 않지만, 분석 과정에서 상대 서버에 무단으로 접근하거나 계정 규칙을 어겼다면 정보통신망법 같은 다른 법이 걸릴 수 있습니다.
분쟁에 대비한 기록도 중요합니다. 무엇을, 어떤 권한으로, 어떤 목적에서 분석했는지 남겨 두면 나중에 호환 목적이었다는 점을 입증하기 쉽습니다. 반대로 분석 결과를 개발팀에 그대로 넘기면 새로 만든 코드가 분석 결과를 베낀 것인지를 두고 다툼이 생기기 쉬워, 분석하는 사람과 구현하는 사람을 나누는 클린룸 방식을 쓰는 회사도 있습니다.
실무에서 판단을 가르는 질문은 세 가지입니다. 분석 대상이 누구 소유이고 우리에게 어떤 권한이 있는가, 약관이 역분석을 금지하는가, 결과물을 어디에 쓰는가입니다. 회사가 소유한 레거시 시스템, 계약상 검수 권한이 있는 외주 납품물, 보안 점검처럼 권한과 목적이 분명한 대상은 비교적 안전합니다. 경쟁사 앱의 기능을 그대로 옮기려는 분석은 가장 위험합니다. AI 도구로 누구나 분석할 수 있게 된 만큼, 허용 대상과 승인 절차를 사내 AI 이용 규정에 적어 두는 것이 사고를 막는 가장 싼 방법입니다. 구체적인 사안은 반드시 법무 검토를 거쳐야 합니다.
1991년 유럽연합 컴퓨터 프로그램 지침이 호환 목적의 디컴파일을 처음 명문으로 허용했고, 미국에서는 1992년 세가 대 어콜레이드(Sega v. Accolade) 판결이 호환을 위한 역분석을 공정이용으로 인정했습니다. 국내에서는 옛 컴퓨터프로그램보호법의 규정이 2009년 저작권법으로 통합되며 제101조의4로 자리 잡았습니다.
가상의 사례로 살펴보겠습니다. 임직원 180명 규모의 B2B 교육 플랫폼 A사 기획팀은 경쟁사 학습앱의 '자동 학습 추천' 기능이 고객 반응이 좋다는 이야기를 듣고, AI 에이전트로 그 앱을 분석해 같은 기능을 만들자는 안을 올렸습니다.
- 기획팀 류 팀장은 REA로 경쟁사 앱을 분석하면 추천 로직을 일주일 안에 알아낼 수 있다며, 개발팀 일정까지 미리 잡아 둔 상태로 결재를 올렸습니다.
- 결재 단계에서 법무 담당 문 과장이 경쟁사 앱 이용약관을 확인해 보니 역분석·디컴파일 금지 조항이 명시돼 있었고, 목적도 호환이 아니라 기능 모방이었습니다.
- 문 과장은 '허용 조건 어디에도 해당하지 않고, 결과물을 쓰면 비슷한 프로그램 개발로 볼 여지까지 있다'며 분석 자체를 보류시켰습니다.
- 기획팀은 대신 자사 고객 20곳 담당자 인터뷰와 공개된 사용 화면 관찰로 추천 기능의 요구사항을 직접 정리했고, 개발은 처음부터 자체 설계로 진행했습니다.
- A사는 이 일을 계기로 사내 AI 이용 규정에 외부 소프트웨어 분석은 법무 사전 승인 항목을 넣었고, 이후 반년간 승인 요청 6건 중 4건이 회사 소유 시스템 분석으로 통과됐습니다.