Khalil Shreateh specializes in cybersecurity, particularly as a "white hat" hacker. He focuses on identifying and reporting security vulnerabilities in software and online platforms, with notable expertise in web application security. His most prominent work includes discovering a critical flaw in Facebook's system in 2013. Additionally, he develops free social media tools and browser extensions, contributing to digital security and user accessibility.

Get Rid of Ads!


Subscribe now for only $3 a month and enjoy an ad-free experience.

Contact us at khalil@khalil-shreateh.com

 

 

libsoup3 Risk Assessment Tool
libsoup3 Risk Assessment Tool
libsoup3 Risk Assessment Tool

=============================================================================================================================================
| # Title libsoup3 Risk Assessment Tool

=============================================================================================================================================
| # Title : libsoup3 Risk Assessment Tool |
| # Author : indoushka |
| # Tested on : windows 11 Fr(Pro) / browser : Mozilla firefox 147.0.3 (64 bits) |
| # Vendor : https://www.redhat.com/ |
=============================================================================================================================================

[+] References : https://packetstorm.news/files/id/215072/ & CVE-2026-0719

[+] Summary : tool performs a defensive risk assessment for two security vulnerabilities affecting libsoup3: CVE-2026-0719 and CVE-2026-1761.
It identifies the installed libsoup3 version on Linux systems, detects running services that may depend on the library, and evaluates the potential impact based on predefined risk levels.
The tool then generates a structured JSON security report containing system information, affected components, active services, and practical mitigation recommendations.
It is designed strictly for security monitoring, auditing, and incident response, not for exploitation.

[+] POC :

#!/usr/bin/env python3

import json
import subprocess
import platform
import os

class VulnerabilityRiskAssessor:
def __init__(self):
self.results = {
"cve-2026-0719": {
"risk_level": "HIGH",
"description": "Signed to Unsigned Conversion Error in NTLM Auth",
"affected_components": ["libsoup3", "gnome-applications", "webkit"],
"mitigation": "Update to patched version, disable NTLM if not needed"
},
"cve-2026-1761": {
"risk_level": "CRITICAL",
"description": "Stack-Based Buffer Overflow in Multipart Parsing",
"affected_components": ["libsoup3", "http-clients", "media-players"],
"mitigation": "Apply security patch, use input validation"
}
}

def detect_libsoup_version(self) -> str:
"""Detect the installed version of libsoup3"""
try:
if platform.system() == "Linux":

result = subprocess.run(
["rpm", "-q", "libsoup3"],
capture_output=True,
text=True
)
if result.returncode == 0:
return result.stdout.strip()

result = subprocess.run(
["dpkg", "-l"],
capture_output=True,
text=True
)
for line in result.stdout.splitlines():
if line.startswith("ii") and "libsoup3" in line:
return " ".join(line.split()[:3])
return "Not installed or unknown"
except Exception:
return "Detection error"

def check_services(self) -> list:
"""Scan for services utilizing libsoup"""
services = set()

common_processes = [
"gnome-shell", "evolution", "epiphany", "webkit",
"gvfsd", "tracker", "nautilus"
]

try:
result = subprocess.run(
["ps", "aux"],
capture_output=True,
text=True
)
for line in result.stdout.splitlines():
for proc in common_processes:
if proc in line:
services.add(line.strip())
except Exception:
pass

return list(services)
def generate_report(self):
"""Generate the Risk Assessment Report"""
report = {
"system_info": {
"os": platform.system(),
"version": platform.version(),
"libsoup_version": self.detect_libsoup_version()
},
"vulnerabilities": self.results,
"affected_services": self.check_services(),
"recommendations": [
"1. Update libsoup3 immediately from official repositories",
"2. Monitor logs for potential exploitation attempts",
"3. Apply firewall rules to restrict access",
"4. Utilize tools like SELinux or AppArmor",
"5. Review installed GNOME applications"
]
}

return json.dumps(report, indent=2, ensure_ascii=False)

def main():
print("""
??????????????????????????????????????????????
? libsoup3 Vulnerability Risk Tool ?
? by indoushka ?
??????????????????????????????????????????????
""")

assessor = VulnerabilityRiskAssessor()

print("[*] Gathering system information...")
print(f"[*] OS: {platform.system()} {platform.version()}")

print("\n[*] Checking libsoup3 version...")
libsoup_version = assessor.detect_libsoup_version()
print(f" ? Version: {libsoup_version}")

print("\n[*] Checking active services...")
services = assessor.check_services()
if services:
print(f" ? Found {len(services)} potentially affected service(s)")
else:
print(" ? No obvious services found")

print("\n[*] Assessing risks...")
report = assessor.generate_report()

print("\n" + "=" * 60)
print("Risk Assessment Report:")
print("=" * 60)
print(report)

print("\n" + "=" * 60)
print("Immediate Recommended Actions:")
print("=" * 60)
print("1. sudo dnf update libsoup3 (or apt/yum depending on system)")
print("2. journalctl -f | grep -i libsoup")
print("3. Update all related GNOME packages")
print("=" * 60)

if __name__ == "__main__":
main()


Greetings to :=====================================================================================
jericho * Larry W. Cashdollar * LiquidWorm * Hussin-X * D4NB4R * Malvuln (John Page aka hyp3rlinx)|
===================================================================================================
Social Media Share