Skip to content

Add SSTI, stored XSS, and SSRF vulnerability modules with Kotlin support#2

Open
misonijnik wants to merge 1 commit intodemo/basefrom
demo/spring
Open

Add SSTI, stored XSS, and SSRF vulnerability modules with Kotlin support#2
misonijnik wants to merge 1 commit intodemo/basefrom
demo/spring

Conversation

@misonijnik
Copy link
Member

@misonijnik misonijnik commented Mar 25, 2026

Introduce template injection patterns (FreeMarker/Thymeleaf), cross-endpoint stored XSS flows with column-level sensitivity, SSRF via coroutine-based URL fetch, and JPA persistence layer with H2.

Introduce template injection patterns (FreeMarker/Thymeleaf), cross-endpoint
stored XSS flows with column-level sensitivity, SSRF via coroutine-based URL
fetch, and JPA persistence layer with H2. Update README to document all
vulnerability patterns and the expanded tech stack.
}

public String render(String name, String content) throws IOException, TemplateException {
Template template = new Template(name, new StringReader(content), templateConfig);

Check failure

Code scanning / OpenTaint

Unvalidated user data flows into template engine Error

Potential template injection: unvalidated user data flows into template engine
}

public String render(String name, String content) throws IOException, TemplateException {
Template template = new Template(name, new StringReader(content), templateConfig);

Check failure

Code scanning / OpenTaint

Unvalidated user data flows into template engine Error

Potential template injection: unvalidated user data flows into template engine
Context context = new Context();
context.setVariable("appName", "Demo Application");

return templateEngine.process(templateContent, context);

Check failure

Code scanning / OpenTaint

Unvalidated user data flows into template engine Error

Potential template injection: unvalidated user data flows into template engine
Comment on lines +57 to +59
return ResponseEntity.ok()
.contentType(MediaType.TEXT_HTML)
.body(content);

Check failure

Code scanning / OpenTaint

Potential cross-site scripting (XSS) Error

Potential XSS: writing user input directly to a web page.
Comment on lines +96 to +98
return ResponseEntity.ok()
.contentType(MediaType.TEXT_HTML)
.body(title);

Check failure

Code scanning / OpenTaint

Potential cross-site scripting (XSS) Error

Potential XSS: writing user input directly to a web page.
Comment on lines +131 to +133
return ResponseEntity.ok()
.contentType(MediaType.TEXT_HTML)
.body(content);

Check failure

Code scanning / OpenTaint

Potential cross-site scripting (XSS) Error

Potential XSS: writing user input directly to a web page.
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