Details
-
Bug
-
Status: Closed (View Workflow)
-
P2
-
Resolution: Done
-
15.4.0
-
customfield_11100 26604
-
CP: sprint 65
-
1
-
Core: Platform
Description
The CQL query
identifiers=")"
is valid, parentheses need no masking inside of quotes.
Apply urlencoding:
identifiers%3D%22%29%22
Invoke curl:
curl -H "X-Okapi-Tenant: diku" http://localhost:8081/instance-storage/instances?query=identifiers%3D%22%29%22
There is SQL injection resulting in this error message:
ErrorMessage(fields=Map(Line -> 208, File -> regexp.c, SQLSTATE -> 2201B, Routine -> RE_compile_and_cache, V -> ERROR, Message -> invalid regular expression: parentheses () not balanced, Severity -> ERROR))
This is the produced SQL:
WHERE lower(f_unaccent(instance.jsonb->>'identifiers')) ~ lower(f_unaccent('(^|[[:punct:]]|[[:space:]]|(?=[[:punct:]]|[[:space:]])))($|[[:punct:]]|[[:space:]]|(?<=[[:punct:]]|[[:space:]]))')) LIMIT 10 OFFSET 0
TestRail: Results
Attachments
Issue Links
- blocks
-
MODORDERS-262 PO with a POL whose productID has a paren, copied/edited from Instance cannot be saved
-
- Closed
-
-
UIIN-569 Search for titles with value with parenthesis results in error messages when search term: All (title, contributor, identifier)
-
- Closed
-
- is blocked by
-
MODINVSTOR-285 upgrade to RMB 26 and resolve related issues
-
- Closed
-
- relates to
-
RMB-396 mask ) ] } in regexp to prevent SQL injection
-
- Closed
-