Skip to content

πŸ›‘οΈ Sentinel: [HIGH] Fix JPQL Injection in VocabularyController - #201

Merged
ManupaKDU merged 1 commit into
developmentfrom
sentinel/fix-jpql-injection-vocabulary-controller-17633927196061055615
Aug 7, 2026
Merged

πŸ›‘οΈ Sentinel: [HIGH] Fix JPQL Injection in VocabularyController#201
ManupaKDU merged 1 commit into
developmentfrom
sentinel/fix-jpql-injection-vocabulary-controller-17633927196061055615

Conversation

@ManupaKDU

Copy link
Copy Markdown

πŸ›‘οΈ Sentinel: [HIGH] Fix JPQL Injection in VocabularyController

🚨 Severity: HIGH
πŸ’‘ Vulnerability: User input from autocomplete and search fields was directly concatenated into JPQL queries in completeVocabulary and getSelectedItems, allowing for JPQL injection.
🎯 Impact: Attackers could manipulate the query to access unauthorized data or alter database logic.
πŸ”§ Fix: Replaced string concatenation with parameterized queries using java.util.Map and explicitly used the upper() function on both sides of the like clause to maintain the intended case-insensitive search logic securely.
βœ… Verification: Ran detect-maven.sh test to ensure no regressions in existing tests.


PR created automatically by Jules for task 17633927196061055615 started by @manupawickramasinghe

🚨 Severity: HIGH
πŸ’‘ Vulnerability: User input from autocomplete and search fields was directly concatenated into JPQL queries in `completeVocabulary` and `getSelectedItems`, allowing for JPQL injection.
🎯 Impact: Attackers could manipulate the query to access unauthorized data or alter database logic.
πŸ”§ Fix: Replaced string concatenation with parameterized queries using `java.util.Map` and explicitly used the `upper()` function on both sides of the `like` clause to maintain the intended case-insensitive search logic securely.
βœ… Verification: Ran `detect-maven.sh test` to ensure no regressions in existing tests.

Co-authored-by: manupawickramasinghe <73810867+manupawickramasinghe@users.noreply.github.com>
@google-labs-jules

Copy link
Copy Markdown

πŸ‘‹ Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a πŸ‘€ emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@ManupaKDU
ManupaKDU merged commit 20fcae5 into development Aug 7, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant