@miraj181/ipingyou 2.0.1 → 2.0.4

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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 skmirajulislam
3
+ Copyright (c) 2026 Sk Mirajul Islam
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -74,7 +74,13 @@ graph LR
74
74
 
75
75
  ---
76
76
 
77
- ## 🛠 Prerequisites
77
+ ## 🛡️ Security Scanner Disclaimer
78
+
79
+ Because **iPingYou** is a powerful remote administration tool with features like background daemonization (via PM2), secure shell execution (`execa`), and anti-forensics capabilities (`panic` mode), automated security scanners (such as Socket.dev or enterprise EDRs) may flag this package as a **potential risk** or **malware-like**.
80
+
81
+ These alerts (e.g., "AI-detected potential code anomaly", "Shell access", "Network access") are **expected behavior** for a peer-to-peer tunneling utility. The source code is entirely open-source, heavily documented, and uses zero-knowledge encryption to ensure your data is safe.
82
+
83
+ ---
78
84
 
79
85
  | Tool | Required | Installation Guide |
80
86
  |------|----------|--------------------|
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@miraj181/ipingyou",
3
- "version": "2.0.1",
3
+ "version": "2.0.4",
4
4
  "description": "SecureLink-CLI — Secure peer-to-peer remote access via SSH & Cloudflare Tunnels",
5
5
  "main": "src/cli.js",
6
6
  "bin": {
@@ -45,9 +45,6 @@
45
45
  "chalk": "^5.3.0",
46
46
  "commander": "^12.1.0",
47
47
  "execa": "^9.5.2",
48
- "express": "^5.2.1",
49
- "express-rate-limit": "^8.5.2",
50
- "helmet": "^8.1.0",
51
48
  "inquirer": "^12.3.2",
52
49
  "nanoid": "^5.0.9",
53
50
  "open": "^11.0.0",
package/src/cli.js CHANGED
@@ -26,11 +26,7 @@ import { detectOS, checkDependencies } from './lib/platform.js';
26
26
  import { installShutdownHandlers, executePanicMode } from './lib/cleanup.js';
27
27
  import { startHostMode } from './modes/host.js';
28
28
  import { startClientMode } from './modes/client.js';
29
- import { execa } from 'execa';
30
- import path from 'node:path';
31
- import { fileURLToPath } from 'node:url';
32
29
 
33
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
34
30
 
35
31
  // ─── ASCII Banner ────────────────────────────────────────────
36
32
  function showBanner() {
@@ -21,7 +21,7 @@ import os from 'node:os';
21
21
  import crypto from 'node:crypto';
22
22
  import { decrypt, encrypt } from '../lib/crypto.js';
23
23
  import { trackPID, untrackPID, addCleanupHook } from '../lib/cleanup.js';
24
- import { createSpinner, sshSpinner, networkSpinner, fileTransferSpinner, showConnectionTrace, animatedSteps, simulateTransferProgress } from '../lib/animations.js';
24
+ import { createSpinner, sshSpinner, networkSpinner, fileTransferSpinner, showConnectionTrace, simulateTransferProgress } from '../lib/animations.js';
25
25
  import { getConfig, saveAlias } from '../lib/config.js';
26
26
  import open from 'open';
27
27
 
@@ -701,7 +701,7 @@ async function performReverseForward(username, hostname, privateKeyPath) {
701
701
  const spinner = createSpinner(`Forwarding Host:${remotePort} ➔ Localhost:${localPort}...`, networkSpinner).start();
702
702
 
703
703
  try {
704
- const child = execa('ssh', sshArgs, { stdio: 'pipe' });
704
+ const child = execa('ssh', sshArgs, { stdio: 'inherit' });
705
705
  trackPID(child.pid);
706
706
  spinner.succeed(`Reverse tunnel active! Host can access your app at ${chalk.bold.green('localhost:' + remotePort)}`);
707
707
  console.log(chalk.dim(' Press Ctrl+C to terminate the reverse tunnel.'));
package/src/modes/host.js CHANGED
@@ -24,7 +24,6 @@ import { trackPID, untrackPID, setRevokeOnExit, addCleanupHook } from '../lib/cl
24
24
  import { detectOS } from '../lib/platform.js';
25
25
  import { createSpinner, cryptoSpinner, tunnelSpinner, networkSpinner, typeText } from '../lib/animations.js';
26
26
  import { startChatServer, openLocalChatUI } from '../lib/chat.js';
27
- import open from 'open';
28
27
 
29
28
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
30
29
  let BROKER_URL = process.env.BROKER_URL || 'https://ipingyou.onrender.com';
@@ -157,8 +156,7 @@ async function spawnTunnelSupervised(targetUrl, onUrlGenerated) {
157
156
 
158
157
  // ─── Ephemeral SSH Key Management ────────────────────────────
159
158
  async function generateEphemeralKey() {
160
- const osInfo = detectOS();
161
- const tmpDir = osInfo.isWindows ? process.env.TEMP : '/tmp';
159
+ const tmpDir = os.tmpdir();
162
160
  const keyPath = path.join(tmpDir, `ipingyou_${Date.now()}`);
163
161
 
164
162
  await execa('ssh-keygen', ['-t', 'ed25519', '-C', 'ipingyou-ephemeral', '-f', keyPath, '-N', '']);