🇰🇷 한글 설명
PaperCut MF에서 특정 HP 복합기의 배지 스와이프 데이터를 처리할 때 경쟁 조건(race condition)이 존재합니다. 패킷 손실과 순서가 어긋난 시퀀스 카운터가 겹치면 서버가 잘린 배지 ID를 등록할 수 있으며, 사용자 정의 후처리 스크립트가 있는 환경에서는 이 값이 다른 사용자의 유효한 ID로 변환되어 잘못된 사용자로 로그인이 이루어질 수 있습니다.
💡 쉬운 설명
직원이 출입카드를 복합기에 찍을 때, 네트워크 문제가 겹치면 카드 번호가 일부만 전달될 수 있습니다. 특정 설정에서는 이 잘린 번호가 다른 사람의 카드 번호로 인식되어 그 사람 계정으로 복합기가 잘못 로그인될 수 있습니다.
🇺🇸 원문 (English)
A race condition exists in PaperCut MF when processing badge-swipe data from certain HP multifunction devices. Under specific network conditions involving dropped packets and out-of-order sequence counters, the server may incorrectly process fragmented data chunks. If a sequence reset notification fails to reach the server, the server may reject the initial data chunk while erroneously accepting subsequent chunks before a connection reset completes.
This leads to the registration of a truncated badge ID string. While this typically results in an authentication failure, the vulnerability is compounded in environments utilizing custom badge-ID post-processing scripts. In such configurations, the truncated string may be transformed into a valid ID belonging to a different user, leading to unauthorized session establishment (Incorrect User Login) on the device.
📍 영향받는 시스템
PaperCut MF (버전 정보는 공지 확인 필요) 및 연동된 특정 HP 복합기 환경
⚔️ 공격 벡터
네트워크 패킷 손실 또는 순서 뒤바뀜 상황을 유발해 잘린 배지 ID가 서버에 등록되도록 하여 다른 사용자로 무단 세션을 수립
🛡️ 대응 방법
PaperCut MF를 제조사 권고 최신 패치 버전으로 업데이트하고, 배지 ID 후처리 스크립트의 입력 길이 및 형식 검증을 추가
🔧 검증 코드
PaperCut 설치 경로가 출력되면 설치된 것이며, 해당 설치 디렉터리의 버전 파일 또는 관리 콘솔에서 버전을 확인해 제조사 패치 적용 여부를 판단합니다. 아무것도 출력되지 않으면 해당 시스템에는 PaperCut이 설치되어 있지 않을 가능성이 높습니다.
grep -ril 'papercut' /opt /usr/local /Applications 2>/dev/null | head -n 5