live · scanning repos
Scanrepo
github.com
github.com / nekename

nekename/OpenDeck

Rust·201 files·commit 7cc0794·scanned 48s ago·cached ✓
25/100
LOW RISK
Minor findings consistent with the project type. Nothing reachable from install hooks.

score capped at 25 — 2,217 stars — findings likely legitimate code patterns

verdict accurate?
44% file coverage
Desktop app detected
threat-state: lowlive

FINDINGS ░▒▓

criticalRust process Command usagestd::process::Command can execute arbitrary shell commands. Malware uses it to drop payloads, exfiltrate data, or establish persistence.plugins/com.amansprojects.starterpack.sdPlugin/src/run_command.rs
	let (mut reader, writer) = os_pipe::pipe()?;
	let mut command = Command::new(command);
	command.args(extra_args);
	#[cfg(not(windows))]
+8
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-tauri/src/main.rs
	// SAFETY: std::env::set_var can cause race conditions in multithreaded contexts. We have not spawned any other threads at this point.
	unsafe {
		std::env::set_var("WEBKIT_DISABLE_DMABUF_RENDERER", ...
+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-tauri/src/plugins/mod.rs
	// SAFETY: `libc::prctl` is async-signal-safe.
	unsafe {
		command.pre_exec(move || {
			if libc::prctl(libc::PR_SET_PDEATHSIG, libc::SIGTERM as libc::c_ulong) != 0 {
+3
criticalRust process Command usagestd::process::Command can execute arbitrary shell commands. Malware uses it to drop payloads, exfiltrate data, or establish persistence.src-tauri/src/plugins/mod.rs
		let extra_args = if is_flatpak() { vec!["--host", "node"] } else { vec![] };
		let version_output = Command::new(command).args(&extra_args).arg("--version").output();
		if version_output.is_err() ||...
+8
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-tauri/src/plugins/webserver.rs

			unsafe { SetHandleInformation(listener.as_raw_socket() as _, HANDLE_FLAG_INHERIT, 0) };
		}
+3
criticalRust process Command usagestd::process::Command can execute arbitrary shell commands. Malware uses it to drop payloads, exfiltrate data, or establish persistence.src-tauri/build.rs
			fs::create_dir_all(&out_dir)?;
			let status = std::process::Command::new("deno")
				.args([
					"run",
+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

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.

89 files scanned @ 7cc0794 | 9/25/2026 | heuristic scan — always review manually

risk by category
code execution25
network & exfiltration0
file system access0
obfuscation0
supply chain0
owasp / injection0
telemetry
files 89/201rules hit 7engine v6commit 7cc0794

github

nekename/OpenDeck

Linux software for the Stream Deck with support for original Elgato Stream Deck plugins

Rust
2217
172
1462d
201 files
89 scanned(44%)
7cc0794

architecture░▒▓

entry (0) flagged (5) pkg (64)
129 nodes · 135 edgesscroll to zoom · click node to jump to finding
LOW (25/100) — nekename/OpenDeck — ScanRepo