🇰🇷 한글 설명
JeecgBoot 3.9.5 이하 버전의 AiOcrController 내 deleteById 핸들러에서 권한 검증이 누락된 취약점이 발견되었습니다. 인증된 사용자라면 누구나 권한 없이 OCR 기록을 삭제할 수 있으며, 공격자는 목록 조회 엔드포인트를 통해 ID를 탈취한 후 Redis에 저장된 모든 공유 OCR 프롬프트 기록을 삭제할 수 있습니다.
💡 쉬운 설명
로그인한 사용자라면 누구나 다른 사람의 OCR 기록을 마음대로 지울 수 있는 보안 허점이 있습니다. 공격자가 목록을 조회한 뒤 반복적으로 삭제 명령을 보내면 저장된 중요한 데이터가 모두 사라질 수 있습니다.
🇺🇸 원문 (English)
JeecgBoot through 3.9.5 contains a missing authorization vulnerability in the AiOcrController deleteById handler that allows any authenticated user to delete OCR records. Low-privileged attackers can obtain record ids from the unguarded GET /airag/ocr/list endpoint and repeatedly delete every shared OCR prompt record stored in Redis.
📍 영향받는 시스템
JeecgBoot 3.9.5 이하 모든 버전
⚔️ 공격 벡터
인증된 사용자가 권한이 없는 삭제 API(deleteById)를 호출하여 데이터를 삭제하는 방식
🛡️ 대응 방법
AiOcrController의 deleteById 핸들러에 적절한 권한 검증 로직을 추가하고 업데이트를 적용하십시오.
🔧 검증 코드
명령어 실행 시 OCR 기록 ID 목록이 정상적으로 반환된다면 취약한 엔드포인트가 노출된 상태입니다.
curl -s -X GET http://<target>/airag/ocr/list | grep -q 'ocr_record_id'