Обнаружение запроса аутентификации (или упреждения и исключения) - PullRequest
0 голосов
/ 28 мая 2018

Можете ли вы обнаружить и предотвратить запрос проверки подлинности браузера с помощью некоторого JavaScript?

Я создаю небольшой фрагмент JavaScript, чтобы продемонстрировать сканирование портов для семинара по этическому взлому.Я генерирую графические теги в JavaScript для проверки открытого / закрытого состояния портов.При попытке подключиться к FTP-серверу, который требует аутентификации, браузер запрашивает кредиты:

enter image description here

Это приглашение блокирует выполнение JavaScript (фактическив значительной степени блокирует все действия браузера - вы не можете переключать вкладки).Есть ли способ определить, когда должно произойти приглашение к аутентификации, и каким-то образом его избежать?

Код сканирования порта приведен ниже (адаптировано из * * * * * * * * * * * * * *) port_scanner.)

function check_port(host, port) {
    return new Promise(function (resolve, reject) {
        const start = (new Date).getTime()

        let img_scan = new Image()
        img_scan.src = 'ftp://' + host + ":" + port
        img_scan.onerror = function () {
            var delta = (new Date).getTime() - start;

            if (delta < closetimeout) {
                clearInterval(interval)
                resolve(false)
            }
        }
        img_scan.onload = img_scan.onerror

        interval = setInterval(function () {
            var delta = (new Date).getTime() - start

            if (delta >= opentimeout) {
                if (!img_scan) return
                img_scan = undefined
                clearInterval(interval)
                resolve(true)
            }
        }, 1)
    })
}

async function main() {
    let state = await check_port('192.168.1.1', 21)
    console.log(state)
}

main()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...