@leeguoo/pwtk-network-debugger 1.2.20 → 1.2.21
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/dist/index.cjs.js +3 -3
- package/dist/index.esm.js +97 -97
- package/dist/index.js +3 -3
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -6608,102 +6608,6 @@ function requireCryptoJs() {
|
|
|
6608
6608
|
}
|
|
6609
6609
|
var cryptoJsExports = requireCryptoJs();
|
|
6610
6610
|
const CryptoJS = /* @__PURE__ */ getDefaultExportFromCjs(cryptoJsExports);
|
|
6611
|
-
function decrypt(encryptedData, keyStr) {
|
|
6612
|
-
console.log("[PWTK Decrypt] decrypt function called:", {
|
|
6613
|
-
dataLength: encryptedData?.length,
|
|
6614
|
-
dataPreview: encryptedData?.substring(0, 50),
|
|
6615
|
-
keyStr,
|
|
6616
|
-
hasWindowDecrypt: typeof window.decrypt === "function",
|
|
6617
|
-
hasWindowEncrypt: typeof window.encrypt === "function"
|
|
6618
|
-
});
|
|
6619
|
-
if (!encryptedData || encryptedData.startsWith("{") || encryptedData.startsWith("[")) {
|
|
6620
|
-
console.log("[PWTK Decrypt] Data looks like JSON, parsing directly");
|
|
6621
|
-
try {
|
|
6622
|
-
const parsed = JSON.parse(encryptedData);
|
|
6623
|
-
console.log("[PWTK Decrypt] Successfully parsed as JSON");
|
|
6624
|
-
return parsed;
|
|
6625
|
-
} catch {
|
|
6626
|
-
console.log("[PWTK Decrypt] Failed to parse as JSON, returning as string");
|
|
6627
|
-
return encryptedData;
|
|
6628
|
-
}
|
|
6629
|
-
}
|
|
6630
|
-
if (window.decrypt && keyStr) {
|
|
6631
|
-
console.log("[PWTK Decrypt] Trying WebAssembly decrypt");
|
|
6632
|
-
console.log("[PWTK Decrypt] Input to window.decrypt:", {
|
|
6633
|
-
data: encryptedData.substring(0, 100) + "...",
|
|
6634
|
-
key: keyStr
|
|
6635
|
-
});
|
|
6636
|
-
try {
|
|
6637
|
-
const decrypted = window.decrypt(encryptedData, keyStr);
|
|
6638
|
-
console.log("[PWTK Decrypt] window.decrypt returned:", {
|
|
6639
|
-
type: typeof decrypted,
|
|
6640
|
-
length: decrypted?.length,
|
|
6641
|
-
preview: decrypted ? decrypted.substring(0, 200) + (decrypted.length > 200 ? "..." : "") : null,
|
|
6642
|
-
sameAsInput: decrypted === encryptedData,
|
|
6643
|
-
hasInvalidChars: decrypted?.includes("�")
|
|
6644
|
-
});
|
|
6645
|
-
if (decrypted && decrypted !== encryptedData && !decrypted.includes("�")) {
|
|
6646
|
-
try {
|
|
6647
|
-
const parsed = JSON.parse(decrypted);
|
|
6648
|
-
console.log("[PWTK Decrypt] ✅ WebAssembly decryption successful, parsed as JSON:", parsed);
|
|
6649
|
-
return parsed;
|
|
6650
|
-
} catch {
|
|
6651
|
-
if (decrypted.length > 0) {
|
|
6652
|
-
console.log("[PWTK Decrypt] ✅ WebAssembly decryption successful, returning as string");
|
|
6653
|
-
return decrypted;
|
|
6654
|
-
}
|
|
6655
|
-
}
|
|
6656
|
-
} else {
|
|
6657
|
-
console.log("[PWTK Decrypt] window.decrypt did not change the data or returned invalid result");
|
|
6658
|
-
}
|
|
6659
|
-
} catch (e) {
|
|
6660
|
-
console.log("[PWTK Decrypt] WebAssembly decrypt error:", e);
|
|
6661
|
-
}
|
|
6662
|
-
} else {
|
|
6663
|
-
console.log("[PWTK Decrypt] WebAssembly not available:", {
|
|
6664
|
-
hasWindowDecrypt: !!window.decrypt,
|
|
6665
|
-
hasKey: !!keyStr,
|
|
6666
|
-
windowDecryptType: typeof window.decrypt
|
|
6667
|
-
});
|
|
6668
|
-
}
|
|
6669
|
-
const keys = [
|
|
6670
|
-
keyStr,
|
|
6671
|
-
"thisisakey123456",
|
|
6672
|
-
"VITE_CRYPTO_KEY"
|
|
6673
|
-
].filter(Boolean);
|
|
6674
|
-
for (const secretKey of keys) {
|
|
6675
|
-
if (!secretKey) continue;
|
|
6676
|
-
try {
|
|
6677
|
-
const key = CryptoJS.enc.Utf8.parse(secretKey.padEnd(16, "0").slice(0, 16));
|
|
6678
|
-
const iv = CryptoJS.enc.Utf8.parse(secretKey.padEnd(16, "0").slice(0, 16));
|
|
6679
|
-
const decrypted = CryptoJS.AES.decrypt(encryptedData, key, {
|
|
6680
|
-
iv,
|
|
6681
|
-
mode: CryptoJS.mode.CBC,
|
|
6682
|
-
padding: CryptoJS.pad.Pkcs7
|
|
6683
|
-
});
|
|
6684
|
-
const decryptedStr = decrypted.toString(CryptoJS.enc.Utf8);
|
|
6685
|
-
if (decryptedStr) {
|
|
6686
|
-
try {
|
|
6687
|
-
return JSON.parse(decryptedStr);
|
|
6688
|
-
} catch {
|
|
6689
|
-
return decryptedStr;
|
|
6690
|
-
}
|
|
6691
|
-
}
|
|
6692
|
-
} catch (e) {
|
|
6693
|
-
}
|
|
6694
|
-
}
|
|
6695
|
-
try {
|
|
6696
|
-
const decoded = atob(encryptedData);
|
|
6697
|
-
try {
|
|
6698
|
-
return JSON.parse(decoded);
|
|
6699
|
-
} catch {
|
|
6700
|
-
return decoded;
|
|
6701
|
-
}
|
|
6702
|
-
} catch {
|
|
6703
|
-
}
|
|
6704
|
-
console.log("[PWTK Decrypt] ❌ All decryption methods failed, returning original data");
|
|
6705
|
-
return encryptedData;
|
|
6706
|
-
}
|
|
6707
6611
|
class Logger {
|
|
6708
6612
|
constructor() {
|
|
6709
6613
|
this.panel = null;
|
|
@@ -6796,6 +6700,102 @@ class Logger {
|
|
|
6796
6700
|
}
|
|
6797
6701
|
}
|
|
6798
6702
|
const logger = new Logger();
|
|
6703
|
+
function decrypt(encryptedData, keyStr) {
|
|
6704
|
+
logger.debug("[PWTK Decrypt] decrypt function called:", {
|
|
6705
|
+
dataLength: encryptedData?.length,
|
|
6706
|
+
dataPreview: encryptedData?.substring(0, 50),
|
|
6707
|
+
keyStr,
|
|
6708
|
+
hasWindowDecrypt: typeof window.decrypt === "function",
|
|
6709
|
+
hasWindowEncrypt: typeof window.encrypt === "function"
|
|
6710
|
+
});
|
|
6711
|
+
if (!encryptedData || encryptedData.startsWith("{") || encryptedData.startsWith("[")) {
|
|
6712
|
+
logger.debug("[PWTK Decrypt] Data looks like JSON, parsing directly");
|
|
6713
|
+
try {
|
|
6714
|
+
const parsed = JSON.parse(encryptedData);
|
|
6715
|
+
logger.debug("[PWTK Decrypt] Successfully parsed as JSON");
|
|
6716
|
+
return parsed;
|
|
6717
|
+
} catch {
|
|
6718
|
+
logger.debug("[PWTK Decrypt] Failed to parse as JSON, returning as string");
|
|
6719
|
+
return encryptedData;
|
|
6720
|
+
}
|
|
6721
|
+
}
|
|
6722
|
+
if (window.decrypt && keyStr) {
|
|
6723
|
+
logger.debug("[PWTK Decrypt] Trying WebAssembly decrypt");
|
|
6724
|
+
logger.debug("[PWTK Decrypt] Input to window.decrypt:", {
|
|
6725
|
+
data: encryptedData.substring(0, 100) + "...",
|
|
6726
|
+
key: keyStr
|
|
6727
|
+
});
|
|
6728
|
+
try {
|
|
6729
|
+
const decrypted = window.decrypt(encryptedData, keyStr);
|
|
6730
|
+
logger.debug("[PWTK Decrypt] window.decrypt returned:", {
|
|
6731
|
+
type: typeof decrypted,
|
|
6732
|
+
length: decrypted?.length,
|
|
6733
|
+
preview: decrypted ? decrypted.substring(0, 200) + (decrypted.length > 200 ? "..." : "") : null,
|
|
6734
|
+
sameAsInput: decrypted === encryptedData,
|
|
6735
|
+
hasInvalidChars: decrypted?.includes("�")
|
|
6736
|
+
});
|
|
6737
|
+
if (decrypted && decrypted !== encryptedData && !decrypted.includes("�")) {
|
|
6738
|
+
try {
|
|
6739
|
+
const parsed = JSON.parse(decrypted);
|
|
6740
|
+
logger.debug("[PWTK Decrypt] ✅ WebAssembly decryption successful, parsed as JSON:", parsed);
|
|
6741
|
+
return parsed;
|
|
6742
|
+
} catch {
|
|
6743
|
+
if (decrypted.length > 0) {
|
|
6744
|
+
logger.debug("[PWTK Decrypt] ✅ WebAssembly decryption successful, returning as string");
|
|
6745
|
+
return decrypted;
|
|
6746
|
+
}
|
|
6747
|
+
}
|
|
6748
|
+
} else {
|
|
6749
|
+
logger.debug("[PWTK Decrypt] window.decrypt did not change the data or returned invalid result");
|
|
6750
|
+
}
|
|
6751
|
+
} catch (e) {
|
|
6752
|
+
logger.debug("[PWTK Decrypt] WebAssembly decrypt error:", e);
|
|
6753
|
+
}
|
|
6754
|
+
} else {
|
|
6755
|
+
logger.debug("[PWTK Decrypt] WebAssembly not available:", {
|
|
6756
|
+
hasWindowDecrypt: !!window.decrypt,
|
|
6757
|
+
hasKey: !!keyStr,
|
|
6758
|
+
windowDecryptType: typeof window.decrypt
|
|
6759
|
+
});
|
|
6760
|
+
}
|
|
6761
|
+
const keys = [
|
|
6762
|
+
keyStr,
|
|
6763
|
+
"thisisakey123456",
|
|
6764
|
+
"VITE_CRYPTO_KEY"
|
|
6765
|
+
].filter(Boolean);
|
|
6766
|
+
for (const secretKey of keys) {
|
|
6767
|
+
if (!secretKey) continue;
|
|
6768
|
+
try {
|
|
6769
|
+
const key = CryptoJS.enc.Utf8.parse(secretKey.padEnd(16, "0").slice(0, 16));
|
|
6770
|
+
const iv = CryptoJS.enc.Utf8.parse(secretKey.padEnd(16, "0").slice(0, 16));
|
|
6771
|
+
const decrypted = CryptoJS.AES.decrypt(encryptedData, key, {
|
|
6772
|
+
iv,
|
|
6773
|
+
mode: CryptoJS.mode.CBC,
|
|
6774
|
+
padding: CryptoJS.pad.Pkcs7
|
|
6775
|
+
});
|
|
6776
|
+
const decryptedStr = decrypted.toString(CryptoJS.enc.Utf8);
|
|
6777
|
+
if (decryptedStr) {
|
|
6778
|
+
try {
|
|
6779
|
+
return JSON.parse(decryptedStr);
|
|
6780
|
+
} catch {
|
|
6781
|
+
return decryptedStr;
|
|
6782
|
+
}
|
|
6783
|
+
}
|
|
6784
|
+
} catch (e) {
|
|
6785
|
+
}
|
|
6786
|
+
}
|
|
6787
|
+
try {
|
|
6788
|
+
const decoded = atob(encryptedData);
|
|
6789
|
+
try {
|
|
6790
|
+
return JSON.parse(decoded);
|
|
6791
|
+
} catch {
|
|
6792
|
+
return decoded;
|
|
6793
|
+
}
|
|
6794
|
+
} catch {
|
|
6795
|
+
}
|
|
6796
|
+
logger.debug("[PWTK Decrypt] ❌ All decryption methods failed, returning original data");
|
|
6797
|
+
return encryptedData;
|
|
6798
|
+
}
|
|
6799
6799
|
class NetworkInterceptor {
|
|
6800
6800
|
constructor() {
|
|
6801
6801
|
this.requests = /* @__PURE__ */ new Map();
|
|
@@ -8216,7 +8216,7 @@ class DebugPanel {
|
|
|
8216
8216
|
this.renderRequests();
|
|
8217
8217
|
}
|
|
8218
8218
|
addRequestToUI(request) {
|
|
8219
|
-
|
|
8219
|
+
logger.debug("[PWTK UI] Adding/updating request:", {
|
|
8220
8220
|
id: request.id,
|
|
8221
8221
|
url: request.url,
|
|
8222
8222
|
hasResponse: !!request.responseBody,
|