-
Notifications
You must be signed in to change notification settings - Fork 284
Expand file tree
/
Copy pathversion_info.py
More file actions
101 lines (91 loc) · 6 KB
/
Copy pathversion_info.py
File metadata and controls
101 lines (91 loc) · 6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
"""
Contributors List
Format = [ Name, Blog-url, Twitter-handle, Github-url]
Leave blank if not available
"""
leapp_name = 'iLEAPP'
leapp_version = '2026.3.0-dev.0'
# Minimum protobuf runtime required by the vendored scripts/blackboxprotobuf and
# the security pin in requirements.txt. The PyPI 'blackboxprotobuf' package
# force-downgrades protobuf to 3.10.0 when installed into the same environment;
# iLEAPP uses the vendored scripts/blackboxprotobuf instead.
minimum_protobuf_version = '5.29.6'
def check_runtime_dependencies():
"""Warn loudly if the environment drifted from the pinned dependencies.
Called at startup by both ileapp.py and ileappGUI.py. Returns a list of
human-readable problem strings, empty when the environment is healthy.
"""
problems = []
def version_tuple(version):
return tuple(int(part) for part in version.split('.')[:3] if part.isdigit())
try:
from google.protobuf import __version__ as protobuf_version
except ImportError:
problems.append("protobuf is not installed. Run: pip install -r requirements.txt")
else:
if version_tuple(protobuf_version) < version_tuple(minimum_protobuf_version):
problems.append(
f"protobuf {protobuf_version} is older than the required {minimum_protobuf_version}. "
"Another package (commonly the PyPI 'blackboxprotobuf') likely downgraded it. "
"Protobuf-based artifacts will fail and patched CVEs are reintroduced. "
f"Fix with: pip install protobuf=={minimum_protobuf_version}")
try:
from PIL import Image # noqa: F401 pylint: disable=unused-import
except ImportError:
problems.append("Pillow is not installed or broken. Run: pip install -r requirements.txt")
for problem in problems:
print(f"DEPENDENCY WARNING: {problem}")
return problems
ileapp_contributors = [
['Alexis Brignoni', 'https://abrignoni.com', '@AlexisBrignoni', 'https://github.com/abrignoni'],
['Yogesh Khatri', 'https://swiftforensics.com', '@SwiftForensics', 'https://github.com/ydkhatri'],
['Agam Dua', 'https://loopback.dev', '@loopbackdev', 'https://github.com/agamdua'],
['Heather Mahalik', 'https://smarterforensics.com', '@HeatherMahalik', ''],
['Jessica Hyde', 'https://twitter.com/B1N2H3X', '@B1N2H3X', ''],
['Phill Moore', 'https://thinkdfir.com', '@phillmoore', 'https://github.com/randomaccess3'],
['Mattia Epifani', 'https://blog.digital-forensics.it', '@mattiaep', ''],
['Mike Williamson', 'https://forensicmike1.com', '@forensicmike1', 'https://github.com/forensicmike'],
['Geraldine Blay', 'https://gforce4n6.blogspot.com', '@i_am_the_gia', ''],
['Johann Polewczyk', 'https://www.linkedin.com/in/johann-polewczyk-6a905425/',
'@johannplw', 'https://github.com/Johann-PLW'],
['Christopher Vance', 'https://blog.d204n6.com/', '@cScottVance', 'https://github.com/cScottVance'],
['Brooke Gottlieb', '', '@xbrookego', ''],
['Jack Farley', 'http://farleyforensics.com', '@JackFarley248', ''],
['Shafik Punja', '', '@qubytelogic', ''],
['Cheeky4N6Monkey', 'https://cheeky4n6monkey.blogspot.com',
'@Cheeky4n6Monkey', 'https://github.com/cheeky4n6monkey'],
['Edward Greybeard', '', '', 'https://github.com/edward-greybeard'],
['Douglas Kein', '', '@DouglasKein', ''],
['Claudia Meda', '', '@KlodiaMaida', 'https://github.com/KlodiaMaida'],
['Silvia Spallarossa', '', '@SilviaSpallaro1', 'https://github.com/spatimbs'],
['Francesca Maestri', '', '@franc3sca_m', 'https://github.com/francyM'],
['Jesse Spangenberger', 'https://cyberfenixtech.blogspot.com/', '@AzuleOnyx', 'https://github.com/flamusdiu'],
['Jon Baumann', 'https://ciofecaforensics.com/', '@CiofecaForensic', 'https://github.com/threeplanetssoftware'],
['Scott Koenig', 'https://theforensicscooter.com/', '@Scott_Kjr', 'https://github.com/ScottKjr3347'],
['Kevin Pagano', 'https://startme.stark4n6.com/', '@KevinPagano3', 'https://github.com/stark4n6'],
['Ed Michael', '', '@EdXlg123', 'https://github.com/edmichael'],
['Anna-Mariya Mateyna', '', '@any333_snickers', 'https://github.com/any333'],
['Tommy Harris', '', '@tobraha', 'https://github.com/tobraha'],
['Troy Schnack', '', '@TroySchnack', ''],
['Bo Amos', '', '@Bo_Knows_65', ''],
['Joshua James', 'https://dfir.science', '@dfirscience', 'https://github.com/dfirscience'],
['Evangelos Dragonas', 'https://atropos4n6.com/', '@theAtropos4n6', 'https://github.com/theAtropos4n6'],
['Viktor Oreshkin', 'https://stek29.rocks/', '@stek29', 'https://gist.github.com/stek29'],
['James Habben', 'https://4n6ir.com/', '@JamesHabben', 'https://github.com/JamesHabben'],
['John Hyla', 'https://bluecrewforensics.com', '@jfhyla', 'https://github.com/snoop168'],
['Panos Nakoutis', '', '@4n6equals10', ''],
['Ruud Schramp', 'https://nfi.nl', '@idafanatic', 'https://github.com/Schramp'],
['Matt Beers', 'https://www.linkedin.com/in/mattbeersii', '', 'https://github.com/dabeersboys'],
['Django Faiola', 'https://djangofaiola.blogspot.com', '@DjangoFaiola', 'https://github.com/djangofaiola'],
['Marco Neumann', 'https://bebinary4n6.blogspot.com/', '@kalinko4n6', 'https://github.com/kalink0'],
['Bruno Fischer', 'https://german4n6.blogspot.com/', '', 'https://github.com/BrunoFischerGermany'],
['Christian Peter', 'https://www.linkedin.com/in/christian-peter-49b4ab182/',
'@DasZamomin', 'https://github.com/prosch88'],
['James McGee', 'https://sqlmcgee.wordpress.com/', '@SQL_McGee', 'https://github.com/sqlmcgee'],
['Metadata Forensics', 'https://metadataperspective.com/', '', 'https://github.com/metadataforensics/'],
['Bruno Constanzo', 'https://www.linkedin.com/in/bruno-constanzo/',
'@bruno_constanzo', 'https://github.com/bconstanzo/'],
['Marnix Kaart', '', '', 'https://github.com/mxkrt'],
['Arun Kalackattu Hari', 'https://dfdive.com/', '', 'https://github.com/ardfr'],
['Dielle De Noon', 'https://www.linkedin.com/in/dielle-d-350a0b186', '@Gear-I', 'https://github.com/Gear-I'],
]