- Verschifft
- 23. September 2026 um 01:16 UTC
- Autor
- Kamo
- Ausschuss
- 6488bd4
RagSearchController lesen orgId/memberId/memberType vom JSON-Körper auf jedem Pfad, einschließlich Anfragen durch eine *** Sitzung authentifiziert, anstatt X-Internal-Auth. Ein angemeldetes Mitglied mit nur VIEW_KB_ARTICLES konnte einen verschiedene org's id, oder die ID eines anderen Mitglieds, im Körper und suchen Sie, dass Orgs Wissensbasis oder die privaten Notizen dieses Mitglieds direkt durch Qdrant's Filter - die Sitzung bewiesen, wer fragte, aber nie eingeschränkt, was sie könnte nach fragen. /reindex/{orgId' und /status/{orgId' hatte die gleiche Form Level up: dem Pfad orgId wurde vertraut, sobald der Anrufer MANAGE_KB_SETTINGS hielt in *some* org, ohne zu überprüfen, dass es ihnen gehört. Erschwerend kommt noch schlimmer, SessionHelper.hasRight zurückgekehrt für eine Sitzung mit einem leere Rechteliste und wieder für einen ohne Rechte Feld überhaupt, so dass die Rechte Kontrollen, die alle drei Endpunkte bewachen, wurden vom gleichen fehlenden Feld übersprungen. Die Regel jetzt: auf dem Session-Pfad werden org/member/memberType von der Sitzung nur ************ hinzugefügt, um SessionHelper), und reindex/status zusätzlich erfordern den Pfad orgId, um dem der Sitzung eigen zu sein org. hatRight scheitert geschlossen, passend zu KBService's. Der X-Internal-Auth Weg ist unverändert - AIService hat keine eigene Sitzung und muss noch benennen, wer es ist Suche nach im Körper. Auch den X-Internal-Auth-Geheimvergleich von String.equals zu schaltete MessageDigest.isEqual, so dass ein Timing-Unterschied nicht durchsickern die geheime eding zu einem Zeitpunkt. Tests: SessionHelperRightsTest neigt die ausgefallenen Fälle an (mirrors KBService's suite). RagSearchControllerAuthzTest pinnt den Body-Trust-Bug und die reindex/status org-Prüfung und beweist separat den internen und achten noch vertraut dem Gremium (AIService ist die einzige Möglichkeit, dies zu nennen). Jedes war rot verifiziert gegen den Pre-fix-Code vor dieser Übergabe.
