comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[C#] Creacion de un Server Builder con recursos

  • 0 Respuestas
  • 1184 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado BigBear

  • *
  • Underc0der
  • Mensajes: 543
  • Actividad:
    0%
  • Reputación 3
    • Ver Perfil
« en: Marzo 10, 2015, 02:10:15 pm »
[Titulo] : Creacion de un Server Builder con recursos
[Lenguaje] : C#
[Autor] : Doddy Hackman

[Temario]

-- =================--------

0x01 : Introduccion
0x02 : Creacion del builder
0x03 : Creacion del stub
0x04 : Probando el programa
0x05 : Builder Tools

-- =================--------

0x01 : Introduccion

En este manual les voy a enseñar como hacer un Server Builder en C# con recursos , en el manual anterior les enseñe como hacerlo mediante EOF , una mejor forma de hacer un server builder es usando recursos.

Empecemos ...

0x02 : Creacion del builder

Para crear el server builder tenemos que crear un nuevo proyecto en Visual Studio de esta manera si usan la version 2010 :

"Archivo -> Nuevo -> Proyecto -> Elegimos Aplicacion de Windows Forms" y le damos en aceptar

Como en la siguiente imagen :



Ahora tenemos que crear dos edit y un boton con el texto "Make Server" como en la siguiente imagen :



Despues deben cambiar el titulo del formulario a "Builder" y cambiarle el nombre por defecto de los edits de la siguiente forma :

textBox1 -> ip
textBox2 -> port

Para empezar vamos al inicio del codigo del programa y agregamos el siguiente codigo para poder manejar recursos :

Código: C#
  1. using System.CodeDom.Compiler;
  2. using Microsoft.CSharp;
  3. using System.IO;
  4. using System.Resources;
  5.  

Una vez hecho hacemos doble click en el boton y ponemos el siguiente codigo :

Código: C#
  1. private void button1_Click(object sender, EventArgs e)
  2. {
  3.         string linea = "-ip-"+ip.Text+"-ip-"+"-port-"+port.Text+"-port-"; // Establecemos la variable "linea" como los datos de la IP y el puerto
  4.  
  5.         System.Resources.ResourceWriter escribiendo = You are not allowed to view links. Register or Login System.Resources.ResourceWriter("configuration.resources"); // Empezamos a escribir el
  6.         // recurso "configuration"
  7.  
  8.         escribiendo.AddResource("configuration",linea); // Agregamos el recurso "configuration" con los datos de la variable "linea"
  9.         escribiendo.Close(); // Guarda los recursos y se cierra
  10.  
  11.         System.CodeDom.Compiler.CompilerParameters compilador = You are not allowed to view links. Register or Login System.CodeDom.Compiler.CompilerParameters(); // Iniciamos la instancia CompilerParameters
  12.  
  13.         compilador.GenerateExecutable = true; // Aclaramos que queremos que genere un ejecutable
  14.         compilador.OutputAssembly = "stub.exe"; // Establecemos el nombre del ejecutable a generar
  15.         compilador.ReferencedAssemblies.Add("System.dll"); // Agregamos el ensamblado System
  16.         compilador.ReferencedAssemblies.Add("System.Windows.Forms.dll"); // Agregamos el ensamblado System.Windows.Forms
  17.         compilador.EmbeddedResources.Add("configuration.resources"); // Agregamos los recursos que se van a incluir en el ejecutable resultante
  18.         compilador.CompilerOptions += "/t:winexe"; // Establecemos los argumentos de la linea de comandos que usara el compilador
  19.  
  20.         System.CodeDom.Compiler.CompilerResults final = You are not allowed to view links. Register or Login Microsoft.CSharp.CSharpCodeProvider().CompileAssemblyFromSource(compilador, Properties.Resources.stub);
  21.            
  22.         // Compilamos el recurso
  23.  
  24.         if (File.Exists("configuration.resources")) // Si existe el archivo "configuration.resources" ...
  25.         {
  26.                 System.IO.File.Delete("configuration.resources"); // Lo borramos
  27.         }
  28.         MessageBox.Show("Done"); // Mostramos por pantalla un mensaje para decir que el stub esta listo
  29. }
  30.  

El codigo les deberia ver algo asi :



Con eso ya tendriamos hecho el builder.

0x03 : Creacion del stub

Para hacer el stub , tenemos que seguir en el mismo proyecto , entonces vamos a "Proyecto->Propiedades" y seleccionamos la pestaña de "Recursos" , les deberia aperecer esta ventana :



Ahora hacemos click en "Agregar recurso" y seleccionamos "Agregar nuevo archivo de texto" , entonces nos va a aparecer una nueva ventana y escriben "stub".

Como en la siguiente imagen :



Una vez completado veran que pueden escribir en el stub.txt , tienen que poner el siguiente codigo :

Código: C#
  1. using System;
  2. using System.Text;
  3. using System.Windows.Forms;
  4. using System.Resources;
  5. using System.Text.RegularExpressions;
  6.  
  7. namespace stub
  8. {
  9.     class Program
  10.     {
  11.         static void Main()
  12.         {
  13.  
  14.             string ip = ""; // Declaramos la variable string "ip" que contendra la IP
  15.             string port = ""; // Declaramos la variable string "port" que contendra el puerto
  16.  
  17.             ResourceManager leyendo_recurso = You are not allowed to view links. Register or Login ResourceManager("configuration", System.Reflection.Assembly.GetExecutingAssembly()); // Cargamos los datos
  18.             // del recurso "configuration"
  19.  
  20.             string datos = leyendo_recurso.GetString("configuration"); // Leemos los datos del recurso "configuration"
  21.  
  22.             Match regex = Regex.Match(datos, "-ip-(.*?)-ip--port-(.*?)-port-", RegexOptions.IgnoreCase); // Usamos una expresion regular para buscar la IP
  23.             // y el puerto
  24.             if (regex.Success) // Si se encontro algo ...
  25.             {
  26.                 ip = regex.Groups[1].Value; // Guardamos la IP encontrada en la variable "ip"
  27.                 port = regex.Groups[2].Value; // Guardamos el puerto encontrado en la variable "port"
  28.             }
  29.  
  30.             MessageBox.Show("[+] IP : " + ip); // Mostramos la IP con un mensaje usando la variable "ip"
  31.             MessageBox.Show("[+] Port : " + port); // Mostramos el puerto con un mensaje usando la variable "port"
  32.  
  33.         }
  34.     }
  35. }
  36.  

Una imagen de como deberia quedar :



Con eso ya terminamos el stub.

0x04 : Probando el programa

Una vez terminado el programa podremos probarlo , entonces cargamos el builder y pongan los datos que quieran , le dan al boton "Make Server" y despues cargan el stub para mostrar los datos cargados desde el builder.

Les deberia que quedar algo asi :









0x05 : Builder Tools

Como regalo les dejo una clase en C# que hice para aplicar el metodo EOF de una forma mas facil y segura (datos encriptados con XOR).

El codigo viene con ejemplos de uso y tiene el siguiente codigo :

Código: C#
  1. // Class Name : Builder Tools
  2. // Version : 0.1
  3. // (C) Doddy Hackman 2015
  4. //
  5. // Examples :
  6. //builder_tools tools = new builder_tools();
  7. //tools.escribir_eof("stub.exe","hola mundo de ***** [ip]morite[ip][port]sdasd[port]","key");
  8. //Console.Write(tools.leer_eof("stub.exe", "key"));
  9. //
  10.  
  11. using System;
  12. using System.Collections.Generic;
  13. using System.Text;
  14.  
  15. using System.IO;
  16. using System.Text.RegularExpressions;
  17.  
  18. namespace builder
  19. {
  20.     class builder_tools
  21.     {
  22.         public string xor_now(string linea, string key)
  23.         {
  24.             // Credits : Based on http://stackoverflow.com/questions/2532668/help-me-with-xor-encryption
  25.             // Thanks to Daniel Earwicker
  26.             var contenido = You are not allowed to view links. Register or Login StringBuilder();
  27.             for (int i = 0; i < linea.Length; i++)
  28.             {
  29.                 contenido.Append((char)((uint)linea[i] ^ (uint)key[i % key.Length]));
  30.             }
  31.             return contenido.ToString();
  32.         }
  33.  
  34.         public bool escribir_eof(string archivo, string texto, string key)
  35.         {
  36.             string delimitador = "-0x646F646479206861636B6D616E-";
  37.  
  38.             FileStream abriendo = You are not allowed to view links. Register or Login FileStream(archivo, FileMode.Append);
  39.             BinaryWriter seteando = You are not allowed to view links. Register or Login BinaryWriter(abriendo);
  40.             seteando.Write(delimitador + xor_now(texto, key) + delimitador);
  41.             seteando.Flush();
  42.             seteando.Close();
  43.             abriendo.Close();
  44.  
  45.             return true;
  46.         }
  47.  
  48.         public string leer_eof(string archivo, string key)
  49.         {
  50.             StreamReader viendo = You are not allowed to view links. Register or Login StreamReader(archivo);
  51.  
  52.             string contenido = viendo.ReadToEnd();
  53.             string rta = "";
  54.  
  55.             Match regex = Regex.Match(contenido, "-0x646F646479206861636B6D616E-(.*?)-0x646F646479206861636B6D616E-", RegexOptions.IgnoreCase);
  56.  
  57.             if (regex.Success)
  58.             {
  59.                 rta = xor_now(regex.Groups[1].Value, key);
  60.             }
  61.             else
  62.             {
  63.                 rta = "WTF!";
  64.             }
  65.  
  66.             return rta;
  67.         }
  68.     }
  69. }
  70.  
  71. // The End ?
  72.  

Eso seria todo.

--========--
  The End ?
--========--

You are not allowed to view links. Register or Login.

Version en VideoTutorial :


 

¿Te gustó el post? COMPARTILO!



[SOURCE] GameTracker Server List 1.0

Iniciado por Elektro

Respuestas: 0
Vistas: 850
Último mensaje Mayo 12, 2015, 11:26:56 am
por Elektro
[C#] Creacion de un Troyano de conexion inversa

Iniciado por BigBear

Respuestas: 1
Vistas: 3454
Último mensaje Abril 08, 2015, 08:32:24 pm
por Jhonny00xs
Tutorial C# - Creación de un proyecto en C#

Iniciado por Abraham20

Respuestas: 4
Vistas: 2500
Último mensaje Abril 13, 2016, 03:58:45 am
por jaav
[C#] Creacion de un Keylogger

Iniciado por BigBear

Respuestas: 4
Vistas: 2894
Último mensaje Septiembre 10, 2014, 01:53:53 pm
por BigBear
[C#] Creacion de un IRC Bot

Iniciado por BigBear

Respuestas: 2
Vistas: 7840
Último mensaje Octubre 20, 2014, 05:41:26 pm
por @NetFcruz