Skip to content

Commit 0b261e1

Browse files
Merge pull request #89 from alexandreborges/dev
Malwoverview 7.1.2
2 parents 49d6d70 + 4ff3a31 commit 0b261e1

3 files changed

Lines changed: 26 additions & 18 deletions

File tree

README.md

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Malwoverview
22

3-
[<img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/alexandreborges/malwoverview?color=red&style=for-the-badge">](https://github.com/alexandreborges/malwoverview/releases/tag/v7.1.1) [<img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/alexandreborges/malwoverview?color=Yellow&style=for-the-badge">](https://github.com/alexandreborges/malwoverview/releases) [<img alt="GitHub Release Date" src="https://img.shields.io/github/release-date/alexandreborges/malwoverview?label=Release%20Date&style=for-the-badge">](https://github.com/alexandreborges/malwoverview/releases) [<img alt="GitHub" src="https://img.shields.io/github/license/alexandreborges/malwoverview?style=for-the-badge">](https://github.com/alexandreborges/malwoverview/blob/master/LICENSE)
3+
[<img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/alexandreborges/malwoverview?color=red&style=for-the-badge">](https://github.com/alexandreborges/malwoverview/releases/tag/v7.1.2) [<img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/alexandreborges/malwoverview?color=Yellow&style=for-the-badge">](https://github.com/alexandreborges/malwoverview/releases) [<img alt="GitHub Release Date" src="https://img.shields.io/github/release-date/alexandreborges/malwoverview?label=Release%20Date&style=for-the-badge">](https://github.com/alexandreborges/malwoverview/releases) [<img alt="GitHub" src="https://img.shields.io/github/license/alexandreborges/malwoverview?style=for-the-badge">](https://github.com/alexandreborges/malwoverview/blob/master/LICENSE)
44
[<img alt="GitHub stars" src="https://img.shields.io/github/stars/alexandreborges/malwoverview?logoColor=Red&style=for-the-badge">](https://github.com/alexandreborges/malwoverview/stargazers)
55
[<img alt="Twitter Follow" src="https://img.shields.io/twitter/follow/ale_sp_brazil?style=for-the-badge&logo=X&color=blueviolet">](https://twitter.com/ale_sp_brazil)
66
[<img alt="Downloads/Last Month" src="https://img.shields.io/pypi/dm/malwoverview?color=blue&style=for-the-badge&label=Last%20Month">](https://pypistats.org/packages/malwoverview)
@@ -44,7 +44,7 @@
4444
See GNU Public License on <http://www.gnu.org/licenses/>.
4545

4646

47-
## Current Version: 7.1.1
47+
## Current Version: 7.1.2
4848

4949
Important note: Malwoverview does NOT submit samples to any endpoint by default,
5050
so it respects possible Non-Disclosure Agreements (NDAs). There're specific options
@@ -843,12 +843,30 @@ VULNERABILITY OPTIONS:
843843

844844
## HISTORY
845845

846+
Version 7.1.2:
847+
848+
This version:
849+
850+
* Fixes resource leak - file handles (5 locations) - files opened
851+
without context managers in hash.py (sha256hash, md5hash),
852+
hybrid.py (file upload), virustotal.py (2 locations), and
853+
triage.py (file upload).
854+
* Fixes URL injection/SSRF in alienvault.py (3 locations) - user input
855+
for domain, file, and URL indicators not URL-encoded.
856+
* Fixes URL injection/SSRF in malpedia.py (4 locations) - user input
857+
for actor, family, sample, and yara endpoints not URL-encoded.
858+
* Improves IP validation in bgpview.py - adds ipaddress.ip_address()
859+
validation to prevent injection attacks.
860+
* Fixes bare except clauses (3 locations) - bgpview.py, vulncheck.py,
861+
nist.py now use except Exception: to avoid catching KeyboardInterrupt
862+
and SystemExit.
863+
846864
Version 7.1.1:
847865

848866
This version:
849867

850868
* Fixes path traversal vulnerability (9 locations) - user-controlled
851-
filenames not sanitized.
869+
filenames not sanitized in malpedia.py.
852870
* Fixes URL injection/SSRF in triage.py - user input inserted directly
853871
into URLs without encoding.
854872
* Fixes incomplete URL encoding in triage.py - applies quote() to all
@@ -857,29 +875,19 @@ Version 7.1.1:
857875
validated, API token moved to Authorization header.
858876
* Improves IP validation in ipinfo.py - replaces permissive regex with
859877
stdlib ipaddress.ip_address() for proper validation.
860-
* Fixes URL injection/SSRF in alienvault.py (3 locations) - user input
861-
for domain, file, and URL indicators not URL-encoded.
862-
* Fixes URL injection/SSRF in malpedia.py (4 locations) - user input
863-
for actor, family, sample, and yara endpoints not URL-encoded.
864-
* Improves IP validation in bgpview.py - adds ipaddress.ip_address()
865-
validation to prevent injection attacks.
866878
* Fixes subprocess injection in android.py - unsanitized paths passed
867879
to ADB shell commands.
868880
* Strengthens Android path validation - replaces incomplete metacharacter
869881
blocklist with secure allowlist (permits only /a-zA-Z0-9._-).
870-
* Fixes resource leak - file handles (14 locations) - files opened
871-
without context managers in hash.py, hybrid.py, virustotal.py (2),
872-
triage.py, and malpedia.py (9 previous).
882+
* Fixes resource leak - file handles (9 locations) - files opened
883+
without context managers in malpedia.py.
873884
* Fixes unsafe HTTP redirects (4 locations) - allow_redirects=True
874885
allowed redirect to attacker-controlled URLs.
875886
* Fixes unbounded response size (4 locations) - no size limits on
876887
downloaded files, added 500MB limit.
877888
* Optimizes download performance (4 locations) - uses bytearray instead
878889
of bytes concatenation to avoid O(n²) complexity.
879890
* Fixes missing timeout in ipinfo.py - no timeout on HTTP request.
880-
* Fixes bare except clauses (3 locations) - bgpview.py, vulncheck.py,
881-
nist.py now use except Exception: to avoid catching KeyboardInterrupt
882-
and SystemExit.
883891
* Fixes CLI validation bug - accepted argument-only invocations.
884892
* Fixes Polyswarm crash - NameError when score lookup failed.
885893
* Fixes IPInfo error handling - wrong error structure returned.

malwoverview/malwoverview.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
# Corey Forman (https://github.com/digitalsleuth)
2222
# Christian Clauss (https://github.com/cclauss)
2323

24-
# Malwoverview.py: version 7.1.1
24+
# Malwoverview.py: version 7.1.2
2525

2626
import os
2727
import argparse
@@ -53,7 +53,7 @@
5353
__author__ = "Alexandre Borges"
5454
__copyright__ = "Copyright 2018-2026 Alexandre Borges"
5555
__license__ = "GNU General Public License v3.0"
56-
__version__ = "7.1.1"
56+
__version__ = "7.1.2"
5757
__email__ = "reverseexploit at proton.me"
5858

5959
def finish_hook(signum, frame):

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "malwoverview"
7-
version = "7.1.1"
7+
version = "7.1.2"
88
description = "Malwoverview is a first response tool for threat hunting."
99
readme = "README.md"
1010
authors = [{name = "Alexandre Borges", email = "reverseexploit@proton.me"}]

0 commit comments

Comments
 (0)