Я всегда хотел написать эту статью, но когда я был на работе, я сказал, что пойду на работу, но я не написал ее. После того, как я вернулся домой, я был занят игрой в игры и отбросил их в сторону. Теперь я должен начать писать, не выполняя свою работу, надеясь, что мой босс не узнает мой блог. Ха -ха, я очень заинтересовался вирусами HTML давным -давно. Мне было интересно, как удаленно загрузить исполняемые файлы в локальную область без разрешения. У меня просто не было возможности получить оригинальный код ASP, поэтому я осмелился сделать любой анализ из контекста. Недавно я услышал, как друг сказал, что когда он читал веб -страницу, вирус брандмауэр побудил, что есть вирус, и попросил меня быть осторожным (сначала слава его). У меня была вспышка мыслей, открыл Slackget и загрузил домашнюю страницу вируса. После небольшого взгляда я обнаружил, что в следующих строках кода домашней страницы существует неявная плавающая рама. URL -адрес, на который ссылался, не был локальным, казалось, что это должно быть, поэтому я снова использовал Flackget и пошел вниз. Я на самом деле обнаружил, что пространство, где было размещено вирус, не поддерживает ASP, а файл ASP, который я загружал, является исходным файлом. После этого интереса я загрузил все соответствующие документы вируса через несколько шагов. Поскольку этот вирус очень прост, я скопировал только несколько клипов. Если вы действительно заинтересованы, вы, возможно, не будете осторожны, чтобы найти веб -страницу с вирусом. Однако не используйте IE, чтобы прочитать его. Вы должны использовать Mlassget и другие инструменты загрузки для его загрузки, а затем открыть его с блокнотом. В противном случае, если вас ударили, не приходите ко мне. ОК, начнется главный текст. Существует три файла для реальных вирусов, один - это загрузочный файл, один - файл загрузки, а третий - файл активации. Ключевой частью первого загрузочного файла является: эта функция состоит в том, чтобы ссылаться на загрузку и активацию двух файлов в качестве объектов страницы. Это также ключевой момент, где вирусный файл может быть заражен локально. В указанном файле он может фактически ссылаться на компонент действия клиента без каких -либо препятствий. О, это тот нож. Второе - загрузить файл вируса EXE, а затем загрузить EXE, не выпуская поле для загрузки. Это задача для сбора и загрузки файлов. Метод этого вируса состоит в том, чтобы использовать компонент microsoft.xmlhttp и response.contenttype = image/gif на стороне сервера для загрузки вируса в формате изображения в веб -кэш клиента (это очень простая операция Get/binaryWrite, поэтому я не буду вдаваться в подробности). Третье заключается в том, что процесс активации сенсорной активации очень умный. Вирус сначала использует FSO для создания файла HTA в соответствии с C:/и записывает процесс активации в этот файл. Затем используйте wscript.shell для запуска этого файла. Таким образом, нет проблем с операциями, которые требуют больших разрешений во время процесса активации (например, операции по написанию реестра). Конкретный процесс работы такой. Переместите файл вируса в каталоге веб -кэша в системный каталог файлов и измените его на win.exe. Напишите клавишу самостоятельного начала в реестр, чтобы вирус мог автоматически запускаться после перезапуска системы, а затем удалить файл HTA для завершения инфекции и активации. Это основной процесс работы вируса (я не буду упоминать часть разрушения вируса в соответствии с соглашением), но что для нас использует? На самом деле, я очень ненавижу этот вирус, но все еще есть некоторые для загрузки и процессов активации. Например: система, над которой вы работаете, должна загрузить некоторые компоненты и активировать ее, прежде чем ее можно будет использовать. Такая операция, конечно, не является проблемой для тех, кто ее понимает, но если вы сталкиваетесь с пользователем, который ничего не выяснил в сети, я думаю, система взорвется, прежде чем она начнет использовать ваш телефон. Если вы заимствуете этот метод и автоматически загружаете компоненты и активируете их автоматически, когда другая сторона позволяет им, это сэкономит вам гораздо больше проблем, верно? Тем не менее, этот метод очень удобен для маленьких файлов. Если вы хотите загрузить файлы выше 1M ... вам нужно рассмотреть многопоточную загрузку. Конечно, это не область этой статьи. Я расскажу о том, как использовать ASP+XML для реализации веб-многопоточной загрузки и многопоточной загрузки в будущем.