Skip to content

Commit def0f47

Browse files
author
Alvaro Muñoz
committed
Refactor Partial Path Queries
1 parent ff006d0 commit def0f47

File tree

18 files changed

+106
-72
lines changed

18 files changed

+106
-72
lines changed

cpp/src/audit/templates/BackwardsPartialDataFlow.ql

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
/**
22
* @name Backwards Partial Dataflow
33
* @description Backwards Partial Dataflow
4-
* @kind table
4+
* @kind path-problem
5+
* @precision low
6+
* @problem.severity error
57
* @id githubsecuritylab/backwards-partial-dataflow
68
* @tags template
79
*/
@@ -27,8 +29,9 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2729

2830
int explorationLimit() { result = 10 }
2931

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
32+
private module PartialFlow = MyFlow::FlowExplorationRev<explorationLimit/0>;
3133

32-
from PartialFlow::PartialPathNode n, int dist
33-
where PartialFlow::partialFlowRev(n, _, dist)
34-
select dist, n
34+
from PartialFlow::PartialPathNode source, PartialFlow::PartialPathNode sink
35+
where PartialFlow::partialFlow(source, sink, _)
36+
select sink.getNode(), source, sink, "This node receives taint from $@.", source.getNode(),
37+
"this source"

cpp/src/audit/templates/ForwardPartialDataflow.ql

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
/**
22
* @name Forward Partial Dataflow
33
* @description Forward Partial Dataflow
4-
* @kind table
4+
* @kind path-problem
5+
* @precision low
6+
* @problem.severity error
57
* @id githubsecuritylab/forward-partial-dataflow
68
* @tags template
79
*/
@@ -27,8 +29,9 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2729

2830
int explorationLimit() { result = 10 }
2931

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
32+
private module PartialFlow = MyFlow::FlowExplorationFwd<explorationLimit/0>;
3133

32-
from PartialFlow::PartialPathNode n, int dist
33-
where PartialFlow::partialFlow(_, n, dist)
34-
select dist, n
34+
from PartialFlow::PartialPathNode source, PartialFlow::PartialPathNode sink
35+
where PartialFlow::partialFlow(source, sink, _)
36+
select sink.getNode(), source, sink, "This node receives taint from $@.", source.getNode(),
37+
"this source"

cpp/src/audit/templates/HoistSink.ql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2727

2828
int explorationLimit() { result = 10 }
2929

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
30+
private module PartialFlow = MyFlow::FlowExplorationRev<explorationLimit/0>;
3131

3232
from PartialFlow::PartialPathNode n, int dist
3333
where
34-
PartialFlow::partialFlowRev(n, _, dist) and
34+
PartialFlow::partialFlow(n, _, dist) and
3535
n.getNode() instanceof DataFlow::ParameterNode
3636
select dist, n

csharp/src/audit/templates/BackwardsPartialDataFlow.ql

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
/**
22
* @name Backwards Partial Dataflow
33
* @description Backwards Partial Dataflow
4-
* @kind table
4+
* @kind path-problem
5+
* @precision low
6+
* @problem.severity error
57
* @id githubsecuritylab/backwards-partial-dataflow
68
* @tags template
79
*/
@@ -27,8 +29,9 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2729

2830
int explorationLimit() { result = 10 }
2931

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
32+
private module PartialFlow = MyFlow::FlowExplorationRev<explorationLimit/0>;
3133

32-
from PartialFlow::PartialPathNode n, int dist
33-
where PartialFlow::partialFlowRev(n, _, dist)
34-
select dist, n
34+
from PartialFlow::PartialPathNode source, PartialFlow::PartialPathNode sink
35+
where PartialFlow::partialFlow(source, sink, _)
36+
select sink.getNode(), source, sink, "This node receives taint from $@.", source.getNode(),
37+
"this source"

csharp/src/audit/templates/ForwardPartialDataflow.ql

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
/**
22
* @name Forward Partial Dataflow
33
* @description Forward Partial Dataflow
4-
* @kind table
4+
* @kind path-problem
5+
* @precision low
6+
* @problem.severity error
57
* @id githubsecuritylab/forward-partial-dataflow
68
* @tags template
79
*/
@@ -27,8 +29,9 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2729

2830
int explorationLimit() { result = 10 }
2931

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
32+
private module PartialFlow = MyFlow::FlowExplorationFwd<explorationLimit/0>;
3133

32-
from PartialFlow::PartialPathNode n, int dist
33-
where PartialFlow::partialFlow(_, n, dist)
34-
select dist, n
34+
from PartialFlow::PartialPathNode source, PartialFlow::PartialPathNode sink
35+
where PartialFlow::partialFlow(source, sink, _)
36+
select sink.getNode(), source, sink, "This node receives taint from $@.", source.getNode(),
37+
"this source"

csharp/src/audit/templates/HoistSink.ql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2727

2828
int explorationLimit() { result = 10 }
2929

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
30+
private module PartialFlow = MyFlow::FlowExplorationRev<explorationLimit/0>;
3131

3232
from PartialFlow::PartialPathNode n, int dist
3333
where
34-
PartialFlow::partialFlowRev(n, _, dist) and
34+
PartialFlow::partialFlow(n, _, dist) and
3535
exists(Parameter p | n.getNode().asParameter() = p)
3636
select dist, n

go/src/audit/templates/BackwardsPartialDataFlow.ql

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
/**
22
* @name Backwards Partial Dataflow
33
* @description Backwards Partial Dataflow
4-
* @kind table
4+
* @kind path-problem
5+
* @precision low
6+
* @problem.severity error
57
* @id githubsecuritylab/backwards-partial-dataflow
68
* @tags template
79
*/
@@ -27,8 +29,9 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2729

2830
int explorationLimit() { result = 10 }
2931

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
32+
private module PartialFlow = MyFlow::FlowExplorationRev<explorationLimit/0>;
3133

32-
from PartialFlow::PartialPathNode n, int dist
33-
where PartialFlow::partialFlowRev(n, _, dist)
34-
select dist, n
34+
from PartialFlow::PartialPathNode source, PartialFlow::PartialPathNode sink
35+
where PartialFlow::partialFlow(source, sink, _)
36+
select sink.getNode(), source, sink, "This node receives taint from $@.", source.getNode(),
37+
"this source"

go/src/audit/templates/ForwardPartialDataflow.ql

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
/**
22
* @name Forward Partial Dataflow
33
* @description Forward Partial Dataflow
4-
* @kind table
4+
* @kind path-problem
5+
* @precision low
6+
* @problem.severity error
57
* @id githubsecuritylab/forward-partial-dataflow
68
* @tags template
79
*/
@@ -27,8 +29,9 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2729

2830
int explorationLimit() { result = 10 }
2931

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
32+
private module PartialFlow = MyFlow::FlowExplorationFwd<explorationLimit/0>;
3133

32-
from PartialFlow::PartialPathNode n, int dist
33-
where PartialFlow::partialFlow(_, n, dist)
34-
select dist, n
34+
from PartialFlow::PartialPathNode source, PartialFlow::PartialPathNode sink
35+
where PartialFlow::partialFlow(source, sink, _)
36+
select sink.getNode(), source, sink, "This node receives taint from $@.", source.getNode(),
37+
"this source"

go/src/audit/templates/HoistSink.ql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Make<..
2727

2828
int explorationLimit() { result = 10 }
2929

30-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
30+
private module PartialFlow = MyFlow::FlowExplorationRev<explorationLimit/0>;
3131

3232
from PartialFlow::PartialPathNode n, int dist
3333
where
34-
PartialFlow::partialFlowRev(n, _, dist) and
34+
PartialFlow::partialFlow(n, _, dist) and
3535
n.getNode() instanceof DataFlow::ParameterNode
3636
select dist, n

java/src/audit/templates/BackwardsPartialDataFlow.ql

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/**
22
* @name Backwards Partial Dataflow
33
* @description Backwards Partial Dataflow
4-
* @kind table
4+
* @kind path-problem
55
* @id githubsecuritylab/backwards-partial-dataflow
66
* @tags template
77
*/
@@ -28,8 +28,9 @@ private module MyFlow = TaintTracking::Global<MyConfig>; // or DataFlow::Global<
2828

2929
int explorationLimit() { result = 10 }
3030

31-
private module PartialFlow = MyFlow::FlowExploration<explorationLimit/0>;
31+
private module PartialFlow = MyFlow::FlowExplorationRev<explorationLimit/0>;
3232

33-
from PartialFlow::PartialPathNode n, int dist
34-
where PartialFlow::partialFlowRev(n, _, dist)
35-
select dist, n
33+
from PartialFlow::PartialPathNode source, PartialFlow::PartialPathNode sink
34+
where PartialFlow::partialFlow(source, sink, _)
35+
select sink.getNode(), source, sink, "This node receives taint from $@.", source.getNode(),
36+
"this source"

0 commit comments

Comments
 (0)