profileur-cli 2.0.5 → 2.0.7
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/extractor_cli.js +3 -31
- package/package.json +1 -1
package/extractor_cli.js
CHANGED
|
@@ -365,8 +365,9 @@ function extractPasswords(profilePath, outputDir, key) {
|
|
|
365
365
|
* @param {Object} [options]
|
|
366
366
|
* @param {string} [options.outputDir] Base output directory (default: "extracted_data")
|
|
367
367
|
* @param {Object<string, { path: string, name: string }>} [options.browsers] Custom browsers map
|
|
368
|
+
* @returns {Promise<void>} resolves when all files are fully written
|
|
368
369
|
*/
|
|
369
|
-
function main(options = {}) {
|
|
370
|
+
async function main(options = {}) {
|
|
370
371
|
const outputBaseDir = options.outputDir || options.outputBaseDir || 'extracted_data';
|
|
371
372
|
let browsers = options.browsers || {};
|
|
372
373
|
|
|
@@ -382,36 +383,7 @@ function main(options = {}) {
|
|
|
382
383
|
log("=== Universal Browser Data Extractor CLI (ABE) ===");
|
|
383
384
|
log("Version 1.0.0");
|
|
384
385
|
debug("Debug mode enabled.");
|
|
385
|
-
|
|
386
|
-
if (!isAdmin()) {
|
|
387
|
-
log("[-] Not running as Administrator. Attempting to elevate...");
|
|
388
|
-
try {
|
|
389
|
-
const scriptPath = __filename;
|
|
390
|
-
const nodePath = process.execPath;
|
|
391
|
-
|
|
392
|
-
// Check if we are in an executable (pkg or electron built)
|
|
393
|
-
const isPackaged = process.pkg || process.argv[0].endsWith('.exe');
|
|
394
|
-
|
|
395
|
-
let cmd;
|
|
396
|
-
if (isPackaged && !process.argv[0].includes('node.exe')) {
|
|
397
|
-
// If running as a standalone EXE (not node.exe), restart the EXE itself
|
|
398
|
-
cmd = `powershell -Command "Start-Process '${process.argv[0]}' -ArgumentList '${args.join(' ')}' -Verb RunAs"`;
|
|
399
|
-
} else {
|
|
400
|
-
// If running as node script
|
|
401
|
-
cmd = `powershell -Command "Start-Process '${nodePath}' -ArgumentList '${scriptPath} ${args.join(' ')}' -Verb RunAs"`;
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
debug(`Elevation command: ${cmd}`);
|
|
405
|
-
execSync(cmd);
|
|
406
|
-
log("[+] Elevated process started. Please check the new window.");
|
|
407
|
-
process.exit(0);
|
|
408
|
-
} catch (err) {
|
|
409
|
-
error("Failed to elevate privileges: " + err.message);
|
|
410
|
-
log("[!] Continuing without Admin rights (some files may be locked)...");
|
|
411
|
-
}
|
|
412
|
-
} else {
|
|
413
|
-
log("[+] Running as Administrator.");
|
|
414
|
-
}
|
|
386
|
+
log("[*] Admin elevation check has been disabled; continuing with current privileges (some files may be locked).");
|
|
415
387
|
|
|
416
388
|
for (const [key, config] of Object.entries(browsers)) {
|
|
417
389
|
if (!fs.existsSync(config.path)) {
|
package/package.json
CHANGED