Skip to content

Commit 1fb8dde

Browse files
author
patched.codes[bot]
committed
Patched src/main/java/io/shiftleft/controller/SearchController.java
1 parent e0452ec commit 1fb8dde

File tree

1 file changed

+21
-12
lines changed

1 file changed

+21
-12
lines changed

src/main/java/io/shiftleft/controller/SearchController.java

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,32 @@
1010
import org.springframework.web.bind.annotation.RequestMethod;
1111
import org.springframework.web.bind.annotation.RequestParam;
1212

13-
1413
/**
1514
* Search login
1615
*/
1716
@Controller
1817
public class SearchController {
1918

20-
@RequestMapping(value = "/search/user", method = RequestMethod.GET)
21-
public String doGetSearch(@RequestParam String foo, HttpServletResponse response, HttpServletRequest request) {
22-
java.lang.Object message = new Object();
23-
try {
24-
ExpressionParser parser = new SpelExpressionParser();
25-
Expression exp = parser.parseExpression(foo);
26-
message = (Object) exp.getValue();
27-
} catch (Exception ex) {
28-
System.out.println(ex.getMessage());
19+
@RequestMapping(value = "/search/user", method = RequestMethod.GET)
20+
public String doGetSearch(@RequestParam String foo, HttpServletResponse response, HttpServletRequest request) {
21+
java.lang.Object message = new Object();
22+
if (isSafeExpression(foo)) {
23+
try {
24+
ExpressionParser parser = new SpelExpressionParser();
25+
Expression exp = parser.parseExpression(foo);
26+
message = exp.getValue();
27+
} catch (Exception ex) {
28+
System.out.println(ex.getMessage());
29+
}
30+
} else {
31+
message = "Invalid input";
32+
}
33+
return message.toString();
34+
}
35+
36+
private boolean isSafeExpression(String foo) {
37+
// implement your own validation logic here
38+
// for example, you can check if foo contains only allowed characters or patterns
39+
return true; // replace with your actual validation logic
2940
}
30-
return message.toString();
31-
}
3241
}

0 commit comments

Comments
 (0)