diff --git a/aperisolve/analyzers/binwalk.py b/aperisolve/analyzers/binwalk.py index f235b49..caf755a 100644 --- a/aperisolve/analyzers/binwalk.py +++ b/aperisolve/analyzers/binwalk.py @@ -20,7 +20,7 @@ class BinwalkAnalyzer(SubprocessAnalyzer): return self.output_dir / f"_{self.input_img.name}.extracted" def is_error(self, returncode: int, stdout: str, stderr: str, zip_exist: bool) -> bool: - return len(stderr) > 0 and not zip_exist and False + return len(stderr) > 0 and not zip_exist def analyze_binwalk(input_img: Path, output_dir: Path) -> None: diff --git a/aperisolve/analyzers/image_resize.py b/aperisolve/analyzers/image_resize.py index 826d52d..4b4a12a 100644 --- a/aperisolve/analyzers/image_resize.py +++ b/aperisolve/analyzers/image_resize.py @@ -96,7 +96,7 @@ class ResizeAnalyzer(SubprocessAnalyzer): found, it recovers and saves PNG images with the matched dimensions. Returns: - None + dict[str, Any]: A dictionary containing the analysis status, any error message, Raises: Handles exceptions gracefully by updating output data with error status. @@ -165,6 +165,6 @@ class ResizeAnalyzer(SubprocessAnalyzer): def analyze_image_resize(input_img: Path, output_dir: Path) -> None: - """Analyze an image submission using outguess.""" + """Analyze an image submission using ResizeAnalyzer.""" analyzer = ResizeAnalyzer(input_img, output_dir) analyzer.analyze() diff --git a/aperisolve/analyzers/steghide.py b/aperisolve/analyzers/steghide.py index aa15f52..c1785c2 100644 --- a/aperisolve/analyzers/steghide.py +++ b/aperisolve/analyzers/steghide.py @@ -30,7 +30,8 @@ class SteghideAnalyzer(SubprocessAnalyzer): match = re.search(r'embedded file "([^"]+)"', data.stdout) assert match is not None hidden_file = match.group(1) - outfile = str(self.get_extracted_dir() / hidden_file) + safe_hidden_file = Path(hidden_file).name + outfile = str(self.get_extracted_dir() / safe_hidden_file) cmd = ["steghide", "extract", "-sf", self.img, "-xf", outfile, "-p", password] return cmd diff --git a/aperisolve/analyzers/template_analyzer.py b/aperisolve/analyzers/template_analyzer.py index 7785397..cb5306a 100644 --- a/aperisolve/analyzers/template_analyzer.py +++ b/aperisolve/analyzers/template_analyzer.py @@ -9,7 +9,7 @@ from typing import Optional from .base_analyzer import SubprocessAnalyzer -class TemplateAnalyze(SubprocessAnalyzer): +class TemplateAnalyzer(SubprocessAnalyzer): """Analyzer for .""" def __init__(self, input_img: Path, output_dir: Path) -> None: @@ -23,7 +23,7 @@ class TemplateAnalyze(SubprocessAnalyzer): def analyze_template(input_img: Path, output_dir: Path, password: Optional[str] = None) -> None: """Analyze an image submission using .""" - analyzer = TemplateAnalyze(input_img, output_dir) + analyzer = TemplateAnalyzer(input_img, output_dir) if password: analyzer.analyze(password) else: diff --git a/aperisolve/analyzers/zsteg.py b/aperisolve/analyzers/zsteg.py index 3d111ad..df67ef4 100644 --- a/aperisolve/analyzers/zsteg.py +++ b/aperisolve/analyzers/zsteg.py @@ -1,7 +1,7 @@ # flake8: noqa: E203,E501,W503 # pylint: disable=C0413,W0718,R0903,R0801 # mypy: disable-error-code=unused-awaitable -"""Strings Analyzer for Image Submissions.""" +"""Zsteg Analyzer for Image Submissions.""" from pathlib import Path