mirror of
https://github.com/github/codeql.git
synced 2025-12-20 18:56:32 +01:00
35 lines
939 B
Plaintext
35 lines
939 B
Plaintext
/**
|
|
* @kind problem
|
|
*/
|
|
|
|
import javascript
|
|
import experimental.poi.PoI
|
|
import DataFlow
|
|
|
|
class RouteHandlerPoI extends ActivePoI {
|
|
RouteHandlerPoI() { this = "RouteHandlerPoI" }
|
|
|
|
override predicate is(Node l0) { l0 instanceof Express::RouteHandler }
|
|
}
|
|
|
|
class RouteHandlerAndSetupPoI extends ActivePoI {
|
|
RouteHandlerAndSetupPoI() { this = "RouteHandlerAndSetupPoI" }
|
|
|
|
override predicate is(Node l0, Node l1, string t1) {
|
|
l1.(Express::RouteSetup).getARouteHandler() = l0 and t1 = "setup"
|
|
}
|
|
}
|
|
|
|
class RouteSetupAndRouterAndRouteHandlerPoI extends ActivePoI {
|
|
RouteSetupAndRouterAndRouteHandlerPoI() { this = "RouteSetupAndRouterAndRouteHandlerPoI" }
|
|
|
|
override predicate is(Node l0, Node l1, string t1, Node l2, string t2) {
|
|
l0.(Express::RouteSetup).getRouter() = l1 and
|
|
t1 = "router" and
|
|
l0.(Express::RouteSetup).getARouteHandler() = l2 and
|
|
t2 = "routehandler"
|
|
}
|
|
}
|
|
|
|
query predicate problems = alertQuery/6;
|