|
1 | 1 | import glob
|
2 | 2 | import importlib
|
3 | 3 | import inspect
|
| 4 | +import logging |
4 | 5 | import os
|
5 | 6 | import pkgutil
|
6 | 7 | from pathlib import Path
|
7 | 8 |
|
8 | 9 | from lib.cuckoo.common.config import Config
|
9 | 10 |
|
| 11 | +log = logging.getLogger(__name__) |
| 12 | + |
10 | 13 | integrations_conf = Config("integrations")
|
11 | 14 |
|
12 | 15 |
|
@@ -42,7 +45,7 @@ def ratdecodedr_load_decoders(path: str):
|
42 | 45 | try:
|
43 | 46 | module = importlib.import_module(module_name)
|
44 | 47 | except ImportError as e:
|
45 |
| - print(f"Unable to import Module {module_name}: {e}") |
| 48 | + log.error("Unable to import Module %s - %s", module_name, e) |
46 | 49 | continue
|
47 | 50 |
|
48 | 51 | for mod_name, mod_object in inspect.getmembers(module):
|
@@ -103,11 +106,11 @@ def cape_load_custom_decoders(CUCKOO_ROOT: str):
|
103 | 106 | # For example, a cape_type of "Emotet Payload" would trigger a config parser named "Emotet.py".
|
104 | 107 | cape_modules[name.replace("_", " ")] = importlib.import_module(f"{versions[version]}.{name}")
|
105 | 108 | except (ImportError, IndexError, AttributeError) as e:
|
106 |
| - print(f"CAPE parser: No module named {name} - {e}") |
| 109 | + log.error("CAPE parser: No module named %s - %s", name, e) |
107 | 110 | except SyntaxError as e:
|
108 |
| - print(f"CAPE parser: Fix your code in {name} - {e}") |
| 111 | + log.error("CAPE parser: Fix your code in %s - %s", name, e) |
109 | 112 | except Exception as e:
|
110 |
| - print(f"CAPE parser: Fix your code in {name} - {e}") |
| 113 | + log.error("CAPE parser: Fix your code in %s - %s", name, e) |
111 | 114 |
|
112 | 115 | return cape_modules
|
113 | 116 |
|
@@ -135,7 +138,7 @@ def malduck_load_decoders(CUCKOO_ROOT: str):
|
135 | 138 | try:
|
136 | 139 | malduck_modules[name] = importlib.import_module(f"modules.processing.parsers.malduck.{name}")
|
137 | 140 | except (ImportError, IndexError) as e:
|
138 |
| - print(f"malduck parser: No module named {name} - {e}") |
| 141 | + log.error("malduck parser: No module named %s - %s", name, e) |
139 | 142 |
|
140 | 143 | return malduck_modules
|
141 | 144 |
|
@@ -174,7 +177,7 @@ def file_extra_info_load_modules(CUCKOO_ROOT: str):
|
174 | 177 | continue
|
175 | 178 | file_extra_modules.append(module)
|
176 | 179 | except (ImportError, IndexError, AttributeError) as e:
|
177 |
| - print(f"file_extra_info module: No module named {name} - {e}") |
| 180 | + log.error("file_extra_info module: No module named %s - %s", name, e) |
178 | 181 |
|
179 | 182 | return file_extra_modules
|
180 | 183 |
|
@@ -218,13 +221,15 @@ def load_downloaders(CUCKOO_ROOT: str):
|
218 | 221 | for name in names:
|
219 | 222 | try:
|
220 | 223 | module = importlib.import_module(f"{versions[version]}.{name}")
|
221 |
| - # config under [abusech] |
222 |
| - if name == "malwarebazaar" and not getattr(module, "enabled", False) and not integrations_conf.__dict__.get("abusech", {}).get("malwarebazaar", False): |
223 |
| - continue |
224 |
| - elif not getattr(module, "enabled", False) and not integrations_conf.__dict__.get(name, {}).get("enabled", False): |
225 |
| - continue |
| 224 | + if name == "malwarebazaar": |
| 225 | + # config under [abusech] |
| 226 | + if not integrations_conf.__dict__.get("abusech", {}).get("malwarebazaar", False): |
| 227 | + continue |
| 228 | + else: |
| 229 | + if not getattr(module, "enabled", False) and not integrations_conf.__dict__.get(name, {}).get("enabled", False): |
| 230 | + continue |
226 | 231 | downloaders[name] = module
|
227 | 232 | except (ImportError, IndexError, AttributeError) as e:
|
228 |
| - print(f"Downloader: No module named {name} - {e}") |
| 233 | + log.error("Downloader: No module named %s - %s", name, e) |
229 | 234 |
|
230 | 235 | return downloaders
|
0 commit comments