역분석이 불법이라는 말을 들어봤을 거다. 진짜일까?
한국 법률
저작권법 제101조의4 (프로그램코드역분석)
정당한 권한에 의하여 프로그램을 이용하는 자 또는 그의 허락을 받은 자는 호환에 필요한 정보를 쉽게 얻을 수 없고 그 획득이 불가피한 경우에 한하여 해당 프로그램의 호환에 필요한 부분에 한정하여 프로그램의 저작재산권자의 허락을 받지 아니하고 프로그램코드역분석을 할 수 있다.
요약: 호환성 목적이면 허용.
이번 사례는?
우리 회사 제품이고, 소스코드가 분실됐고, 유지보수를 위해 역분석했다.
- 정당한 권한? ✅ 회사 소유 제품
- 호환성 목적? ✅ 기존 시스템 유지보수
- 정보 획득 불가피? ✅ 소스코드 없음
합법.
주의할 상황
불법일 수 있는 경우:
- 경쟁사 제품 분석해서 복제
- DRM 우회
- 보호 장치 해제
- 악성코드 제작
합법적인 경우:
- 자사 제품 유지보수
- 보안 연구 (취약점 분석)
- 호환 제품 개발
- 학술 연구
계약 확인
소프트웨어 라이선스에 “역분석 금지” 조항이 있을 수 있다.
하지만 한국법상 호환성 목적 역분석은 계약으로도 금지 못한다.
미국은?
DMCA (Digital Millennium Copyright Act)가 있지만, 예외 조항도 있다:
- 보안 연구
- 호환성
- 교육
상황에 따라 다르니 미국 제품 분석할 땐 주의.
실무 조언
- 문서화: 왜 역분석이 필요한지 기록
- 범위 제한: 필요한 부분만 분석
- 결과물 관리: 분석 결과를 함부로 공개하지 않음
- 법률 자문: 애매하면 변호사한테 물어보기
이 시리즈는 자사 제품 유지보수 목적이니 문제없다.
다음 번외편에서 난독화된 펌웨어 분석.