T.ME/BIBIL_0DAY
CasperSecurity


Server : Apache/2
System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64
User : gositeme ( 1004)
PHP Version : 8.2.29
Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Directory :  /home/gositeme/domains/lavocat.quebec/public_html/scripts/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/gositeme/domains/lavocat.quebec/public_html/scripts/find-auth-redirects.js
const fs = require('fs');
const path = require('path');

const TARGET_DIRS = [
  path.join(__dirname, '../src/pages'),
  path.join(__dirname, '../src/components'),
];
const FILE_EXT = '.tsx';
const PATTERNS = [
  /router\.push\(['"`]\/auth\/login['"`]\)/g,
  /router\.replace\(['"`]\/auth\/login['"`]\)/g,
  /useSession\s*\(/g,
  /const\s*\{[^}]*status[^}]*\}\s*=\s*useSession\(/g,
];

function scanFile(filePath) {
  const content = fs.readFileSync(filePath, 'utf8');
  const lines = content.split(/\r?\n/);
  let results = [];
  lines.forEach((line, idx) => {
    PATTERNS.forEach((pattern) => {
      if (pattern.test(line)) {
        results.push({
          file: filePath,
          line: idx + 1,
          match: line.trim(),
        });
      }
    });
  });
  return results;
}

function walkDir(dir) {
  let results = [];
  fs.readdirSync(dir).forEach((file) => {
    const fullPath = path.join(dir, file);
    if (fs.statSync(fullPath).isDirectory()) {
      results = results.concat(walkDir(fullPath));
    } else if (file.endsWith(FILE_EXT)) {
      results = results.concat(scanFile(fullPath));
    }
  });
  return results;
}

function main() {
  let allResults = [];
  TARGET_DIRS.forEach((dir) => {
    if (fs.existsSync(dir)) {
      allResults = allResults.concat(walkDir(dir));
    }
  });
  if (allResults.length === 0) {
    console.log('No auth redirect patterns found.');
    return;
  }
  console.log('Auth redirect patterns found:');
  allResults.forEach((res) => {
    console.log(`${res.file}:${res.line}: ${res.match}`);
  });
}

main(); 

CasperSecurity Mini