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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Mensajes
Páginas: [1] 2 3
1  Programación / Programación C/C++ / [C] Problema: funcion 'validar_numero()' siempre me retorna 1 en: 17 Septiembre 2015, 00:09 am
[Consulta C]
Buenas!! ando con un problema seguramente no muy dificil de resolver pero despues de horas de programacion e investigacion ya nose que probar, de todas maneras voy a seguir intentando y si encuentro solucion la publico..

El problema:
La funcion "validar_numero()" retorna siempre 1!! Aunque ingrese -1, 15, 23, 123, asd,e3,2a, etc

Dejo parte del codigo y sus respectivas funciones:
-------------------------------------------------------------------
Código
  1. //[Codigo]
  2.  
  3. do{// ---------------------------------------------------------------CARGA ID
  4. if(c) printf("Ingreso un valor incorrecto, ingrese nuevamente\n");
  5. printf("\nIngrese Id del curso: ");
  6. //fflush(stdin);-----------------------NO USAR-> EN SU LUGAR USAR "lbuffer()" -> Funcion creada en este archivo.
  7. //scanf("%s",aux);
  8. fgets(aux,100,stdin);//fgets en este caso guarda lo que se ingresa del teclado ('stdin') en la cadena de caracteres 'aux'
  9. //con un maximo de 99 caracteres (100-1). Si se ingresan menos de 99 caracteres se agrega un '\n'
  10. if(aux[strlen(aux)-1]=='\n')aux[strlen(aux)-1]=='\0';//Si se agrega un \'n' lo "sacamos" poniendo en su lugar un '\0'
  11. lbuffer();//funcion que limpia buffer
  12. printf("\n Ingresaste: %s\n",aux);
  13. if(validar_numero(aux)==1)c=1;
  14. else c=0;
  15. }while(validar_numero(aux)==1);//Si la funcion retorna 1 > Ingreso un valor incorrecto
  16.  
  17. //Si sale del while > es correcto el valor ingresado (Es numero) > guardamos en archivo
  18. curso[i].id=atoi(aux); //atoi me convierte la cadena de caracteres a int
  19. // ---------------------------------------------------------------FIN CARGA ID
  20.  
  21.  
  22. //------------------------------------------------------------------------------
  23. //Dejo aca la funcion "validar_numero(char *n)" y "lbuffer()":
  24. //-------------------------------------------------------------------------------
  25.  
  26. int validar_numero(char *n){
  27. int largo=strlen(n), es_num=0, bien=0;
  28. for(int i=0;i<largo;i++){
  29. es_num=atoi(n+i); //atoi retorna 0 cuando NO es numero
  30. if(!es_num)return 1;
  31. }//for
  32. return 0;//Si la funcion llego hasta aca > SI es numero (Retornamos 0)
  33.  
  34. }
  35.  
  36. void lbuffer(){
  37. /* esta funcion 'lbuffer()' es para limpiar el buffer, no uso 'fflush(stdin)' por que no es correcto usarla, ademas de que trabajo en GNU/Linux (Debian) y "no funciona" */
  38. int d;
  39. while((d=getchar())!= '\n' && d != EOF);
  40. }
  41.  


2  Seguridad Informática / Hacking / Como finalizar un dns_spoof de ettercap por consola? en: 29 Junio 2013, 06:02 am
Hola, estoy en backtrack 5 r3, al ingresar lo siguiente:

Citar
-ettercap -T -q -i wlan0 -P dns_spoof -M arp:remote /(ip victima)/ //

Con eso arranca el dns spoof para la ip que seleccione...

Y como finalizo el dns_spoof? Gracias!

(Lo se hacer en modo Grafico, con "ettercap -G", lo quiero hacer por consola ahora)
3  Seguridad Informática / Hacking / Crear usuario OpenVas en: 28 Junio 2013, 18:50 pm
Hola, tengo un problema, yo hago lo siguiente:
openvas-mkcert
openvas-nvt-sync
openvas-mkcert-client -n om –i
openvasmd –-rebuild
openvassd
touch /usr/local/var/lib/openvas/mgr/tasks.db
openvasmd –-backup
openvasmd –-rebuild
openvasad -c ‘add_user’ -n openvasadmin -r Admin ##############
openvas-adduser
openvasmd -p 9390 -a 127.0.0.1
openvasad -a 127.0.0.1 -p 9393
gsad -–http-only -–listen=127.0.0.1 -p 9392

Pero.. en la linea donde puse los "##" me da un error, el siguiente:
Citar
ad main:WARNING:3915:2013-06-28 09h46.27 EDT : Invalid command!

Entonces no puedo agregar usuarios... pero sigo adelante pongo: openvas-adduser ahi me pide: Login, ingreso uno cualquiera, si existe me dice que ya existe, y que elija otro, y si no existe me pide authentication(pass/cert) ahi pongo enter, despes me pide la contraseña que le quiero dar.
Pero de esa forma no agrego usuarios por que cuando voy a localhost:9392 me pide que me loguee y no anda ninguno de los usuarios que puse en openvas-adduser, mi problema esta en la linea ########, con el comando openvasad.

PD: Si pongo "info openvasad" me sale toda la informacion, osea el comando existe, y existe -c, -n, -r.. nose donde esta el problema

ayudaaaaaaaaaaaa!! Gracias
4  Seguridad Informática / Hacking / Ayuda actualizar Nessus en: 28 Junio 2013, 00:22 am
Hola, tengo un problema!
Cuando quiero actualizar nessus para empezar a usarlo,
Pongo lo siguiente enuna terminal:
Citar
sudo /opt/nessus/bin/nessus-fetch –register XXXX-XXXX-XXXX-XXXX-XXXX

Donde XXXX-XXXX-....  es el codigo que te envia nessus despues de registrarte en su pagina, ese codigo solo funciona una vez.

Bueno hasta aca todo bien.. despues sale el siguiente mensaje en la consola:

Citar
Your activation code has been registered properly - thank you.
Now fetching the newest plugin set from plugins.nessus.org...

Pero abajo de eso sale:

Citar
Could not verify the signature of all-2.0.tar.gz

Y en lugar de eso deberia salir como en esta imagen o eso creo..


Espero que me puedan ayudar! gracias!
5  Seguridad Informática / Hacking / Re: [Ayuda] Metasploit winxp sp3 no consigo la shell en: 27 Junio 2013, 23:46 pm
Ufffffffffff, estas un poco perdidillo.
Utilizando ese Exploit dudo mucho que consigas hacer nada.
Supongo que seas novato en esto y has mirado tutoriales DE HACE MIL AÑOS donde lo utilizan, pero lo normal es que no consigas nada por diferentes motivos.

Si quieres conseguir que te funcione y seguir probando, yo utilizaría una maquina virtual o un equipo donde acabes de instalar XP.


jaja gracias por la respuesta, si habia leido que era viejo y que ya no funcionaba, soy un poco nuevo en metasploit, y no encuentro como podria explotar el puerto 445, estaria bueno que me puedan ayudar!!
6  Seguridad Informática / Hacking / [Ayuda] Metasploit winxp sp3 no consigo la shell en: 27 Junio 2013, 19:14 pm
Hola, espero que me puedan ayudar..
Estoy haciendo pruebas en la red lan que tengo en mi casa, en una pc de escritorio tengo el backtrack 5 r3, quiero ingresar a la shell de una netbook que tengo al lado con windows xp sp3.

Uso el xploit ms08_067_netapi
con el payload shell_reverse_tcp

Seteo el RHOST poniendo la ip de la netbook, y LHOST poniendo la ip de la otra pc (en  la que tengo el metasploit)
Pongo "exploit" y esto es el resultado:

Citar
[*] Started reverse handler on 192.168.1.11:4444
[*] Automatically detecting the target...
[*] Fingerprint: Windows XP SP3 Spanish (NX)
[*] Attempting to trigger the vulnerability
msf exploit(ms08_067_netapi) >

Y en ningun momento obtengo la shell,

Otros datos: La netbook tiene abierto los siguientes puertos: 80,139,3389,443,445
Yo estoy tratando de entrar por el 445.

Espero que me puedan ayudar, saludos
7  Programación / Programación C/C++ / Ayudaa problema nivel basico en: 13 Marzo 2012, 23:48 pm
Buenas, ya habia preguntado algo sobre este programa y lo pude solucionar aca el link-> http://foro.elhacker.net/programacion_cc/ayuda_array_facil-t356132.0.html
ahora tengo otro problema, intente varias formas de hacer esto y no me sale, queria ver si ustedes podrian resolver la parte que me falta y explicar el code, muchas gracias

Aca la consigna de la funcion que me falta:
La otra función responderá a este prototipo: int Diferencia(fecha, fecha);, y debe devolver la diferencia en días entre las dos fechas suministradas.

Código
  1. #include<iostream>
  2. #include<stdio.h>
  3. using namespace std;
  4.  
  5. struct fecha{
  6.       unsigned short int dia:5;
  7.       unsigned short int mes:4;
  8.       unsigned short int anno:7;
  9.       };
  10.  
  11. void mostrar(fecha x){
  12.     char *mes[]={"Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"};
  13.     cout<<"Fecha:"<<endl;
  14.     cout<<"       "<<x.dia<<" de "<<mes[x.mes-1]<<" de "<<(x.anno + 1960)<<endl;
  15.     }
  16.  
  17. bool Biciesto(fecha x){
  18.     if((x.anno+1960)%2==0)cout<<"FEBRERO ES BICIESTO"<<endl;
  19.     else cout<<"FEBRERO NO ES BICIESTO"<<endl;
  20.     }
  21.  
  22. bool ValidarFecha(fecha x){
  23.     bool tof=true;
  24.     int DiaMes[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
  25.     if (x.mes>=1){
  26.                   if(x.mes>12) tof=false;
  27.                   }
  28.     else tof=false;
  29.     if (tof==true){
  30.                   if(x.dia>=1){
  31.                   switch(x.mes){
  32.                                 case 0:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  33.                                 case 1:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  34.                                 case 2:{
  35.                                      Biciesto(x);
  36.                                      if(x.dia>DiaMes[x.mes-1])tof=false;
  37.                                      }
  38.                                 case 3:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  39.                                 case 4:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  40.                                 case 5:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  41.                                 case 6:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  42.                                 case 7:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  43.                                 case 8:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  44.                                 case 9:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  45.                                 case 10:{if(x.dia>DiaMes[x.mes-1])tof=false;}
  46.                                 case 11:{if(x.dia>DiaMes[x.mes-1])tof=false;}    
  47.                                 }
  48.                                }
  49.                   }
  50.     return tof;
  51.     }  
  52.  
  53. int CompararFechas(fecha x,fecha y){
  54.    if(x.anno>y.anno)return 1;
  55.    else{
  56.         if(x.anno<y.anno)return -1;
  57.         else if(x.mes>y.mes)return 1;
  58.         else if(x.mes<y.mes)return -1;
  59.         else if(x.dia>y.dia)return 1;
  60.         else if(x.dia<y.dia)return -1;
  61.         else return 0;
  62.         }
  63. }
  64.  
  65.  
  66.  
  67.  
  68. int main(){
  69.    int temp=0;
  70.    fecha x,y; //aca podria ver decalarado un vector ejemplo: fecha[1]; ( fecha[0] y fecha [1])
  71.               //que me resutltaria mas facil para trabajar con bucles mas adelante
  72.  
  73.    cout<<"Introduzca Fecha: "<<endl;
  74.    cout<<"Dia (ej: 31): ";cin>>temp;x.dia=temp;
  75.    cout<<endl<<"Mes (ej: 12): ";cin>>temp;x.mes=temp;
  76.    cout<<endl<<"Ano (del 1 al 127, a eso se le suma 1960): ";cin>>temp;x.anno=temp;
  77.    cout<<endl;
  78.  
  79.    if (ValidarFecha(x)==true){
  80.                            cout<<"La fecha es correcta."<<endl;
  81.                            }
  82.    else cout<<"La fecha es incorrecta."<<endl;
  83.    mostrar(x);
  84.    getchar();
  85.    getchar();
  86.  
  87.    cout<<endl<<"Introduzca otra fecha para compararla con la primera"<<endl;
  88.    cout<<"Dia (ej: 31): ";cin>>temp;y.dia=temp;
  89.    cout<<endl<<"Mes (ej: 12): ";cin>>temp;y.mes=temp;
  90.    cout<<endl<<"Ano (del 1 al 127, a eso se le suma 1960): ";cin>>temp;y.anno=temp;
  91.    cout<<endl;
  92.  
  93.        if (ValidarFecha(x)==true){
  94.                            cout<<"La fecha es correcta."<<endl;
  95.                            }
  96.    else cout<<"La fecha es incorrecta."<<endl;
  97.    mostrar(y);
  98.  
  99.    if(CompararFechas(x,y)==1)cout<<"La primer fecha es mayor que la segunda"<<endl;
  100.    else if(CompararFechas(x,y)==-1)cout<<"La segunda fecha es mayor que la primera"<<endl;
  101.    else cout<<"Las fechas son iguales"<<endl;
  102.    cout<<endl<<endl;
  103.  
  104.  
  105.    system("pause");
  106.  
  107. }


ACLARO: NO es TAREA estoy estudiando por mi cuenta en un curso online y no me quiero saltar ningun ejercicio quiero entenderlos todos!

PD: se me habia ocurrido algo asi.. pero nose ni coomo seguir y creo que ya empese mal jaja.
Gracias!

Código
  1.  
  2. int Diferencia(fecha x,fecha y){
  3.    int auxano=0,auxmes=0,auxdia=0,tempp=0;
  4.  
  5.    if(x.anno>y.anno)auxano=(x.anno-y.anno);
  6.    else {if(x.anno<y.anno)auxano=(y.anno-x.anno);
  7.    }
  8.  
  9.   else {
  10.         if(x.mes>y.mes)auxmes=(x.mes-y.mes);
  11.         else if(x.mes<y.mes)auxmes=(y.mes-x.mes);
  12.         else{
  13.              if(x.dia>y.dia){auxdia=(x.dia-y.dia);return auxdia;}
  14.              else if (x.dia<y.dia)auxdia=(y.dia-x.dia);return auxdia;
  15.              }
  16.         }
  17. }
  18.  
8  Programación / Programación C/C++ / Re: Ayuda array facil en: 11 Marzo 2012, 18:22 pm
Muchas gracias a TODOS, me sirvio mucho su ayuda ya lo hice y lo entendi :D
Gracias!
9  Programación / Programación C/C++ / Re: Ayuda array facil en: 10 Marzo 2012, 21:18 pm
RHL
Gracias voy a probar, no es una tarea, estoy estudiando c++ por mi cuenta en un curso online.. tenia que hacer esos ejercicios y bueno, no me salia jaja.
Como decis de un array de 2 dimensiones?
Osea..

Código:
mes[11][8];
mes[0][1] = 'E';
mes[0][2] = 'n';
mes[0][3] = 'e';
mes[0][4] = 'r';
mes [0][5] = 'o';

asi?? Si no es asi podrias explicarme porfavor? gracias!

PD: no puedo usar puinteros ya que en lo que va del curso todavia no vi punteros, en el capitulo que viene veo punteros. ( estoy por estructuras)
Graciaas
10  Programación / Programación C/C++ / Ayuda array facil en: 10 Marzo 2012, 17:59 pm
Hola buenas tardes, estoy haciendo un ejercicio y me tira error en todas las lineas donde declaro el vector, dejo el enunciado y mi codigo. Nose si el codigo anda por que no lo puedo compilar por que me tira error en todas las lineas donde declaro el vector mes[] ,es un error muy tonto pero la verdad es que no encuentro la forma jaja Gracias.

Enunciado:
Diseñar una estructura análoga, llamada fecha, pero usando campos de bits. Usar sólo un entero corto sin signo (unsigned short), es decir, un entero de 16 bits. Los nombres de los campos serán: dia, mes y anno.
Basándose en la estructura de bits del ejercicio anterior, escribir una función para mostrar fechas: void Mostrar(fecha);. El formato debe ser: "dd de mmmmmm de aaaa", donde dd es el día, mmmmmm el mes con letras, y aaaa el año. Usar un array para almacenar los nombres de los meses.



Código:
#include<iostream>
using namespace std;

struct fecha{
       unsigned short int dia:5;
       unsigned short int mes:4;
       unsigned short int anno:7;
       };

void mostrar(fecha){
     char mes[11];
     int mees=0;
     int año=0;
     mes[0] = "Enero";
     mes[1] = "Febrero";
     mes[2] = "Marzo";
     mes[3] = "Abril";
     mes[4] = "Mayo";
     mes[5] = "Junio";
     mes[6] = "Julio";
     mes[7] = "Agosto";
     mes[8] = "Septiembre";
     mes[9] = "Octubre";
     mes[10] = "Noviembre";
     mes[11] = "Diciembre";
     mees = x.mes;
     año = 1960 + x.anno;
     cout<<"Fecha:"<<endl;
     cout<<"       "<<x.dia<<" de "<<mes[mees]<<" de "<<año;
     }
       
int main(){
   
    fecha x;
    x.dia = 31;
    x.mes = 12;
    x.anno = 127;
   
    cout<<"Dia: "<<x.dia<<" Mes: "<<x.mes<<" año: "<<x.anno<<endl;
    cin.get();
}
Páginas: [1] 2 3
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines