Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => Mensaje iniciado por: TwisteD420 en 3 Abril 2012, 03:51 AM

Título: ¿Qué tan seguro es este login que he planteado en un sitio web en ASP.Net?
Publicado por: TwisteD420 en 3 Abril 2012, 03:51 AM
Bueno, les comento que estoy realizando un proyecto para la universidad el cual es para una clinica de oftalmología, este es el loggin que yo he codificado y quisiera saber si podria ser facilmente filtrado o como es la mejor manera de hacerlo, gracias de antemano!

private void ingresar()
   {
       string cadena = "";
       ////en esta variable se almacenara la conteaseña si existe.
       try
       {
           u1.Id = txtID.Text;
//capturamos el usuario
           cadena = u1.Consultar();
//realizamos una conexion a la bd para obetener la contraseña y guardarla en la variable "cadena"
           if (this.txtPass.Text == cadena)
//comparamos el texbox del password con la contraseña obtenida mediante la consulta sql.
           {
               this.Session["us"] = txtID.Text;
               this.Session["cargo"] = u1.ConsultarTipo();
               this.Server.Transfer(".aspx");
           }
           else
           {
               if (cadena == "")
               {
                   Label1.Text = "Usuario inexistente.";
               }
               else
               {
                   Label1.Text = "Contraseña incorrecta.";
               }
           }
       }
       finally
       {
           txtID.Text = "";
           txtPass.Text = "";
       }
Título: Re: ¿Qué tan seguro es este login que he planteado en un sitio web en ASP.Net?
Publicado por: Kase en 3 Abril 2012, 06:18 AM
es ingeniosa... xD  asumimos que u1  esta protegido contra sqlinjection vrd?

agrega una variable  booleana al usuario  ( is_active )   de ese modo podras banearlo y/o  evitar que inicie session
Título: Re: ¿Qué tan seguro es este login que he planteado en un sitio web en ASP.Net?
Publicado por: TwisteD420 en 3 Abril 2012, 07:58 AM
Cita de: Kase en  3 Abril 2012, 06:18 AM
es ingeniosa... xD  asumimos que u1  esta protegido contra sqlinjection vrd?

agrega una variable  booleana al usuario  ( is_active )   de ese modo podras banearlo y/o  evitar que inicie session

Hola!!

u1 es el objeto de la clase Usuario

    DBConn.Usuario u1 = new DBConn.Usuario();


Ahora tengo 2 consultas...
1- Como puedo proteger "u1" contra sqlinjection?
2- podrias explicarme un poco mas a fondo la variable booleana (is_active) primera vez que escucho de ella y no me queda muy clara con lo que he leido...

Muchisimas gracias!!!! Saludos!
Título: Re: ¿Qué tan seguro es este login que he planteado en un sitio web en ASP.Net?
Publicado por: Kase en 3 Abril 2012, 08:30 AM
simple  a tu objeto usuario y a tu base de datos añadele  un variable booleana para revisar cuando esta activo...  (ejemplo is_active )  te quedaria  u1.is_active

el problemita con tu codigo es esto

cadena = u1.Consultar()   

asumo que consultar es un metodo que solo devuelve el usuario.. si es asi tendrias que hacer otro metodo   u1.consultar_activo() que te retorne el valor de la  variable is_active

ahora durante el proceso de login puedes hacer un

if (! u1.consultar_activo()){
    Label1.text = ' tu no puede loguear por que as sido baneado'
}else{
// resto de tu login
}

cuando quieras impedir el acceso a alguien    cambias su variable is_active = False


yo no programo en asp.. xD  pero  la idea es esa... añadir a tu usuario una variable de baneado  para permitirle el login o no.
Título: Re: ¿Qué tan seguro es este login que he planteado en un sitio web en ASP.Net?
Publicado por: TwisteD420 en 4 Abril 2012, 02:42 AM
Cita de: Kase en  3 Abril 2012, 08:30 AM
simple  a tu objeto usuario y a tu base de datos añadele  un variable booleana para revisar cuando esta activo...  (ejemplo is_active )  te quedaria  u1.is_active

el problemita con tu codigo es esto

cadena = u1.Consultar()   

asumo que consultar es un metodo que solo devuelve el usuario.. si es asi tendrias que hacer otro metodo   u1.consultar_activo() que te retorne el valor de la  variable is_active

ahora durante el proceso de login puedes hacer un

if (! u1.consultar_activo()){
    Label1.text = ' tu no puede loguear por que as sido baneado'
}else{
// resto de tu login
}

cuando quieras impedir el acceso a alguien    cambias su variable is_active = False


yo no programo en asp.. xD  pero  la idea es esa... añadir a tu usuario una variable de baneado  para permitirle el login o no.

Muchisimas gracias por responder mi duda, me ha quedado bastante clara!!

Saludos!!