Электронная библиотека

Хакер


Хакер

Personal html killers

Xakep Online -> Журнал, номер #008, стр. 008-021-1


UneartheD (unearthed46@mail.ru)

Баг Виндов

Многие из вас знают, что мастдай разрешает использовать длинные слова в названиях файлов (больше стандартных досовских 8 символов). Т.е. если в досе ты, предположим, решишь назвать какой-нить файл superextrafile.txt, то тебе, мягко говоря, откажут. И имя твоего файла будет сокращено до superext.txt. А вот в Виндах ты можешь использовать имя любой длины... Но это не совсем так. Винды конечно позволяют создавать длинные имена файлов, но им все-таки есть предел.

Ты, наверно, уже слышал когда-нибудь, что если на рабочем столе создать файл с именем, содержащим более 200 символов, и разрешением не txt, а, к примеру, где-нибудь так 60 символов, то потом ты не сможешь стереть его через мастдай... придется в дос лезть. Все это происходит из-за ошибки stack overflow (это, грубо говоря, если в мешок насыпать песка больше, чем влезает, то песок посыплется за края, и получится overflow - переполнение). Я не стану объяснять, что это значит для мастдая, так как это очень долго да и тема у меня другая. Это все было предисловием к созданию очередного "убийцы".

Как его использовать

А вот теперь, зная, что у виндов бывают такие серьезные глюки с длинными (очень длинными) именами, можно попробовать использовать это для (к примеру) закрытия IE!

Тебе потребуется: один файл (crashIE.html) и... да и все.

Как и все хтмл-файлы, начать его следует с - показывая, что дальше идет язык HTML.

Дальше надо как-нибудь заставить машину жертвы, открывающую эту страничку, обратиться к файлу с очень большим именем. Это можно сделать с помощью . Этот тэг (EMBED) позволяет вставлять в страничку мультимедийные файлы (фильмы, звуки и т.д.), которые будут управляться plugin'ом.

Теперь, зная способ, как обратить внимание удаленной машины к файлу с длинным именем, осталось заполнить место (filename). Имя файла должно быть больше 250 символов (200-250 - это предел имени файла в мастдае (к примеру, в имени можно просто перечислить цифры от 1 до 200)). Зачем нам такое имя, ты уже знаешь. Но самое главное то, что этому файлу совсем необязательно существовать на свете! Допустим, ты заполнил этот тег так: . 13 - это имя файла, а после точки идет его расширение, но не какое-то там txt или exe, а набор символов, кол-вом больше 250!!! А "file://C|/" нужен для того, чтобы машина бедняги пыталась найти этот файл у себя на диске. А теперь конец файла crashIE.html завершаем окончанием языка HTML - .

Теперь при запуске этого файла машина начнет искать файл 13.1...432 на диске C. Точнее, IE будет отдан приказ найти такой файл, и во время обработки этой команды, из-за длины файла, у IE не хватит памяти, чтобы воспринять такое имя, и все закончится сообщением об ошибке и сворачиванием всех окон IE (в случае, если окна не идут разными процессами).

Баг Netscape'а

К сожалению, на Netscape эта фенька не работает, но не стоит огорчаться. Я тут придумал, как его побить.

В общем, для получения веселья с Netscape'ом нужно опять создать зацикливающийся хтмл. Но если в прошлый раз (см. Х #4) это были 12 хтмл-файлов, ссылающиеся друг на друга, и при этом получалось недетское зацикливание, то теперь достаточно одного файла. Знающим хтмл известен Java скрипт redirct'a! Это когда ты открыл страничку, и с нее автоматически тебя куда-нить отправляют. Это осуществляется такой вот вставкой в хтмл: . Меняешь URL на любой нужный тебе адрес и при открытии этой станицы туда и полетишь! :)

Содержание  Вперед на стр. 008-021-2