From dc0792a63894d60d4e19708d7f2b8c360aaf51c4 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 28 Aug 2026 08:52:57 +0000 Subject: [PATCH] Remove obfuscated RCE payload from postcss.config.js and restore .gitignore postcss.config.js carried an obfuscated JavaScript payload appended after the legitimate config, hidden behind a long run of spaces on the closing line so it sits off-screen in an editor. Restored to its pre-tampering content. What the payload does: - Resolves its C2 endpoint from the Ethereum blockchain (EtherHiding), reading the host from recent transactions of a hardcoded attacker-controlled address via public RPC endpoints and a Blockscout txlist API. - Fetches a second stage over HTTP(S) and runs it two ways: eval() in-process, and a detached spawn(node, ['-e', ...]) with stdio 'ignore' and windowsHide, unref'd so it outlives the parent. postcss.config.js executes_on_every_build_and_dev_server_start, so this ran on developer machines and in CI. .gitignore was rewritten by the same commit: line endings converted, the .env entry deleted, and a config.bat entry added. Removing .env from .gitignore stages local secrets to become committable. Restored to its pre-tampering revision. The payload first arrived in 0e5eedc_(2025-04-15),_and_was_replaced_with_a_newer_variant_by_8ed3af6_("remove_Polin_Rider",_2026-05-27). --- .gitignore | 73 +++++++++++++++++++++++------------------------ postcss.config.js | 12 ++++---- 2 files changed, 42 insertions(+), 43 deletions(-) diff --git a/.gitignore b/.gitignore index f640441..fd3dbb5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,37 +1,36 @@ -# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. - -# dependencies -/node_modules -/.pnp -.pnp.js -.yarn/install-state.gz - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo -next-env.d.ts -config.bat +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js +.yarn/install-state.gz + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/postcss.config.js b/postcss.config.js index 12a703d..a1b36d2 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -1,6 +1,6 @@ -module.exports = { - plugins: { - tailwindcss: {}, - autoprefixer: {}, - }, -}; +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +};