PaperCut 긴급 패치가 세 번째로 바뀌었다…인터넷 차단이 먼저다

PaperCut은 실제 공격에 악용된 PaperCut NG·MF 취약점에 대응해 2026년 9월 1일 Emergency Patch Release 3을 배포했다. PaperCut의 긴급 보안 권고 는 이 패치가 앞선 두 긴급 릴리스를 대체하는 누적 수정본이며, 공개 인터넷에서 접근할 수 있는 Application Server는 먼저 웹 접근을 신뢰 IP로 제한한 뒤 Release 3을 적용해야 한다고 명시한다.
9월 4일 현재 고객 침해와 완전히 패치되지 않은 공개 서버를 겨냥한 추가 공격이 확인됐고, 정규 품질보증 절차를 거친 유지보수 릴리스는 아직 준비 중이다. 따라서 운영자가 즉시 처리할 순서는 외부 노출 차단, 증거 보존, Release 3 적용, 기능 회귀 확인, 기존 침해 조사다. 패치를 설치해도 이미 만들어진 원격접속 경로나 변경된 설정까지 없어지지는 않는다.
영향 버전보다 먼저 공개 접근을 차단한다

보안 권고의 영향 범위는 PaperCut NG와 PaperCut MF의 모든 버전이다. Release 3 설치 파일이 제공되는 계열은 v24·v25·v26이며, v23 이하는 해당 버전에 머문 채 적용할 긴급 패치가 없어 최신 지원 버전으로 업그레이드해야 한다.
다만 전체 서버 목록과 세부 버전을 조사하느라 인터넷 노출을 유지해서는 안 된다. Application Server의 웹 인터페이스가 외부에 열려 있다면 방화벽이나 네트워크 접근제어로 내부 주소, 명시적으로 신뢰한 IP 또는 통제된 VPN 경로에서만 접근할 수 있게 해야 한다. 의심스러운 활동이 보이지 않거나 Release 1·2를 이미 설치했다는 사실도 공개 접근을 유지할 근거가 되지 않는다.
패치 범위에는 주 Application Server뿐 아니라 Site Server와 secondary·print server가 포함된다. 반면 별도 구조에서 작동하는 Mobility Print와 Print Deploy 서버 구성요소, 관련 클라이언트 소프트웨어는 이번 취약점의 영향 대상이 아니다. PaperCut Hive와 Pocket에도 이 보안 권고가 적용되지 않는다.
Release 3은 누적 패치이자 회귀 수정본이다

Release 3에는 이전 긴급 수정 내용이 누적돼 있어 Release 1이나 Release 2를 먼저 설치할 필요가 없다. 앞선 패치를 적용한 서버도 Release 3으로 다시 업데이트해야 한다. 이번 교체는 추가 공격 경로를 막기 위한 강화 조치와 함께 Release 2에서 드러난 두 가지 운영 회귀를 수정하기 위해 이뤄졌다.
수정된 문제는 깨진 SAML 로그인 흐름과 외부 Card/ID 번호 조회에 사용되는 구형 Microsoft SQL Server 드라이버 지원이다. 설치 뒤에는 프로세스가 실행 중인지만 확인하지 말고 실제 SAML 인증, 외부 데이터베이스 조회, Site Server 연결을 점검해야 한다.
외부 데이터베이스를 이용하는 Card/ID 조회 기능은 기본적으로 비활성화돼 있으며, 이를 사용하는 환경에는 server/security.properties의 security.card-number-lookup.enabled=Y 설정이 필요하다. 구형 SourceForge jTDS 드라이버에서 조회가 계속 실패한다면 지원되는 Microsoft SQL JDBC 드라이버로 전환하는 방안을 검토해야 한다. 이 조치는 해당 기능을 구성한 환경에만 해당한다.
실행 순서는 다음과 같다.
- 관리 중인 PaperCut NG·MF Application Server를 빠르게 식별하고 공개 웹 접근을 신뢰 IP나 통제된 내부 경로로 제한한다.
- 업데이트나 재시작 전에 server/logs 디렉터리와 파일 메타데이터, 비기본 설정, 프로세스 트리, 네트워크 기록을 보존한다.
- Application Server, Site Server, secondary·print server의 제품·운영체제·버전을 확인한다.
- v24·v25·v26에는 맞는 Release 3을 적용하고, v23 이하는 지원 버전 업그레이드를 추진한다.
- 설치 후 SAML 로그인, 외부 Card/ID 조회와 SQL Server 연결, Site Server 동작을 검증한다.
- 패치 전 인터넷 노출 기간을 기준으로 로그, 생성 파일, 서비스와 원격접속 프로그램을 조사한다.
인증 우회와 동적 클래스 로딩이 코드 실행으로 이어졌다
공격 연쇄의 첫 단계인 CVE-2026-81578은 웹 관리 인터페이스의 접근통제 결함이다. 특정 조건에서 인증되지 않은 원격 요청이 검증 완료 전에 관리 기능을 작동시켜 일부 시스템 설정을 바꿀 수 있다. CVE-2026-82078은 데이터베이스 연결 유틸리티가 승인 목록 검증 없이 설정된 이름에 따라 드라이버 클래스를 불러오는 결함으로, 조작된 설정과 결합하면 PaperCut 서버 프로세스의 보안 컨텍스트에서 임의 Java 바이트코드를 실행할 수 있다.
Huntress의 침해 분석 은 두 취약점을 연결한 인증 전 원격 코드 실행을 재현하고 고객 환경 두 곳에서 악용 증거를 확인했다. 한 사례에서는 pc-app.exe 아래에서 whoami와 ver가 실행됐으며, 다른 사례에는 tasklist까지 포함됐다. server.log에는 인코딩된 명령과 Java 클래스 데이터가 남았고, 복구된 클래스는 명령 결과와 자체 파일뿐 아니라 server.log도 삭제하도록 작성돼 있었다.
이 때문에 패치 설치 완료 시각만으로 과거 침해 여부를 판단할 수 없다. 업데이트 과정의 재시작과 파일 교체가 조사 단서를 바꿀 수 있으므로, 공개 서버였던 환경은 패치 전에 가능한 범위에서 로그와 파일 메타데이터, 현재 프로세스 및 네트워크 상태를 보존해야 한다.
server.log와 원격접속 서비스를 같은 시간축에서 본다

우선 server.log가 삭제됐거나 예상보다 짧게 잘렸는지 확인한다. 조사 단서에는 jdbc:no:x 드라이버 오류, Card/ID 조회 중 VALUES CAST 오류, DB URL의 jdbc:derby:memory:pwn 문자열, 무작위 다섯 글자 드라이버 이름이 포함된다. pc-app.exe 또는 pc-app 프로세스가 cmd.exe 같은 셸을 실행하거나 whoami, ver, tasklist 등 시스템 확인 명령을 호출한 기록도 살펴야 한다.
파일시스템에서는 설치 경로의 server/lib 아래에 생성된 예상 밖의 다섯 글자 이름 .class 파일과 server/data/content 아래의 같은 유형 .cmd·.out 파일을 찾는다. 공격 과정에서 이 파일들이 지워질 수 있으므로 발견되지 않았다는 사실만으로 비침해 판정을 내려서는 안 된다.
Help Net Security의 공격 관찰 정리 에 따르면 실행이 차단되지 않은 사례에서는 사용자·권한과 실행 프로세스, 도메인 컨트롤러, 로그인 세션을 열거한 뒤 SimpleHelp 에이전트를 자동 실행하는 ‘Remote Access Service’ Windows 서비스가 설치됐고 AnyDesk도 내려받아졌다. 공격자의 최종 목적은 아직 확인되지 않았다.
따라서 PaperCut 내부 로그만 확인해서는 부족하다. EDR에서 pc-app.exe의 자식 프로세스를 확인하고 Windows 서비스, 자동 실행 항목, 최근 생성 파일, 역방향 프록시·WAF·방화벽·DNS·네트워크 흐름 기록을 같은 시간축으로 맞춰야 한다. 알려진 문자열과 파일이 모두 없더라도 시스템이 영향을 받지 않았다는 증거는 아니다.
침해가 의심되면 현재 백업을 보호하고 조직의 사고대응 절차에 따라 서버를 격리·분석해야 한다. PaperCut이 제시한 복구 방안은 Application Server를 완전히 지우고 재구축한 뒤 의심 활동 이전의 깨끗한 백업에서 복원하는 것이다. 복원한 서버 역시 공개 상태로 되돌리지 말고 Release 3이 적용된 통제된 네트워크에서 가동해야 한다.
9월 4일 현재 Release 3은 최신 긴급 패치지만 정규 유지보수 릴리스는 아니다. 추가 침해지표와 조사 결과가 갱신될 수 있는 만큼, 외부 접근 제한과 패치, 기능 회귀 확인, 침해 조사는 서로 대체할 수 없는 별도 작업으로 유지해야 한다.
함께 읽기:
뉴스레터 구독
최신 Web3, AI, 암호화폐 뉴스를 이메일로 받아보세요.