Foros del Web » Programando para Internet » PHP »

[Seguridad] Funcion para recibir datos

Estas en el tema de [Seguridad] Funcion para recibir datos en el foro de PHP en Foros del Web. Hola, navegando por la web encontre esta funcion (joomla) para juntar valores, y queria preguntar si es segura para usarla en datos que son usados ...
  #1 (permalink)  
Antiguo 13/05/2012, 15:16
Avatar de ONahuelO  
Fecha de Ingreso: junio-2009
Ubicación: Gualeguaychú, Argentina
Mensajes: 144
Antigüedad: 15 años, 5 meses
Puntos: 4
[Seguridad] Funcion para recibir datos

Hola, navegando por la web encontre esta funcion (joomla) para juntar valores, y queria preguntar si es segura para usarla en datos que son usados posteriormente en mi db.

Código PHP:
function getValue(&$array$name$default=null$type='')
{
        
// Initialize variables
        
$result null;
 
        if (isset (
$array[$name])) {
                
$result $array[$name];
        }
 
        
// Handle the default case
        
if (is_null($result)) {
                
$result $default;
        }
 
        
// Handle the type constraint
        
switch (strtoupper($type))
        {
                case 
'INT' :
                case 
'INTEGER' :
                        
// Only use the first integer value
                        
preg_match('/-?[0-9]+/'$result$matches);
                        
$result = @ (int) $matches[0];
                        break;
 
                case 
'FLOAT' :
                case 
'DOUBLE' :
                        
// Only use the first floating point value
                        
preg_match('/-?[0-9]+(\.[0-9]+)?/'$result$matches);
                        
$result = @ (float) $matches[0];
                        break;
 
                case 
'BOOL' :
                case 
'BOOLEAN' :
                        
$result = (bool) $result;
                        break;
 
                case 
'ARRAY' :
                        if (!
is_array($result)) {
                                
$result = array ($result);
                        }
                        break;
 
                case 
'STRING' :
                        
$result = (string) $result;
                        break;
 
                case 
'WORD' :
                        
$result = (string) preg_replace'#\W#'''$result );
                        break;
 
                case 
'NONE' :
                default :
                        
// No casting necessary
                        
break;
        }
        return 
$result;

  #2 (permalink)  
Antiguo 13/05/2012, 15:36
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: [Seguridad] Funcion para recibir datos

Lo único que no le veo es el escapado de comillas para la base de datos, me imagino que eso joomla lo tiene en la capa de abstracción de base de datos, pero con un simple addslashes lo implementas, o la función de escapado de mysql (si es que usas esta db)

Temas a considerar de seguridad:
SQL inyections
XSS
CSRF
RFI
suerte
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...

Etiquetas: funcion, recibir, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:50.