• [C#] Creacion de un Server Builder

 #454396  por Doddy
 29 Ago 2014, 21:16
[Titulo] : Creacion de un Server Builder
[Lenguaje] : C#
[Autor] : Doddy Hackman

[Temario]

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

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

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

0x01 : Introduccion

Ya habia hecho este manual en Delphi pero como me gusta traducir codigos ahora le toca a C# , para empezar el server builder se usa en el malware para poder generar el virus
o programa malicioso con datos importantes para el atacante como la ip , puerto o alguna configuracion que el server builder considera importante para el programa malicioso.
En este caso veremos solo la ip y el puerto , comencemos ...

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 creemos dos textbox , uno va a ser para la IP y el otro textbox para el puerto , tambien agregamos un boton que sere el encargado de escribir en el stub , pueden poner
los tres en el lugar que quieran o sino haganlo como en la siguiente imagen :



Una vez hecho el diseño del form del builder vayan al codigo del formulario y agreguen este linea al inicio del codigo.
Código: [ Debe registrarse para ver este enlace ]
using System.IO; // Agregar esta linea al inicio del codigo para el manejo de archivos
Despues hagan doble click en el boton que crearon para agregar el siguiente codigo :
Código: [ Debe registrarse para ver este enlace ]
FileStream abriendo = new FileStream("stub.exe", FileMode.Append); // Abrimos el stub.exe para escribir en el usando "abriendo"
BinaryWriter seteando = new BinaryWriter(abriendo); // Usamos BinaryWriter para poder escribir en el archivo binario usando "seteando"
seteando.Write("-IP-" + textBox1.Text + "-IP-" + "-PORT-" + textBox2.Text + "-PORT-"); // Escribimos en el archivo binario la IP y el puerto
                                                                                       // usando los valores de los textBox1 y textBox2
seteando.Flush(); // Hace que los datos almacenados en el buffer se escriban
seteando.Close(); // Cerramos el BinaryWriter "seteando"
abriendo.Close(); // Cerramos el FileStream "abriendo"
Les deberia quedar algo asi :



Con esto ya estaria el server builder , ahora vamos al stub ...

0x03 : Creacion del stub

Bueno , ahora les voy a explicar como hacer el stub , para empezar creamos otro proyecto de la siguiente manera :

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

Como en la siguiente imagen :



Una vez creado el proyecto , agregamos al formulario 2 textBox y un boton que servira para cargar la configuracion , les deberia quedar algo asi :



Unz vez terminado todo , agregamos estas dos lineas al inicio del codigo del formulario :
Código: [ Debe registrarse para ver este enlace ]
using System.IO; // Agregar esta linea para el manejo de archivos
using System.Text.RegularExpressions; // Agregar esta linea para el manejo de las expresiones regulares
Ahora hacemos doble click en el boton creado :
Código: [ Debe registrarse para ver este enlace ]
private void button1_Click(object sender, EventArgs e)
{

	string ip = ""; // Declaramos la variable que contendra la IP como string
	string puerto = ""; // Declaramos la variable que tendra el puerto como string

	StreamReader viendo = new StreamReader(Application.ExecutablePath); // Inicializamos la instancia StreamReader como "viendo" para abrir el stub

	string contenido = viendo.ReadToEnd(); // Leemos el contenido del programa y guardamos el resultado en la variable "contenido"

	Match regex = Regex.Match(contenido, "-IP-(.*?)-IP--PORT-(.*?)-PORT-", RegexOptions.IgnoreCase); // Usamos una expresion regular para buscar la ip
                                                                                            // y el puerto
	if (regex.Success) // Si se encontro algo ...
	{
		ip = regex.Groups[1].Value; // Guardamos la ip encontrada en la variable "ip"
		puerto = regex.Groups[2].Value; // Guardamos el puerto encontrado en la variable "puerto"
	}

	textBox1.Text = ip; // Ponemos la ip que obtuvimos en el textBox1
	textBox2.Text = puerto; // Ponemos el puerto que obtuvimos en el textBox2

}
Les deberia quedar algo asi :



Con todo esto ya tenemos listo el server builder tanto el builder como el stub ahora nos toca probarlo ...

0x04 : Probando el programa

Una vez compilado el builder y el stub procedemos a probarlo , carguen el builder y ponganle los datos que les venga en gana en mi caso voy a poner como ip "localhost" y
como puerto "666" , despues carguen el stub y hagan click en el boton para cargar la configuracion , a continuacion les dejo una imagen de como quedaria el server builder
ademas en la imagen les muestro el stub cargado en WinHex para que vean que si funciona :



Eso seria todo.

Proximamente se viene un tutorial sobre como hacer un Keylogger en C# ...

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

[ Debe registrarse para ver este enlace ].

Version en VideoTutorial :

 #454413  por Wal999
 29 Ago 2014, 23:06
buen