보안 프로그램이라면 무언가를 막는 프로그램일 거라고 생각하기 쉽다. IPinside LWS Agent 는 결이 좀 다르다. 막는 쪽이 아니라 알려 주는 쪽이다. 접속한 PC 가 어떤 PC 인지, 어디서 들어왔는지를 사이트에 알려 주는 것이 이 프로그램의 일로 알려져 있다.

서비스가 띄우는 I3GProc.exe

설치된 앱 목록의 이름은 "IPinside LWS Agent", 버전 3.0.0.25, 게시자는 interezen 이다. 은행이나 국세청 홈택스 같은 사이트에서 부정 접속을 가려내려고 설치를 요구하는 프로그램으로 알려져 있다. 작업 관리자에 보이는 이름은 두 개다.

프로세스 파일 설명 · 버전 시작 방식 메모리(작업 집합 / 개인)
I3GMainSvc.exe Interezen Service Program 3.0.0.4 서비스 Interezen_service (자동, LocalSystem) 8.4MB / 2.5MB
I3GProc.exe Interezen Process 3.0.0.25 I3GMainSvc.exe 의 자식, 시작 프로그램(Run)에도 등록 5.4MB / 11.3MB

두 파일 모두 C:\Program Files (x86)\IPinside_LWS 에 있고 Interezen 서명이 유효했다. 서비스의 표시 이름은 "Interezen LWS" 다. sc.exe qc 로 보면 오류 제어가 IGNORE 로 되어 있다. 부팅 중에 이 서비스가 실패해도 Windows 가 경고 없이 넘어가게 한 설정이다.

I3GProc.exe 는 서비스가 띄우는 자식 프로세스이면서, 동시에 시작 프로그램에도 ipinside-lws 라는 이름으로 등록되어 있다. 서비스가 띄우든 로그인할 때 Run 키가 띄우든 둘 중 하나는 걸리게 해 둔 것으로 보인다. 실제로 일을 하는 쪽은 I3GProc.exe 다. 이 프로세스가 포트를 열고 있었다.

0.0.0.0:21300 과 방화벽 규칙

LocalAddress LocalPort OwningProcess
0.0.0.0          21300         14700   (I3GProc.exe)

앞 편의 nProtect 와 같이 127.0.0.1 이 아니라 0.0.0.0 이다. 이 PC 의 모든 네트워크 주소에서 연결을 받는다. Windows 방화벽에도 "Interezen Process" 라는 이름으로 I3GProc.exe 의 들어오는 연결을 허용하는 규칙이 있었다. 프로필은 전체, 포트와 원격 주소에는 제한이 없었다.

은행 페이지의 스크립트가 이 21300 번 포트로 요청을 보내면, 에이전트가 PC 정보를 모아 암호화한 결과를 돌려주고, 페이지가 그것을 은행 서버로 넘기는 방식으로 알려져 있다. 그 용도라면 같은 PC 의 브라우저만 닿으면 되므로 127.0.0.1 로 충분해 보인다. 다른 기기에서 실제로 접속해 보지는 않았기 때문에, 바깥에서 닿았을 때 무엇이 돌아오는지는 확인하지 않았다.

무엇을 모으는 프로그램으로 알려져 있나

이 질문은 PC 에서 파일을 열어 보는 것만으로는 답할 수 없다. 공개된 분석 중 가장 자세한 것은 보안 연구자 Wladimir Palant 가 2023년 1월에 낸 글이다. 그는 21300 번 포트의 응답을 풀어 보고, 에이전트가 넘기는 정보를 크게 세 가지로 정리했다.

  • 하드웨어: 디스크 일련번호, 네트워크 카드 모델과 MAC 주소, 키보드 종류, CPU 식별 정보
  • 소프트웨어: Windows 판과 버전, 실행 중인 프로세스(사이트가 특정 이름이 들어간 프로세스가 떠 있는지 물을 수 있다)
  • 네트워크: 공인 IP, 내부 IP, 게이트웨이 주소, VPN 사용 여부

사이트 입장에서는 해외에서 남의 계정으로 들어오는 접속이나 원격 조종 프로그램이 떠 있는 PC 를 걸러 내는 데 쓰는 정보다. 반대로 이용자 입장에서는 PC 를 알아볼 수 있는 고유한 값들이 은행으로 넘어간다는 뜻이기도 하다. 같은 글은 당시 버전의 약한 암호 방식과 오래된 OpenSSL 사용 등 보안상 문제도 함께 지적했고, 인터리젠은 수정 계획을 밝힌 것으로 알려져 있다. 그 뒤 어느 버전에서 무엇이 고쳐졌는지는 공개 자료로 확인하지 못했다.

내 PC 에서 볼 수 있는 변화는 하나 있었다. 설치 폴더의 libssl-3.dll 과 libcrypto-3.dll 은 OpenSSL 3.0.7 이었다. 적어도 OpenSSL 은 당시 지적된 1.0 계열이 아닌 3.0 계열을 쓰고 있다.

INTEREZEN CA 와 certfr 폴더

루트 인증서 저장소에는 INTEREZEN CA 가 들어 있었다. 유효 기간은 2026년 6월 30일부터 2046년 6월 25일까지 약 20년이다. 발급일이 이 인증서가 들어온 날과 같은 것으로 보아 4편의 Veraport 처럼 설치할 때 만드는 루트로 보인다. 특이한 점은 인증서 주체에 서울이라는 지역과 함께 담당자 이메일까지 들어 있다는 것이다. 루트 인증서 주체에 사람의 이메일 주소까지 넣는 것은 흔한 방식은 아니다.

설치 폴더에는 certfr 라는 하위 폴더가 따로 있고, 그 안에 certutil.exe 와 nss3.dll, softokn3.dll 같은 NSS 라이브러리가 들어 있다. NSS 는 Firefox 가 쓰는 인증서·암호 라이브러리다. Windows 인증서 저장소를 쓰지 않는 Firefox 에도 같은 루트를 넣기 위한 도구로 보인다. 폴더 바로 아래에도 certmgr.exe 가 있다.

지우는 방법

이 프로그램을 요구하는 사이트를 PC 로 쓰지 않는다면 지워도 PC 동작에는 문제가 없다. 설정 → 앱 → 설치된 앱에서 "IPinside LWS Agent" 를 제거한다. 등록된 제거 명령은 다음과 같다.

C:\Program Files (x86)\IPinside_LWS\I3GSvcManager.exe /uninstall

제거한 뒤에는 서비스 Interezen_service 가 사라졌는지, 시작 프로그램에 ipinside-lws 가 남지 않았는지, 방화벽 규칙 "Interezen Process" 와 루트 인증서 INTEREZEN CA 가 정리됐는지 본다. 인증서는 certlm.msc(컴퓨터)와 certmgr.msc(현재 사용자) 양쪽의 "신뢰할 수 있는 루트 인증 기관"에서 확인한다. Firefox 를 쓴다면 Firefox 설정의 인증서 관리자에도 남아 있는지 한 번 본다.

다음 편은 2023년 국가정보원이 직접 경고문을 낼 만큼 이름이 알려진 공동인증서 프로그램, 드림시큐리티의 MagicLine4NX 다.