ProxyFF Deep Hunter & Auto-Auth

Varredura total + Preenchimento automático de senha RUAN

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         ProxyFF Deep Hunter & Auto-Auth
// @namespace    http://tampermonkey.net/
// @version      4.0
// @description  Varredura total + Preenchimento automático de senha RUAN
// @author       Gemini
// @match        *://authproxyff.up.railway.app/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    const SENHA_PADRAO = "RUAN";

    const panel = document.createElement('div');
    panel.style = "position: fixed; top: 10px; left: 10px; z-index: 99999; background: rgba(0, 0, 0, 0.9); color: #00ff00; padding: 12px; border: 1px solid #444; font-family: monospace; font-size: 11px; width: 260px; max-height: 80vh; overflow-y: auto; border-radius: 8px; box-shadow: 0 0 20px rgba(0,255,0,0.2);";
    panel.innerHTML = `
        <div style="font-weight:bold; color:yellow; margin-bottom:8px; border-bottom:1px solid #333; display:flex; justify-content:space-between;">
            <span>ULTRA SCAN + AUTH</span>
            <span id="closeP" style="cursor:pointer; color:red;">[X]</span>
        </div>
        <button id="startScan" style="width:100%; background:#004400; color:white; border:none; padding:10px; cursor:pointer; margin-bottom:5px; border-radius:4px;">VARREDURA TOTAL</button>
        <button id="injectAuth" style="width:100%; background:#444400; color:white; border:none; padding:10px; cursor:pointer; margin-bottom:10px; border-radius:4px;">INJETAR SENHA (RUAN)</button>
        <div id="scanLog" style="color:cyan; font-size:9px;">Pronto.</div>
        <div id="resultsFound" style="margin-top:10px;"></div>
    `;
    document.body.appendChild(panel);

    document.getElementById('closeP').onclick = () => panel.style.display = 'none';

    // Função para injetar a senha em qualquer campo suspeito
    function injetarSenha() {
        const inputs = document.querySelectorAll('input');
        let cont = 0;
        inputs.forEach(input => {
            const type = input.type.toLowerCase();
            const name = (input.name || "").toLowerCase();
            const id = (input.id || "").toLowerCase();
            const placeholder = (input.placeholder || "").toLowerCase();

            // Verifica se o campo parece pedir senha ou chave
            if (type === 'password' || name.includes('key') || id.includes('auth') || placeholder.includes('senha') || placeholder.includes('pass')) {
                input.value = SENHA_PADRAO;
                input.style.border = "2px solid yellow"; // Destaca onde injetou
                cont++;
            }
        });
        document.getElementById('scanLog').innerText = `Senha injetada em ${cont} campo(s).`;
    }

    async function executarVarredura() {
        const log = document.getElementById('scanLog');
        const display = document.getElementById('resultsFound');
        display.innerHTML = "";
        let db = { keys: new Set(), ips: new Set() };

        const keyRegex = /proxyff-[\w-]+/gi;
        const ipRegex = /\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b/g;

        log.innerText = "Lendo tudo (HTML + Scripts)...";

        // Scan HTML e Atributos
        const source = document.documentElement.innerHTML;
        (source.match(keyRegex) || []).forEach(k => db.keys.add(k));
        (source.match(ipRegex) || []).forEach(i => db.ips.add(i));

        // Scan em arquivos JS externos
        const scripts = Array.from(document.querySelectorAll('script[src]'));
        for (const s of scripts) {
            try {
                const res = await fetch(s.src);
                const code = await res.text();
                (code.match(keyRegex) || []).forEach(k => db.keys.add(k));
                if (code.includes('password') || code.includes('auth')) {
                    console.log("Aviso: Lógica de senha encontrada no script: " + s.src);
                }
            } catch(e) {}
        }

        log.innerText = "Concluído!";
        
        let out = "";
        db.keys.forEach(k => {
            out += `<div style="background:#222; padding:5px; margin-top:3px; border-left:2px solid yellow;">
                ${k} <button style="float:right; font-size:9px;" onclick="navigator.clipboard.writeText('${k}')">COPY</button>
            </div>`;
        });
        
        if (db.ips.size > 0) {
            out += "<br><b style='color:cyan;'>IPs/LOGS:</b><br>";
            db.ips.forEach(ip => { out += `<span style="font-size:10px;">${ip}</span><br>`; });
        }

        display.innerHTML = out || "<i>Nenhum dado novo encontrado.</i>";
    }

    document.getElementById('startScan').onclick = executarVarredura;
    document.getElementById('injectAuth').onclick = injetarSenha;

    // Tenta injetar automaticamente ao carregar
    setTimeout(injetarSenha, 2000);

})();