Commit Graph
122 Commits
Author SHA1 Message Date
KingKDot 7574988e3b give the ability to auto upload builds 2026-05-17 19:49:50 -05:00
KingKDot 34ff881c4e oops again + more 2026-05-17 13:31:47 -05:00
KingKDot 6dbbedfec1 file browser 2.0 2026-05-17 00:51:17 -05:00
KingKDot d691c5b804 show running process in process viewer and add limiting to the notification system 2026-05-16 23:19:46 -05:00
KingKDot e2ef4a375f add deadmans key, fix downloading randomly stopping halfway through, add scripts to context menu. 2026-05-16 16:33:40 -05:00
KingKDot b68aa4a4c7 clear notification by toggling them off and back on 2026-05-15 18:57:23 -05:00
KingKDot 5aa3a304a8 hvnc status and muting users. 2026-05-15 18:29:25 -05:00
KingKDot 12972d6e8b UI updates and remove CSP for plugins 2026-05-15 11:52:26 -05:00
KingKDot da3bec8de1 optional public IP fetching 2026-05-14 19:56:50 -05:00
Michael 4fae9e56cf Shellcode clean (#21)
* feat: shellcode output via Donut (Windows) + memfd stub (Linux)

- Donut (Windows): PE → PIC shellcode (.bin) via donut-manager.ts
  Flags: -f1 -a<arch> -b3 -x1 (continue on AMSI fail, thread exit)
- Linux shellcode: 113-byte x86_64 memfd_create+execveat stub
  (linux-shellcode-manager.ts) wraps ELF for memfd_create+execveat
- Two-pass build for shellcode+persistence: Pass 1 = normal agent with
  persist compiled in; Pass 2 = selfembed agent that drops+registers
  Pass 1 on first run (isRunningInMemory() gates the path)
- Show console option: shellcode_console build tag calls AllocConsole()
  on start for debug builds; AttachConsole fallback included
- isRunningInMemory() Windows: VirtualQuery on .data sentinel
  (MEM_PRIVATE = injected, MEM_IMAGE = normal disk load) replaces
  os.Executable() which returned host process path when injected
- Build UI: Donut mode, Linux shellcode mode, show-console checkboxes;
  settings persisted across sessions via collectFormSettings()
- GODEBUG=netdns=cgo hardcoded in build env (fixes IPv6 DNS on VPN)
- Dockerfile: pre-seed Go module cache; add curl to runtime image
- docker-compose.yml: switch healthcheck to wget (curl absent in slim)

* fix: add missing shellcode UI functions and restore dynamic linking

applyDonutMode, applyLinuxShellcodeMode, and updateShellcodeCheckboxVisibility
were called throughout build.js but never defined, breaking platform selection
and the build button. Add the missing implementations.

Also remove forced -extldflags '-static' on Linux CGO builds; fully static
glibc binaries cannot call dlopen, which broke native plugin loading entirely.

* fix: call updateShellcodeCheckboxVisibility on page load

Shellcode rows were hidden on initial load because the function was only
wired to checkbox change events. Call it at startup and in applyFormSettings
so pre-selected platforms correctly show their shellcode options immediately.

* feat: Linux plugin subprocess shim for static-agent compatibility

Static musl binaries cannot call dlopen. Introduce a small C shim
(plugin_host.c) that is compiled at agent-build time into a
dynamically-linked binary, embedded via go:embed, and fork+exec'd to
load .so plugins on behalf of the static agent over a Unix socketpair.

Empty placeholder files allow go:embed to compile without error; the
real binaries are produced by build-process.ts before go build runs and
are never committed. Documents the IPC protocol and build matrix in
PLUGINS.md Section 12.

* fix: define sp_memfd_create/sp_write_all in subproc CGO preamble

CGO preamble functions are per-file translation units; so_memfd_create
and so_write_all from loader_linux.go are not visible in
loader_linux_subproc.go. Add local equivalents with sp_ prefix.

* fix: use CGO helper for shim memfd_create instead of syscall.SYS_MEMFD_CREATE

syscall.SYS_MEMFD_CREATE is not defined in Go stdlib syscall package.
Replace with sp_memfd_create_nocloe() CGO helper (flags=0, no CLOEXEC).

* fix: compile plugin host shim statically to avoid glibc version mismatch

A dynamically-linked shim compiled on Debian Bookworm (glibc 2.36) fails
on older glibc targets. Compile with -static so the shim is self-contained
and runs on any glibc version. Static glibc can still call dlopen at runtime
via the system ld-linux.so.2.

Also surface subprocess errors instead of silently falling through to dlopen
so failures are visible in the build log.

* Restore docker build cache
2026-05-13 22:55:51 -05:00
KingKDot bf093f5a7d web rtc for webcam, audio, etc. 2026-05-13 20:19:21 -05:00
KingKDot 8e97a32567 WebRTC 2026-05-13 13:44:33 -05:00
KingKDot 76cb47f8eb more stripping 2026-05-11 00:17:12 -05:00
KingKDot 05eb7385c1 make keylogger optional 2026-05-10 17:06:39 -05:00
KingKDot 9b2f10ee34 allow all apps to be opened in HVNC and show their icons as well. (exe only for best support) 2026-05-10 00:03:49 -05:00
KingKDot d62f6f2e34 better client management. Fix exporting and importing. Better key generation (not fucking dog shit). 2026-05-09 18:31:53 -05:00
KingKDot 9f1ecd3931 fix plugin loading with bad names 2026-05-07 20:37:29 -05:00
KingKDot bdc55f89fd more tests + half cache plugins 2026-05-07 09:52:20 -05:00
KingKDot 5759b19a89 better logging for plugins + fix caps lock not working keylogger 2026-05-06 21:59:07 -05:00
KingKDot 7c858e4984 fix all typescript lenting errors 2026-05-06 20:07:15 -05:00
KingKDot c28de6db32 persistent notifications + save scripts not tied to local storage. 2026-05-06 10:09:38 -05:00
KingKDot ec62401911 fix hvnc issue, fix build watcher issue, fix wrong type of exe being sent on updates. 2026-05-05 19:31:55 -05:00
KingKDot 9925d26a8c add option to revoke perms/set perms for plugins. 2026-05-05 15:44:26 -05:00
KingKDot c71af228b4 stability fixes 2026-05-04 09:58:59 -05:00
KingKDot 8a7217cda2 change how plugins are sent to clients (https is better than whatever tf I can do) 2026-05-03 22:37:08 -05:00
KingKDot 273b35d326 improved plugin api 2026-05-03 00:29:05 -05:00
KingKDot 73c860c530 better history for metrics 2026-05-01 19:13:11 -05:00
KingKDot 6a363a62f2 1.9.0 2026-04-29 00:22:37 -05:00
KingKDot 4808a0fbd3 vuln fix so mfs who aren't logged in can't check plugin shit 2026-04-28 22:23:15 -05:00
KingKDot 5f1501c5ef add build profiles 2026-04-23 22:54:49 -05:00
KingKDot d12dc04709 add registration 2026-04-19 18:24:50 -05:00
KingKDot 86c1897406 Get AI to make me a POC. Will need to push to the git so I can test. Will revert if it doesn't work and probably just delete commit history for it as well. 2026-04-19 15:07:44 -05:00
KingKDot ab755a690f longer cache 2026-04-19 00:34:52 -05:00
KingKDot 4cc1f47822 don't use CDN's for most things. Get rid of JsDelivr.net from CSP as well. 2026-04-18 21:16:29 -05:00
KingKDot cc4fe570ab add fun easter egg 2026-04-18 01:00:14 -05:00
KingKDot 4a062e3a19 lazy load fat modules, cut WS sizes + start dropping notifications at a certain point 2026-04-17 13:49:06 -05:00
KingKDot 2353f5a158 add more browsers, browser checks and move SOL push to management 2026-04-17 09:56:04 -05:00
KingKDot 135091f6fa desktop audio and switches to turn up/down audio 2026-04-16 17:19:56 -05:00
KingKDot df95ea4771 add a way to show if HVNC DXGI injection actually worked 2026-04-16 14:22:28 -05:00
KingKDot fbe43e18c0 new plugins system 2026-04-15 20:16:12 -05:00
KingKDot eb6ec86773 add chat system 2026-04-14 21:56:18 -05:00
KingKDot 0b6986fcdb add bigger back off, fix issue with null enrollment status bypassing auth, fixed other issues as well 2026-04-14 20:52:15 -05:00
KingKDot 7c6bcccda7 fix potential dos attack and fix sanitation not being done 2026-04-14 20:31:01 -05:00
KingKDot 1807a94e9f add grouping and make it obvious 2026-04-14 19:38:27 -05:00
KingKDot a0e4a88790 fix builder issues as well + fix approved clients not showing up in dashboard if it's an operator 2026-04-14 10:35:33 -05:00
KingKDot 303b7a43ba tons of server side fixes 2026-04-14 10:23:59 -05:00
KingKDot 59da653142 new plugin signing and checking 2026-04-14 09:56:20 -05:00
KingKDot 1831cc96e2 fix purgatory for users 2026-04-13 22:45:12 -05:00
KingKDot bfc3e3fa4d more security improvements 2026-04-13 17:33:51 -05:00
KingKDot e80736ec37 huge update to RBAC 2026-04-13 17:15:06 -05:00