22from typing import List , Any , Tuple
33
44from credsweeper .config .config import Config
5+ from credsweeper .deep_scanner .byte_scanner import ByteScanner
6+ from credsweeper .deep_scanner .bzip2_scanner import Bzip2Scanner
7+ from credsweeper .deep_scanner .csv_scanner import CsvScanner
8+ from credsweeper .deep_scanner .deb_scanner import DebScanner
9+ from credsweeper .deep_scanner .docx_scanner import DocxScanner
10+ from credsweeper .deep_scanner .eml_scanner import EmlScanner
11+ from credsweeper .deep_scanner .encoder_scanner import EncoderScanner
12+ from credsweeper .deep_scanner .gzip_scanner import GzipScanner
13+ from credsweeper .deep_scanner .html_scanner import HtmlScanner
14+ from credsweeper .deep_scanner .jclass_scanner import JclassScanner
15+ from credsweeper .deep_scanner .jks_scanner import JksScanner
16+ from credsweeper .deep_scanner .lang_scanner import LangScanner
17+ from credsweeper .deep_scanner .lzma_scanner import LzmaScanner
18+ from credsweeper .deep_scanner .mxfile_scanner import MxfileScanner
19+ from credsweeper .deep_scanner .patch_scanner import PatchScanner
20+ from credsweeper .deep_scanner .pdf_scanner import PdfScanner
21+ from credsweeper .deep_scanner .pkcs_scanner import PkcsScanner
22+ from credsweeper .deep_scanner .png_scanner import PngScanner
23+ from credsweeper .deep_scanner .pptx_scanner import PptxScanner
24+ from credsweeper .deep_scanner .rpm_scanner import RpmScanner
25+ from credsweeper .deep_scanner .rtf_scanner import RtfScanner
26+ from credsweeper .deep_scanner .sqlite3_scanner import Sqlite3Scanner
27+ from credsweeper .deep_scanner .strings_scanner import StringsScanner
28+ from credsweeper .deep_scanner .tar_scanner import TarScanner
29+ from credsweeper .deep_scanner .tmx_scanner import TmxScanner
30+ from credsweeper .deep_scanner .xlsx_scanner import XlsxScanner
31+ from credsweeper .deep_scanner .xml_scanner import XmlScanner
32+ from credsweeper .deep_scanner .zip_scanner import ZipScanner
33+ from credsweeper .file_handler .descriptor import Descriptor
534from credsweeper .scanner .scanner import Scanner
635from credsweeper .utils .util import Util
7- from .byte_scanner import ByteScanner
8- from .bzip2_scanner import Bzip2Scanner
9- from .csv_scanner import CsvScanner
10- from .deb_scanner import DebScanner
11- from .docx_scanner import DocxScanner
12- from .eml_scanner import EmlScanner
13- from .encoder_scanner import EncoderScanner
14- from .gzip_scanner import GzipScanner
15- from .html_scanner import HtmlScanner
16- from .jclass_scanner import JclassScanner
17- from .jks_scanner import JksScanner
18- from .lang_scanner import LangScanner
19- from .lzma_scanner import LzmaScanner
20- from .mxfile_scanner import MxfileScanner
21- from .patch_scanner import PatchScanner
22- from .pdf_scanner import PdfScanner
23- from .pkcs_scanner import PkcsScanner
24- from .png_scanner import PngScanner
25- from .pptx_scanner import PptxScanner
26- from .rpm_scanner import RpmScanner
27- from .rtf_scanner import RtfScanner
28- from .sqlite3_scanner import Sqlite3Scanner
29- from .strings_scanner import StringsScanner
30- from .tar_scanner import TarScanner
31- from .tmx_scanner import TmxScanner
32- from .xlsx_scanner import XlsxScanner
33- from .xml_scanner import XmlScanner
34- from .zip_scanner import ZipScanner
35- from ..file_handler .descriptor import Descriptor
3636
3737logger = logging .getLogger (__name__ )
3838
@@ -49,6 +49,8 @@ class DeepScanner(
4949 JksScanner , #
5050 LangScanner , #
5151 LzmaScanner , #
52+ MxfileScanner , #
53+ EmlScanner , #
5254 PatchScanner , #
5355 PdfScanner , #
5456 PkcsScanner , #
@@ -89,7 +91,7 @@ def get_deep_scanners(data: bytes, descriptor: Descriptor, depth: int) -> Tuple[
8991 """Returns possibly scan methods for the data depends on content and fallback scanners"""
9092 deep_scanners : List [Any ] = []
9193 fallback_scanners : List [Any ] = []
92- if Util . is_zip (data ):
94+ if ZipScanner . match (data ):
9395 if 0 < depth :
9496 deep_scanners .append (ZipScanner )
9597 # probably, there might be a docx, xlsx and so on.
@@ -106,62 +108,62 @@ def get_deep_scanners(data: bytes, descriptor: Descriptor, depth: int) -> Tuple[
106108 deep_scanners .append (PptxScanner )
107109 else :
108110 fallback_scanners .append (PptxScanner )
109- elif Util . is_com (data ):
111+ elif XlsxScanner . match (data ):
110112 if ".xls" == descriptor .extension :
111113 deep_scanners .append (XlsxScanner )
112114 else :
113115 fallback_scanners .append (XlsxScanner )
114- elif Util . is_bzip2 (data ):
116+ elif Bzip2Scanner . match (data ):
115117 if 0 < depth :
116118 deep_scanners .append (Bzip2Scanner )
117- elif Util . is_lzma (data ):
119+ elif LzmaScanner . match (data ):
118120 if 0 < depth :
119121 deep_scanners .append (LzmaScanner )
120- elif Util . is_tar (data ):
122+ elif TarScanner . match (data ):
121123 if 0 < depth :
122124 deep_scanners .append (TarScanner )
123- elif Util . is_deb (data ):
125+ elif DebScanner . match (data ):
124126 if 0 < depth :
125127 deep_scanners .append (DebScanner )
126- elif Util . is_gzip (data ):
128+ elif GzipScanner . match (data ):
127129 if 0 < depth :
128130 deep_scanners .append (GzipScanner )
129- elif Util . is_pdf (data ):
131+ elif PdfScanner . match (data ):
130132 deep_scanners .append (PdfScanner )
131- elif Util . is_png (data ):
133+ elif PngScanner . match (data ):
132134 deep_scanners .append (PngScanner )
133- elif Util . is_rpm (data ):
135+ elif RpmScanner . match (data ):
134136 if 0 < depth :
135137 deep_scanners .append (RpmScanner )
136- elif Util . is_jclass (data ):
138+ elif JclassScanner . match (data ):
137139 deep_scanners .append (JclassScanner )
138- elif Util . is_jks (data ):
140+ elif JksScanner . match (data ):
139141 deep_scanners .append (JksScanner )
140- elif Util . is_sqlite3 (data ):
142+ elif Sqlite3Scanner . match (data ):
141143 if 0 < depth :
142144 deep_scanners .append (Sqlite3Scanner )
143- elif Util . is_asn1 (data ):
145+ elif PkcsScanner . match (data ):
144146 deep_scanners .append (PkcsScanner )
145- elif Util . is_rtf (data ):
147+ elif RtfScanner . match (data ):
146148 deep_scanners .append (RtfScanner )
147149 fallback_scanners .append (ByteScanner )
148- elif Util . is_xml (data ):
149- if Util . is_html (data ):
150+ elif XmlScanner . match (data ):
151+ if HtmlScanner . match (data ):
150152 deep_scanners .append (HtmlScanner )
151153 deep_scanners .append (XmlScanner )
152154 fallback_scanners .append (ByteScanner )
153- elif Util . is_mxfile (data ):
155+ elif MxfileScanner . match (data ):
154156 deep_scanners .append (MxfileScanner )
155157 deep_scanners .append (XmlScanner )
156158 fallback_scanners .append (ByteScanner )
157- elif Util . is_tmx (data ):
159+ elif TmxScanner . match (data ):
158160 deep_scanners .append (TmxScanner )
159161 fallback_scanners .append (XmlScanner )
160162 fallback_scanners .append (ByteScanner )
161163 else :
162164 deep_scanners .append (XmlScanner )
163165 fallback_scanners .append (ByteScanner )
164- elif Util . is_eml (data ):
166+ elif EmlScanner . match (data ):
165167 if descriptor .extension in (".eml" , ".mht" ):
166168 deep_scanners .append (EmlScanner )
167169 else :
0 commit comments