ProxyFF Key Hunter & Reset

Procura chaves proxyff e tenta identificar funções de reset

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

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

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
// ==UserScript==
// @name         ProxyFF Key Hunter & Reset
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Procura chaves proxyff e tenta identificar funções de reset
// @author       Gemini
// @match        https://authproxyff.up.railway.app/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Criar o painel visual no mobile
    const panel = document.createElement('div');
    panel.style = "position: fixed; top: 10px; right: 10px; z-index: 9999; background: #222; color: #0f0; padding: 10px; border: 1px solid #0f0; font-family: monospace; font-size: 12px; max-width: 80%; overflow: auto; border-radius: 8px; opacity: 0.9;";
    panel.innerHTML = `
        <b style="color: yellow;">[ProxyFF Hunter]</b><br>
        <button id="scanBtn" style="margin-top:5px; width:100%;">Escanear Site</button>
        <div id="results" style="margin-top:10px; white-space: pre-wrap;">Aguardando scan...</div>
        <hr>
        <button id="resetBtn" style="width:100%; background: red; color: white; border: none; display:none;">TENTAR RESETAR KEY</button>
    `;
    document.body.appendChild(panel);

    const resultsDiv = document.getElementById('results');
    const resetBtn = document.getElementById('resetBtn');

    // Função de Escaneamento
    document.getElementById('scanBtn').onclick = function() {
        const bodyText = document.body.innerText;
        const htmlContent = document.documentElement.innerHTML;
        
        // Procurar por chaves (proxyff-...)
        const keyPattern = /proxyff-[\w-]+/g;
        const keys = htmlContent.match(keyPattern);
        
        // Procurar por botões de Reset
        const resetElements = document.querySelectorAll('button, a, input[type="button"]');
        let foundReset = null;

        resetElements.forEach(el => {
            if (el.innerText.toLowerCase().includes('reset') || el.value?.toLowerCase().includes('reset')) {
                foundReset = el;
            }
        });

        // Mostrar resultados
        let output = "";
        if (keys) {
            output += "<b>Keys Encontradas:</b>\n" + [...new Set(keys)].join('\n') + "\n\n";
        } else {
            output += "Nenhuma key encontrada.\n\n";
        }

        if (foundReset) {
            output += "<span style='color:cyan;'>Botão de Reset Detectado!</span>";
            resetBtn.style.display = "block";
            resetBtn.onclick = () => {
                if(confirm("Deseja tentar clicar no botão de Reset do site?")) {
                    foundReset.click();
                }
            };
        } else {
            output += "Nenhum botão de Reset visível.";
        }

        resultsDiv.innerHTML = output;
    };

})();