public class StopAfterFirstKFlowsPropagationRule extends AbstractTaintPropagationRule
manager, results, zeroValue| 构造器和说明 |
|---|
StopAfterFirstKFlowsPropagationRule(InfoflowManager manager,
Abstraction zeroValue,
TaintPropagationResults results) |
| 限定符和类型 | 方法和说明 |
|---|---|
Collection<Abstraction> |
propagateCallFlow(Abstraction d1,
Abstraction source,
soot.jimple.Stmt stmt,
soot.SootMethod dest,
ByReferenceBoolean killAll)
Propagates a flow across a call site
|
Collection<Abstraction> |
propagateCallToReturnFlow(Abstraction d1,
Abstraction source,
soot.jimple.Stmt stmt,
ByReferenceBoolean killSource,
ByReferenceBoolean killAll)
Propagates a flow along a the call-to-return edge at a call site
|
Collection<Abstraction> |
propagateNormalFlow(Abstraction d1,
Abstraction source,
soot.jimple.Stmt stmt,
soot.jimple.Stmt destStmt,
ByReferenceBoolean killSource,
ByReferenceBoolean killAll)
Propagates a flow along a normal statement this is not a call or return
site
|
Collection<Abstraction> |
propagateReturnFlow(Collection<Abstraction> callerD1s,
Abstraction source,
soot.jimple.Stmt stmt,
soot.jimple.Stmt retSite,
soot.jimple.Stmt callSite,
ByReferenceBoolean killAll)
Propagates a flow along a the return edge
|
getAliasing, getManager, getResults, getZeroValuepublic StopAfterFirstKFlowsPropagationRule(InfoflowManager manager, Abstraction zeroValue, TaintPropagationResults results)
public Collection<Abstraction> propagateNormalFlow(Abstraction d1, Abstraction source, soot.jimple.Stmt stmt, soot.jimple.Stmt destStmt, ByReferenceBoolean killSource, ByReferenceBoolean killAll)
ITaintPropagationRuled1 - The context abstractionsource - The abstraction to propagate over the statementstmt - The statement at which to propagate the abstractiondestStmt - The next statement to which control flow will continue after
processing stmtkillSource - Outgoing value for the rule to specify whether
the incoming taint shall be killedkillAll - Outgoing value that receives whether all taints shall be
killed and nothing shall be propagated onwardspublic Collection<Abstraction> propagateCallFlow(Abstraction d1, Abstraction source, soot.jimple.Stmt stmt, soot.SootMethod dest, ByReferenceBoolean killAll)
ITaintPropagationRuled1 - The context abstractionsource - The abstraction to propagate over the statementstmt - The statement at which to propagate the abstractiondest - The destination method into which to propagate the abstractionkillAll - Outgoing value for the rule to specify whether
all taints shall be killed, i.e., nothing shall be propagatedpublic Collection<Abstraction> propagateCallToReturnFlow(Abstraction d1, Abstraction source, soot.jimple.Stmt stmt, ByReferenceBoolean killSource, ByReferenceBoolean killAll)
ITaintPropagationRuled1 - The context abstractionsource - The abstraction to propagate over the statementstmt - The statement at which to propagate the abstractionkillSource - Outgoing value for the rule to specify whether
the incoming taint shall be killedkillAll - Outgoing value for the rule to specify whether
all taints shall be killed, i.e., nothing shall be propagatedpublic Collection<Abstraction> propagateReturnFlow(Collection<Abstraction> callerD1s, Abstraction source, soot.jimple.Stmt stmt, soot.jimple.Stmt retSite, soot.jimple.Stmt callSite, ByReferenceBoolean killAll)
ITaintPropagationRulecallerD1s - The context abstraction at the caller sidesource - The abstraction to propagate over the statementstmt - The statement at which to propagate the abstractionretSite - The return site to which the execution returns after
leaving the current methodcallSite - The call site of the call from which we returnkillAll - Outgoing value for the rule to specify whether
all taints shall be killed, i.e., nothing shall be propagatedCopyright © 2022 Fraunhofer SIT. All rights reserved.