giienew/ 9router-pro
This repository contains patterns associated with malware. Do NOT run this code.
FINDINGS ░▒▓
what this code does░▒▓
What happens when you open, install or run it, from the findings below.
- when runsrc/mitm/cert/install.js and 2 other files reference browser profile paths, where saved logins and cookies live. src/mitm/cert/install.js, open-sse/executors/browserExecutableCheck.js, open-sse/executors/chatgpt-web/adapter.js
- when runcli/src/cli/tray/trayWin.js and 2 other files start system processes. cli/src/cli/tray/trayWin.js, src/mitm/dns/dnsConfig.js, src/mitm/winElevated.js
- when runscripts/injectDisplayToRegistry.mjs builds code from strings at run time with
new Function. scripts/injectDisplayToRegistry.mjs - when runopen-sse/shared/awsCredentials.js references SSH key or cloud credential paths (such as ~/.ssh or ~/.aws/credentials). open-sse/shared/awsCredentials.js
- when runsrc/shared/components/OAuthModal.js and open-sse/services/tokenRefresh.js have a form field for a private key or seed phrase. src/shared/components/OAuthModal.js, open-sse/services/tokenRefresh.js
- when runsrc/app/(dashboard)/dashboard/cli-tools/components/GenericCliToolCard.js and 2 other files download a script from pi.dev and raw.githubusercontent.com and pipe it to the shell. src/app/(dashboard)/dashboard/cli-tools/components/GenericCliToolCard.js:278, src/app/(dashboard)/dashboard/cli-tools/components/HermesToolCard.js:408, src/app/(dashboard)/dashboard/cli-tools/components/JcodeToolCard.js:255
const { spawn } = require("child_process");
const path = require("path");
const readline = require("readline");+8// eslint-disable-next-line no-new-func
const getDisplay = new Function("RISK_NOTICE", `${displayBody}; return PROVIDER_DISPLAY;`);
const DISPLAY = getDisplay(RISK_NOTICE);
+5curl -fsSL https://pi.dev/install.sh | sh # or: npm install -g --ignore-scripts @earendil-works/pi-coding-agent+4curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash</p>+4curl -fsSL https://raw.githubusercontent.com/1jehuang/jcode/master/scripts/install.sh | bash+4const { exec, spawn, execSync } = require("child_process");
const fs = require("fs");
const path = require("path");+8const { exec, execSync } = require("child_process");
const IS_WIN = process.platform === "win32";+8 const sandboxExports = {};
new Function("exports", "fetch", "Buffer", net.NETLIFY_RELAY_FUNCTION_CODE)(
sandboxExports, fakeFetch, Buffer
);+5 ? event.isBase64Encoded
? Buffer.from(event.body, "base64")
: event.body
: undefined,+2 const dataMatch = /^data:[^;]*;base64,(.*)$/.exec(String(ref));
if (dataMatch) return Buffer.from(dataMatch[1], "base64");
if (/^https?:\/\//i.test(String(ref))) {
const res = await fetch(re...+2 if (b64) {
const buf = Buffer.from(b64, "base64");
const fmt = (body.output_format || "png").toLowerCase();
const mime = fmt === "jpeg" || fmt === "jpg" ? "image/...+2
if [ -d "$HOME/.mozilla/firefox" ]; then
for profile in "$HOME"/.mozilla/firefox/*/; do
if [ -f "\${profile}cert9.db" ] || [ -f "\${profile}cert8.db" ]; then+10 // 3. Register the session so the proxy can match the incoming callback.
// Zed also passes code_verifier (encodes the RSA private key for decrypt)
// + systemId; sent via POST body ...+5 ...(env["PROGRAMFILES(X86)"] ? [join(env["PROGRAMFILES(X86)"], "Google", "Chrome", "Application", "chrome.exe")] : []),
...(env.LOCALAPPDATA ? [join(env.LOCALAPPDATA, "Google", "Chrome", "Appl...+10 ...(env.LOCALAPPDATA
? [join(env.LOCALAPPDATA, "Google", "Chrome", "Application", "chrome.exe")]
: []),
];+10 log?.debug?.("TOKEN_REFRESH", `Vertex minting token for ${saJson.client_email}`);
const privateKey = await importPKCS8(saJson.private_key.replace(/\\n/g, "\n"), "RS256");
const now = Math....+5 `Invalid AWS profile name ${JSON.stringify(profile)}. Use the profile's name as it ` +
"appears in ~/.aws/config or ~/.aws/credentials: letters, digits, spaces and " +
"_ - @ + ....+5iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGP...+0
CloBjz1rX5+yg1ILh/Ag+suum5k1f/9m/hI0XDQ33lsQIYnOHLn9KZwN0C7E...+3
clientId: "1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",
clientSecret: "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",
},
models: [+3 dbKeys: {
accessToken: "cursorAuth/accessToken",
machineId: "storage.serviceMachineId",
},+3 clientId: "681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",
clientSecret: "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",
},
models: [+3Scores 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.
1714 files scanned @ 88c7848 | 10/30/2026 | heuristic scan — always review manually
github
giienew/9router-pro
9Router Pro by Gienetic — Pro edition of 9Router with Prompt Injection (system prompt or chat script per global / API key / model), per-key token quotas, accent themes and an optimized dashboard.
network indicators░▒▓
Hosts this code names or would connect to. Top 50 of 902, decoded and call-site destinations first. Informational, not scored.
- https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.shpaste hostnext to execsrc/app/(dashboard)/dashboard/cli-tools/components/HermesToolCard.js:408
- https://raw.githubusercontent.com/1jehuang/jcode/master/scripts/install.shpaste hostnext to execsrc/app/(dashboard)/dashboard/cli-tools/components/JcodeToolCard.js:255 +12 more
- https://api.telegram.org/bot$telegram botsrc/lib/notify.js:120
- https://cli.devin.aiurlnext to execopen-sse/providers/registry/devin-cli.js:14 +6 more
- https://cli.devin.ai/install.shurlnext to execopen-sse/providers/registry/devin-cli.js:15
- https://static.devin.ai/cli/setup.ps1urlnext to execopen-sse/providers/registry/devin-cli.js:15
- https://app.factory.ai/cliurlnext to execsrc/app/(dashboard)/dashboard/cli-tools/components/DroidToolCard.js:283
- https://pi.dev/install.shurlnext to execsrc/app/(dashboard)/dashboard/cli-tools/components/GenericCliToolCard.js:278
- https://x.ai/cli/install.shurlnext to execsrc/app/(dashboard)/dashboard/cli-tools/components/GrokBuildToolCard.js:294
- https://tailscale.com/install.shurlnext to execsrc/lib/tunnel/tailscale/tailscale.js:376
- https://chat.deepseek.com/api/v0/chat/create_pow_challengeurlnext to network callopen-sse/executors/deepseek-web/pow.js:7
- https://api.assemblyai.com/v2/uploadurlnext to network callopen-sse/handlers/sttCore.js:65
- https://www.bing.com/translatorurlnext to network callopen-sse/handlers/ttsProviders/edgeTts.js:15 +1 more
- https://www.bing.com/tfetttsurlnext to network callopen-sse/handlers/ttsProviders/edgeTts.js:38
- https://speech.platform.bing.com/consumer/speech/synthesize/readaloud/voices/listurlnext to network callopen-sse/handlers/ttsProviders/edgeTts.js:56
- https://api.elevenlabs.io/v1/voicesurlnext to network callopen-sse/handlers/ttsProviders/elevenlabs.js:13
- https://api.elevenlabs.io/v1/text-to-speech/$urlnext to network callopen-sse/handlers/ttsProviders/elevenlabs.js:31
- https://translate.google.comurlnext to network callopen-sse/handlers/ttsProviders/googleTts.js:11 +1 more
- https://translate.google.com/_/…/data/batchexecuteurlnext to network callopen-sse/handlers/ttsProviders/googleTts.js:42
- https://api.openai.comurlnext to network callopen-sse/handlers/ttsProviders/openai.js:20 +1 more
- https://api.xiaomimimo.com/v1/chat/completionsurlnext to network callopen-sse/handlers/ttsProviders/xiaomi-mimo.js:31 +8 more
- https://portal.nousresearch.com/api/oauth/tokenurlnext to network callopen-sse/services/tokenRefresh/providers.js:784 +2 more
- https://portal.nousresearch.com/api/oauth/agent-keyurlnext to network callopen-sse/services/tokenRefresh/providers.js:818 +1 more
- https://chat.deepseek.com/api/v0/users/currenturlnext to network callopen-sse/services/webIdentity.js:85
- https://chatgpt.com/api/auth/sessionurlnext to network callopen-sse/services/webIdentity.js:112
- https://grok.com/api/auth/sessionurlnext to network callopen-sse/services/webIdentity.js:135 +1 more
- https://muse.ai/api/sessionurlnext to network callopen-sse/services/webIdentity.js:161
- https://muse.aiurlnext to network callopen-sse/services/webIdentity.js:162 +16 more
- https://muse.ai/thread/newurlnext to network callopen-sse/services/webIdentity.js:162
- https://clerk.uncensored.com/v1/clienturlnext to network callopen-sse/services/webIdentity.js:182
- https://clerk.uncensored.com/v1/client/sessions/$urlnext to network callopen-sse/services/webIdentity.js:197
- https://api.deepgram.com/v1/modelsurlnext to network callsrc/app/api/media-providers/tts/deepgram/voices/route.js:20
- https://api.inworld.ai/tts/v1/voicesurlnext to network callsrc/app/api/media-providers/tts/inworld/voices/route.js:19
- https://platform.iflow.cn/api/openapi/apikeyurlnext to network callsrc/app/api/oauth/iflow/cookie/route.js:29 +1 more
- https://api.cloudflare.com/client/v4/accounts/$urlnext to network callsrc/app/api/providers/validate/route.js:202 +3 more
- https://api.openai.com/v1/modelsurlnext to network callsrc/app/api/providers/validate/route.js:274 +3 more
- https://ai-gateway.vercel.sh/v1/modelsurlnext to network callsrc/app/api/providers/validate/route.js:281 +3 more
- https://api.anthropic.com/v1/messagesurlnext to network callsrc/app/api/providers/validate/route.js:288 +9 more
- https://generativelanguage.googleapis.com/v1/modelsurlnext to network callsrc/app/api/providers/validate/route.js:305 +1 more
- https://openrouter.ai/api/v1/modelsurlnext to network callsrc/app/api/providers/validate/route.js:310 +2 more
- https://opencode.ai/zen/go/v1/chat/completionsurlnext to network callsrc/app/api/providers/validate/route.js:430 +11 more
- https://api.deepgram.com/v1/projectsurlnext to network callsrc/app/api/providers/validate/route.js:462 +1 more
- https://api.blackbox.ai/chat/completionsurlnext to network callsrc/app/api/providers/validate/route.js:470
- https://aiplatform.googleapis.com/v1/publishers/google/models/…urlnext to network callsrc/app/api/providers/validate/route.js:497 +3 more
- https://grok.com/rest/app-chat/conversations/newurlnext to network callsrc/app/api/providers/validate/route.js:530 +5 more
- https://www.perplexity.ai/rest/sse/perplexity_askurlnext to network callsrc/app/api/providers/validate/route.js:579 +4 more
- https://api.github.com/repos/$urlnext to network callsrc/app/api/version/route.js:16
- https://codewhisperer.us-east-1.amazonaws.com/ListAvailableProfilesurlnext to network callsrc/lib/oauth/providerHelpers.js:56
- https://cloudcode-pa.googleapis.com/…urlnext to network callsrc/lib/oauth/providers/gemini-cli.js:52 +19 more
- https://cli-chat-proxy.grok.com/v1/userurlnext to network callsrc/lib/oauth/providers/grok-cli.js:69 +5 more