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

#441
Es solo por curiosidad, evidentemente. El PC es mio jeje...
Bueno, hice esto en mi Linux...

juanra@Juanra:~$ sudo su
[sudo] password for juanra:
root@Juanra:/home/juanra# cat /var/log/faillog
tty1��CMtty1��AM
root@Juanra:/home/juanra# cat /var/log/faillog | hexdump -C
00000000  00 00 00 00 74 74 79 31  00 00 00 00 00 00 00 00  |....tty1........|
00000010  d8 f4 43 4d 00 00 00 00  00 00 00 00 00 00 00 00  |..CM............|
00000020  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00005dc0  00 00 00 00 74 74 79 31  00 00 00 00 00 00 00 00  |....tty1........|
00005dd0  9a b6 41 4d 00 00 00 00                           |..AM....|
00005dd8
root@Juanra:/home/juanra#

Bueno, solo veo tty1 y unos bytes extraños:

216 244 67 77
154 182 65 77
-------------
d8 f4 43 4d
9a b6 41 4d

Arriba decimal, abajo ASCII. Que puede ser? Y como lo descifro? Gracias!
#442
Yo me apunto, veremos como va esto... Luego modifico con lo que vaya viendo...
#443
Bueno, te explico rapidamente:

nc -vv -l -p 31337 == nc -vvlp 3137

Una vez claro, explicamos args.
-vv indica que nos de mucha informacion sobre todo
-l indica listen, escuchar.
-p indica el puerto que le hayais metido

------------------------------------------------------------------------------------------

Vale, ahora aclarado eso te doy mi opinion:
1) Gracias por el texto, está muy bien en general, todo paso a paso... Lo he leido casi entero jeje...
2) Este texto es una guia muy buena, pero sus usos pueden ser ligeramente malevolos. No busques hacer post aqui de ese tipo. Quiero decir que el texto es una buena guia, pero que no lo hagas con esa idea...
3) En vez de abrir dos puertos, puedes usar uno solo.
4) Deberias de hacerlo todo un codigo en lenguajes compilados. Siempre es mejor que un script... ;)

Y ahora no te lo tomes a mal, pero no le veo mucha utilidad, aparte de infectar a alguien y gastarle una buena broma. Si quieres "hackear" con eso, te aclaro que no es hackear. Espero que no me malinterpretes.
Suerte!
#444
Una cosa es mandarles un email con algo de info y algo de publi, pero otra cosa es el spam...

CitarSe llama spam, correo basura o mensaje basura a los mensajes no solicitados, no deseados o de remitente no conocido, habitualmente de tipo publicitario, enviados en grandes cantidades (incluso masivas) que perjudican de alguna o varias maneras al receptor.
Tu me diras
#445
Cita de: jpmo4 en 29 Enero 2011, 20:44 PM
Colega Sagri, y Backtrack no le pica un poquito? Jeje,como para echarle un ojo y ya veras
Pues me lo iba a descargar el otro dia... Lo mirare. De todos modos (puede que menos el Fedora) todos los linux me van OK mas o menos...

Cita de: Akai en 29 Enero 2011, 21:31 PM
yo con el photoshop (en realidad introduzcase cualquier otro software de edición gráfica) también hago eso.
Puede que sea falso pero si algo se filtra se puede pensar que es cierto no?
#446
El otro dia lo pase a Windows, para tu suerte. Voy a ver si no lo borre jeje... Suerte que tienes!!!
Bueno, cabe decir que como lo pase en unos minutos le tuve que borrar unas cosillas. Ahora si escuchas no puedes mandar mensajes, solo recibir. Igual, si te conectas no recibes. Esto se debe a que le tengo que hacer un arreglillo para que pueda abrir dos procesos y subdivir el programa...

Evidentemente tienes mucho que retocar, pero sigue funcionando asi:

hK vl 31337
y
hK vc 127.0.0.1 31337


#include <time.h>       //Hora

#include <stdio.h>      //Funciones basicas entrada/salida

#include <string.h>     //StrCmp

#include <stdlib.h>     //Exit y otras

#include <winsock2.h> //Socket, Connect...



struct sockaddr_in host, client;//Declaraciones

int a=sizeof (struct sockaddr);

char buffer [1024];

int cont = 2;

SOCKET newsock;

SOCKET 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...

{

closesocket (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 ("\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 -l 31337\n");

printf ("\t./hK -c 192.168.0.1 31337\n");

printf ("\t./hK -z 192.168.0.1\n\n");

exit (1);

}



int main (int argc, char *argv [])

{

WSADATA wsa;

WSAStartup(MAKEWORD(2,2),&wsa);

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] != '-') 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][1] == 'l' && argv [3] != NULL) help ();

if (argv [1][1] == 'z' && argv [3] != NULL) help ();



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));

closesocket (sockfd);



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);

}

closesocket (newsock);

closesocket (sockfd);



printf ("Finishing connection with %s:%d\n\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));

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));



do

{

fgets (buffer, 1024, stdin);

cont=send (sockfd, buffer, strlen (buffer), 0);

}

while (cont>1);

closesocket (sockfd);

printf ("Finishing connection with %s:%d\n\n", inet_ntoa (host.sin_addr), ntohs (host.sin_port));

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++;

}

else printf ("Port %d close\n", cont);

closesocket (sockfd);

}

if (k == 0) printf ("All ports closed...\n");

else printf ("%d port(s) open(s)...\n", k);

finalizar (0);

}



Suerte!
Recuerda que el code es mio, y se presento en un concurso...
#447
Bueno, el post va en Bugs y Exploits. Luego le digo a un mod que te lo mueva...

Cita de: black_flowers en 29 Enero 2011, 15:43 PM
para ello utilizo direcciones absolutas o harcodeades (me parece que ese es el término) de manera que cada vez que arranco el sitema cambian, pero eso no es problema.
Que yo sepa en Windows las llamadas al sistema no cambian, solo lo hacen entre versiones. Esa shellcode solo ira en tu PC, pero seguira llendo al reiniciar.

Cita de: black_flowers en 29 Enero 2011, 15:43 PM
el problema es que quiero, primero pasarla a opcodes y luego ejecutarla con cualquier apllicación lo más sencilla posible.
Para pasarla a opcodes no sé como hacerlo por eso me gustaría saber si hay algún programa que lo pueda hacer por mí. El programa está ensamblado con masm.
Pues lo que tienes que hacer es sencillamente meterla en un programa y abrirlo con Olly o GDB... Lo que puedes hacer es meterle unos cuantos NOPS que resalten antes y despues de tu shellcode, encuentras los nops y copias... En linux uso "hexdump -C" pero en Windows haria eso...
Para ejecutarla se suele hacer algo asi:

#include <stdio.h>
#include <string.h>

char code[] = "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x89\xe2\x53\x89\xe1\xb0\x0b\xcd\x80";

int main(int argc, char **argv)
{
printf ("TinShell V1.0 : By Sagrini : %d bytes\n", strlen (code));
(*(void(*)()) code)();
return 0;
}

Este code es mio, de una shellcode. En char code [] le metes tu shellcode...

Y... pones void main (): No estamos en el subforo de C, pero eso no es recomendable. Leete esto, anda
http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html
#448
Bueno, yo de mi linux ubuntu no me muevo si no es por un Red Hat... De lo que si me cambio es de mi Vista, que mi padre no me deja formatear y poner un XP...  :¬¬
Yo si me comprase un netbook con W8, lo particionaria y le instalaria un Red Hat 9.0, que ahora no puedo tener (64 bits :-o) (mi sueeeño) y un XP SP3 si el 8 no me convence.

Realmente en un S.O no busco que tenga botones bonitos, si no funcionalidad y comodidad... Y Windows desde el Vista hacia alante me decepciona un poco... Para mi las únicas mejoras positivas para el usuario son el UAC, traer deshabilitada la cuenta Administrador y los cambios de direcciones de algunas cosas (evidentemente por seguridad)... Vosotros vereis :P
#449
[offtopic]
Cita de: T0rete en 29 Enero 2011, 18:51 PM
¿Tu tienes 11 años o que?
Mansana alguien mas pequeño que yo en este foro?
[/offtopic]

Bueno, no creo que la multa sea muy grande por enviar un spam a alguien suscrito a tu newsletter. Sin embargo si es un correo aleatorio o lo has comprado (si, esas listas se compran jeje) o demás, la pena es muy grande. Sólo sumar las denuncias de los afectados más la ley de proteccion de datos y varias multas más... Tendrías que vender un hotel...
#450
Si, suelen ocurrir, perdona. Os prometo que no volveré a sacar el tema así, pero por favor, abténgase comentarios...
Claro que lo hago para rabiarte Xafirot, jeje si no no viviria tranquilo  ::)