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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  duda con regex
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: duda con regex  (Leído 3,955 veces)
jhonatanAsm


Desconectado Desconectado

Mensajes: 376



Ver Perfil WWW
duda con regex
« en: 6 Abril 2012, 21:58 pm »

hola, en una validacion para el usuario y contraseña , utilizo este regex muy sencillo:


$regex='/\W/';
$frase='cu$_*44**m  55 __ =) =)=(225?«¦pl*-+e';
$frase=preg_replace($regex,'',$frase) ;//

devuelve: cu_44m55__225ple

esto encuentra todos los caracteres menos letras,numeros, y guiones abajo.

me podria fiar de esto, es seguro? gracias por su ayuda.salu2.


En línea

mi primer lenguaje fue ensamblador, tengo 60 años, y no creo que haya sido un error.

- La mayor complejidad de todas es hacer complejo algo que no lo es.

- El inteligente no es aquel que lo sabe todo sino aquel que sabe utilizar lo poco que sabe.
jhonatanAsm


Desconectado Desconectado

Mensajes: 376



Ver Perfil WWW
Re: duda con regex (php)
« Respuesta #1 en: 6 Abril 2012, 23:45 pm »

sorry, no lo puse en el subforo de php, favor de moverlo. gracias.



« Última modificación: 6 Abril 2012, 23:49 pm por jhonatanAsm » En línea

mi primer lenguaje fue ensamblador, tengo 60 años, y no creo que haya sido un error.

- La mayor complejidad de todas es hacer complejo algo que no lo es.

- El inteligente no es aquel que lo sabe todo sino aquel que sabe utilizar lo poco que sabe.
:ohk<any>


Desconectado Desconectado

Mensajes: 1.744


Yo lo que quiero que me salga bien es la vida.


Ver Perfil WWW
Re: duda con regex
« Respuesta #2 en: 7 Abril 2012, 02:11 am »

Disculpa por la poca informacion brindada, pero aca es donde puedes resolver tus dudas mas facil:

http://php.net/manual/es/function.preg-replace.php

Saludos
En línea

Y es que a veces pienso que si no estuviera loco no podría salir adelante.
Lo que no se es capaz de dar, en realidad no se posee, uno es poseído por ello.
jhonatanAsm


Desconectado Desconectado

Mensajes: 376



Ver Perfil WWW
Re: duda con regex
« Respuesta #3 en: 7 Abril 2012, 03:31 am »

Disculpa por la poca informacion brindada, pero aca es donde puedes resolver tus dudas mas facil:

http://php.net/manual/es/function.preg-replace.php

Saludos

creo que no me entendiste men, ha mi me funciona el codigo que puse arriba, mi duda es, si es una forma segura de validar el usuario y la contraseña. Lo utilizo principalmente para evitar o al menos dificultar un ataque sql inyection,xss, etc.

agradezco tu ayuda.salu2.
En línea

mi primer lenguaje fue ensamblador, tengo 60 años, y no creo que haya sido un error.

- La mayor complejidad de todas es hacer complejo algo que no lo es.

- El inteligente no es aquel que lo sabe todo sino aquel que sabe utilizar lo poco que sabe.
#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.850



Ver Perfil WWW
Re: duda con regex
« Respuesta #4 en: 7 Abril 2012, 03:57 am »

Una contraseña deberías guardarla cifrada.. ya sea sha1, md5 o lo que sea y contenga un salt (contraseña+otro string aleatorio). Por tanto no deberías preocuparte tanto por este dato.

Un nombre de usuario no debería permitir caracteres raros como / ' " etc..
Pero en todos los casos siempre debes asegurarte de que lo que te viene es seguro al 100%.. para ello puedes utilizar funciones como mysql_real_escape_string, htmlentities etc...


Saludos
En línea

jhonatanAsm


Desconectado Desconectado

Mensajes: 376



Ver Perfil WWW
Re: duda con regex
« Respuesta #5 en: 7 Abril 2012, 06:11 am »

Citar
Un nombre de usuario no debería permitir caracteres raros como / ' " etc..

claro, con ese regex detecto cualquier caracter que no sea una letra,numero o guion abajo, pero lo veo tan sencillo que parece 'rompible'  :huh: .

gracias por responer.salu2


En línea

mi primer lenguaje fue ensamblador, tengo 60 años, y no creo que haya sido un error.

- La mayor complejidad de todas es hacer complejo algo que no lo es.

- El inteligente no es aquel que lo sabe todo sino aquel que sabe utilizar lo poco que sabe.
engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: duda con regex
« Respuesta #6 en: 27 Abril 2012, 07:38 am »

la forma mas practica es guardar la contraseña en el server como un md5 y el usr tambien (a demas de su forma real), cuando te ingrsen user y pass destruyes cualquier opcion de ataque pasando el user y pass a md5, luego llamas al mysql con el usuario en md5 y comparas la contraseña... si no entendiste aqui en "lenguaje"


tabla mysql
+++++++++++++++++++++++++++++++++++
+   user      +       md5_user      +      md5_pass      +
+++++++++++++++++++++++++++++++++++


en php

$user = md5($_get["user"]) //aqui destruyes el chance de inyeccion
$pass = md5($_get["pass"]) //aqui destruyes el otro chance de inyeccion

el where seria where md5_user = $user
alli no hay inyeccion que pase...



En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
jhonatanAsm


Desconectado Desconectado

Mensajes: 376



Ver Perfil WWW
Re: duda con regex
« Respuesta #7 en: 28 Abril 2012, 20:23 pm »

la forma mas practica es guardar la contraseña en el server como un md5 y el usr tambien (a demas de su forma real), cuando te ingrsen user y pass destruyes cualquier opcion de ataque pasando el user y pass a md5, luego llamas al mysql con el usuario en md5 y comparas la contraseña... si no entendiste aqui en "lenguaje"


tabla mysql
+++++++++++++++++++++++++++++++++++
+   user      +       md5_user      +      md5_pass      +
+++++++++++++++++++++++++++++++++++

en php

$user = md5($_get["user"]) //aqui destruyes el chance de inyeccion
$pass = md5($_get["pass"]) //aqui destruyes el otro chance de inyeccion

el where seria where md5_user = $user
alli no hay inyeccion que pase...

si lo hago de esa manera creo que no podre saber el user ni el pass del usuario,
protegiendo sus datos, hasta de ... mì  :o  :xD

gracias men. salu2.
En línea

mi primer lenguaje fue ensamblador, tengo 60 años, y no creo que haya sido un error.

- La mayor complejidad de todas es hacer complejo algo que no lo es.

- El inteligente no es aquel que lo sabe todo sino aquel que sabe utilizar lo poco que sabe.
engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: duda con regex
« Respuesta #8 en: 28 Abril 2012, 20:32 pm »

de normalmente no necesitarías cifrar el nombre de usuario pero una practica común es cifrar la contraseña, jamas debe ser visible ni para ti ni para nadie :) hacer el where pass="$contraseña" y luego la respuesta de mysql compararla con el usuario :P
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Perl Regular Expressions (Regex)
Scripting
¨°o.O (ßa¢Kg|姧) O.o° 1 2,855 Último mensaje 5 Julio 2010, 21:43 pm
por ~ Yoya ~
Ordenar array perl y regex
Scripting
¨°o.O (ßa¢Kg|姧) O.o° 6 5,354 Último mensaje 9 Julio 2010, 03:46 am
por ~ Yoya ~
RegEx
.NET (C#, VB.NET, ASP)
CH4ØZ 5 5,089 Último mensaje 16 Septiembre 2011, 00:21 am
por CH4ØZ
duda de regex
.NET (C#, VB.NET, ASP)
spiritdead 3 2,433 Último mensaje 29 Diciembre 2012, 07:26 am
por spiritdead
[Solucionado]Duda con regex « 1 2 »
Java
.:UND3R:. 14 6,669 Último mensaje 26 Noviembre 2013, 21:05 pm
por .:UND3R:.
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines