Skip to content

ci: add extended security scan (secrets, obfuscation, miners, supply-chain) - #719

Open
chonilius wants to merge 1 commit into
mainfrom
ci/extended-security-scan
Open

chonilius wants to merge 1 commit into
mainfrom
ci/extended-security-scan

Conversation

@chonilius

Copy link
Copy Markdown
Contributor

Summary

Adds `.github/workflows/security-extended-scan.yml` — a second GitHub Actions CI check that runs on every push and pull request, covering a broad set of threats beyond PolinRider.

What is checked

# Check What it catches
1 Hardcoded private keys RSA, EC, OpenSSH, PGP, PKCS8 private keys committed to source
2 Hardcoded tokens GitHub PATs, npm tokens, AWS credentials, OpenAI keys, Stellar secret keys
3 Committed .env files Real .env files (not .env.example) with non-comment content
4 Obfuscated eval payloads eval(atob(...)), Function(...)(), String.fromCharCode chains, hex escape sequences
5 Raw-IP network calls fetch/axios/WebSocket to hardcoded IP addresses (C2 / exfiltration indicator)
6 Crypto miner patterns stratum+tcp://, coinhive, xmrig, cryptonight, mining pool hostnames
7 Reverse shell / backdoor child_process.exec with shell args, net.connect to IPs, nc -e patterns
8 Lifecycle script downloads postinstall/prepare scripts running curl/wget
9 Suspicious postinstall scripts postinstall/prepare running node on unexpected file paths
10 Dropper shell scripts .sh files that pipe curl/wget output into a shell
11 Base64 blobs Large base64-encoded strings in source files (encoded payload indicator)
12 Typosquatted packages Known lookalike package names in package.json dependencies
13 Committed binaries .exe, .dll, .so, .dylib files in the source tree
14 Env-var exfiltration process.env values passed directly into network calls

Any hit fails the job with a file-annotated ::error pointing to the exact line.

Test plan

  • Merge → CI runs clean on main
  • Add ghp_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA to a test file → CI flags it

Adds a second GitHub Actions CI check covering threats beyond PolinRider:
hardcoded private keys and tokens, committed .env files, obfuscated eval
payloads, network calls to raw IPs, crypto miner patterns, reverse shell
indicators, supply-chain lifecycle script abuse, base64 blobs, known
typosquatted packages, unexpected binaries, and env-var exfiltration.

Runs on every push and pull request to every branch.
@vercel

vercel Bot commented Oct 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
merge-fi-backend Error Error Oct 29, 2026 8:58pm UTC

This branch had an error being deployed

1 failed deployment
Preview — 3664f22a Deployed Oct 29, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant