mate.poi.analysis.PointerDisclosure module¶
- class mate.poi.analysis.PointerDisclosure.PointerDisclosure¶
Bases:
mate.poi.poi_types.Analysis
- class mate.poi.analysis.PointerDisclosure.PointerDisclosurePOI(*, insight: str, source: str = None, sink: str = None, salient_functions: List[mate_common.models.analyses.SalientFunction] = [])¶
Bases:
mate_common.models.analyses.POI
This POI represents a potential pointer address leak to a public output.
It consists of an LLVM pointer value and an output signature where that pointer might be leaked to the user.
- Parameters
insight (str) –
source (Optional[str]) –
sink (Optional[str]) –
salient_functions (List[mate_common.models.analyses.SalientFunction]) –
- Return type
None
- insight: str¶
A human-readable piece of “insight” for the POI, in Markdown format.
- salient_functions: List[SalientFunction]¶
A list of
SalientFunction
models.Each POI analysis determines which, if any, functions to include in this list.
- sink: Optional[str]¶
A human readable location string for the “sink” of the POI.
- source: Optional[str]¶
A human readable location string for the “source” of the POI.
- mate.poi.analysis.PointerDisclosure.compute_cfl_pointer_disclosure(session: Session, cpg: db.Graph) Iterable[Tuple[Instruction, Instruction, List[OutputSignature]]] ¶
- Parameters
- Return type
Iterable[Tuple[Instruction, Instruction, List[OutputSignature]]]
- mate.poi.analysis.PointerDisclosure.compute_pointer_disclosure(session: Session, cpg: db.Graph) Iterable[Tuple[Instruction, OutputSignature]] ¶
- Parameters
- Return type
Iterable[Tuple[Instruction, OutputSignature]]