live · scanning repos
Scanrepo
github.com
github.com / H-M-H

H-M-H/Weylus

Rust·71 files·commit 38a01a8·scanned 24d ago·cached ✓
25/100
LOW RISK
Minor findings consistent with the project type. Nothing reachable from install hooks.

score capped at 259,488 stars — findings likely legitimate code patterns

verdict accurate?
threat-state: lowlive

FINDINGS ░▒▓

warningRust unsafe blockunsafe blocks bypass Rust's memory safety guarantees. Malware uses them for raw pointer manipulation, shellcode injection, or calling dangerous foreign functions.src/capturable/captrs_capture.rs
            h as usize,
            unsafe { std::mem::transmute(self.capturer.get_stored_frame().unwrap()) },
        ))
    }
+3
warningRust unsafe blockunsafe blocks bypass Rust's memory safety guarantees. Malware uses them for raw pointer manipulation, shellcode injection, or calling dangerous foreign functions.src/capturable/core_graphics.rs
            let w: CFDictionary<*const c_void, *const c_void> =
                unsafe { CFDictionary::wrap_under_get_rule(*w as CFDictionaryRef) };
            let id = w.get(unsafe { window::kCGWind...
+3
warningRust unsafe blockunsafe blocks bypass Rust's memory safety guarantees. Malware uses them for raw pointer manipulation, shellcode injection, or calling dangerous foreign functions.src/capturable/win_ctx.rs
fn create_dxgi_factory_1() -> ComPtr<IDXGIFactory1> {
    unsafe {
        let mut factory = ptr::null_mut();
        let hr = CreateDXGIFactory1(&IID_IDXGIFactory1, &mut factory);
+3
criticalRust process Command usagestd::process::Command can execute arbitrary shell commands. Malware uses it to drop payloads, exfiltrate data, or establish persistence.build.rs

    Command::new("bash")
        .arg(Path::new("clean.sh"))
        .current_dir("deps")
+8
infoSuspicious files are not reachable from entry pointsFlagged files exist but are not imported by any entry point. They may be dead code, tests, or attack payloads triggered by another mechanism.+2
warningRust wallet/crypto code with network activityCode handling private keys or signing and also making network requests may be exfiltrating secrets or sending funds to an attacker.src/websocket.rs
            Ok(VideoCommands::Start(config)) => {
                #[allow(unused_assignments)]
                {
                    // gstpipewire can not handle setting a pipeline's state to Null af...
+5

Scores are heuristics. A “safe” verdict means no known-malicious patterns were found — clever malware can look boring. Wrong verdict? Flag it above; confirmed false positives become regression tests.

41 files scanned @ 38a01a8 | 8/19/2026 | heuristic scan — always review manually

risk by category
code execution25
network & exfiltration5
file system access0
obfuscation0
supply chain0
owasp / injection0
telemetry
files 41/71rules hit 6engine v5commit 38a01a8

github

H-M-H/Weylus

Use your tablet as graphic tablet/touch screen on your computer.

Rust
9488
389
2326d
71 files
41 scanned(58%)
38a01a8

architecture░▒▓

entry (1) flagged (11) pkg (52)
78 nodes · 64 edgesscroll to zoom · click node to jump to finding