
Kyocera 프린터의 인증되지 않은 데이터 추출 취약점으로, 주소록 및 도메인 가입 비밀번호를 평문으로 복구할 수 있습니다.
Kyocera 프린터에서 인증 없이 데이터를 추출할 수 있는 취약점으로, 평문 주소록과 도메인 가입 비밀번호를 복구할 수 있습니다.
2021년 펜테스트를 진행하던 중, 저는 프린터를 원격으로 관리하는 데 사용되는 Kyocera의 thick client 애플리케이션을 살펴보고 있었습니다. 애플리케이션의 트래픽을 프록시하는 과정에서 Kyocera의 SOAP API(포트 9091/TCP)가 민감한 작업을 수행할 때 인증을 제대로 처리하지 않는다는 사실을 발견했습니다. Kyocera MFP(복합기)는 회사 도메인용 바인드 자격 증명, FTP 자격 증명, 파일 공유 자격 증명 등을 사용하도록 구성할 수 있습니다. 인증 없이도 MFP에 저장된 모든 자격 증명을 평문으로 검색할 수 있습니다.
전체 분석 글은 Rapid7 블로그에서 확인할 수 있습니다: https://www.rapid7.com/blog/post/2022/03/29/cve-2022-1026-kyocera-net-view-address-book-exposure/
이 취약점은 현재 모든 모델에서 수정되지 않았다고 생각하며, 벤더에 보고했음에도 불구하고 여전히 0-day로 남아 있습니다. 지난 몇 년간 확인된 몇 가지 모델에서만 테스트할 수 있었지만, Kyocera 프린터를 찾을 때마다 여전히 작동합니다.
이 python 스크립트는 TCP 포트 9091에서 MFP에 연결하여 새 주소록 내보내기를 생성하는 SOAP 요청을 전송합니다. 프린터는 주소록 객체 번호로 응답하며, 스크립트는 주소록이 생성되는 동안 몇 초간 대기합니다. 마지막으로 다른 SOAP 요청을 통해 주소록을 검색합니다. 주소록 안에는 구성된 모든 자격 증명이 평문으로 들어 있습니다.
출력이나 익스플로잇 프로세스를 보기 좋게 다듬는 작업은 다시 하지 않았으므로, 파싱을 개선한 PR이 있다면 자유롭게 제출해 주세요.
python3 getKyoceraCreds.py <printerip>