Skip to content

Commit 110e6bc

Browse files
committed
Sanitizes user inputs to prevent XSS
1 parent 0b299dd commit 110e6bc

2 files changed

Lines changed: 9 additions & 8 deletions

File tree

core-tests/e2e-tests/spring-rest-openapi-v2/src/main/java/com/foo/rest/examples/spring/endpointfocusandprefix/EndpointFocusAndPrefixRest.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import org.springframework.web.bind.annotation.RequestMethod;
1010
import org.springframework.web.bind.annotation.PathVariable;
1111
import org.springframework.web.bind.annotation.RequestBody;
12+
import org.springframework.web.util.HtmlUtils;
1213

1314
import javax.ws.rs.core.MediaType;
1415
import java.util.Arrays;
@@ -154,7 +155,7 @@ public String placeOrder() {
154155
public String getUserByName( @ApiParam("username to retrieve")
155156
@PathVariable("username")
156157
String name) {
157-
return "Retrieved information for the user " + name;
158+
return "Retrieved information for the user " + HtmlUtils.htmlEscape(String.valueOf(name));
158159
}
159160

160161
@ApiOperation("Update information about a user")
@@ -167,7 +168,7 @@ public String updateUserInformation(
167168
@ApiParam("username to update")
168169
@PathVariable("username")
169170
String name) {
170-
return "Updated information for the user " + name;
171+
return "Updated information for the user " + HtmlUtils.htmlEscape(String.valueOf(name));
171172
}
172173

173174
@ApiOperation("Delete information about a user")
@@ -180,7 +181,7 @@ public String deleteUserInformation(
180181
@ApiParam("username to delete")
181182
@PathVariable("username")
182183
String name) {
183-
return "Deleted information for the user " + name;
184+
return "Deleted information for the user " + HtmlUtils.htmlEscape(String.valueOf(name));
184185
}
185186

186187
@ApiOperation("Create a new user")
@@ -207,10 +208,10 @@ public String createUserWithList(
207208
for(EndpointFocusAndPrefixRestDTO dto : userlist) {
208209

209210
reportBuilder.append("-------\n");
210-
reportBuilder.append("ID: ").append(dto.id).append("\n");
211-
reportBuilder.append("Username: ").append(dto.userName).append("\n");
212-
reportBuilder.append("Firstname: ").append(dto.firstName).append("\n");
213-
reportBuilder.append("Lastname: ").append(dto.lastName).append("\n");
211+
reportBuilder.append("ID: ").append(HtmlUtils.htmlEscape(String.valueOf(dto.id))).append("\n");
212+
reportBuilder.append("Username: ").append(HtmlUtils.htmlEscape(dto.userName)).append("\n");
213+
reportBuilder.append("Firstname: ").append(HtmlUtils.htmlEscape(dto.firstName)).append("\n");
214+
reportBuilder.append("Lastname: ").append(HtmlUtils.htmlEscape(dto.lastName)).append("\n");
214215
reportBuilder.append("-------\n");
215216
}
216217
String report = reportBuilder.toString();

core-tests/e2e-tests/spring-rest-openapi-v2/src/test/java/org/evomaster/e2etests/spring/examples/endpointfocusandprefix/EndpointFocusAndPrefixTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ public void testRunBlackboxWithPrefixWithoutParameters() throws Throwable {
255255
assertAllSolutionsHavePathFocusOrPrefixList(solution, pathsToCheck, false);
256256

257257
// The solution should include 8 solutions, 7 endpoints and 1 failure case
258-
assertEquals(solution.getIndividuals().size(), 8);
258+
assertEquals(8, solution.getIndividuals().size());
259259

260260
// write test into the output folder
261261
compile(outputFolder);

0 commit comments

Comments
 (0)