Skip to content

Commit

Permalink
Merge pull request #10935 from github/nickrolfe/taint-step
Browse files Browse the repository at this point in the history
  • Loading branch information
nickrolfe authored Oct 21, 2022
2 parents 88c6453 + 9fb436e commit e566357
Show file tree
Hide file tree
Showing 6 changed files with 367 additions and 2 deletions.
4 changes: 4 additions & 0 deletions ruby/ql/lib/change-notes/2022-10-21-local-taint-step.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
category: minorAnalysis
---
* There was a bug in `TaintTracking::localTaint` and `TaintTracking::localTaintStep` such that they only tracked non-value-preserving flow steps. They have been fixed and now also include value-preserving steps.
Original file line number Diff line number Diff line change
Expand Up @@ -115,8 +115,8 @@ private module Cached {
*/
cached
predicate localTaintStepCached(DataFlow::Node nodeFrom, DataFlow::Node nodeTo) {
defaultAdditionalTaintStep(nodeFrom, nodeTo)
or
DataFlow::localFlowStep(nodeFrom, nodeTo) or
defaultAdditionalTaintStep(nodeFrom, nodeTo) or
// Simple flow through library code is included in the exposed local
// step relation, even though flow is technically inter-procedural
FlowSummaryImpl::Private::Steps::summaryThroughStepTaint(nodeFrom, nodeTo, _)
Expand Down
Loading

0 comments on commit e566357

Please sign in to comment.