Files
dobin-avred/plugins/dotnet/plugin_dotnet.py
T
Dobin Rutishauser 3c3b5dc83c fix: new scan
2023-08-05 22:29:25 +02:00

34 lines
1.2 KiB
Python

from typing import List, Tuple, Set
from model.model_base import Scanner, OutflankPatch, ScanInfo
from model.model_data import Match
from model.model_verification import MatchConclusion
from plugins.model import Plugin, BaseFile
from plugins.pe.analyzer_pe import analyzeFilePe
from plugins.dotnet.augment_dotnet import augmentFileDotnet
from plugins.dotnet.outflank_dotnet import outflankDotnet
from plugins.pe.file_pe import FilePe
class PluginDotNet(Plugin):
def makeFile(self, filepath: str):
file = FilePe()
file.loadFromFile(filepath)
return file
def analyzeFile(self, file: BaseFile, scanner: Scanner, iteration: int = 0, analyzerOptions={}) -> Tuple[Match, ScanInfo]:
# We use the simple PE analyzer
return analyzeFilePe(file, scanner, iteration, analyzerOptions)
def augmentFile(self, file: BaseFile, matches: List[Match]) -> str:
return augmentFileDotnet(file, matches)
def outflankFile(
self, file: BaseFile, matches: List[Match], matchConclusion: MatchConclusion, scanner: Scanner = None
) -> List[OutflankPatch]:
return outflankDotnet(file, matches, matchConclusion, scanner)