No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso Avanzado de PHP

Curso Avanzado de PHP

Héctor Benitez

Héctor Benitez

Security Examples

33/35
Recursos
  • pdo viene de PHP Data Object y son las librerías base con las que se comunica PHP y un motor de base de datos. Eloquent encapsula esta información y nos genera una capa superior que nos permite comunicarnos con la base de datos usando buenas prácticas.
  • Confiar en lo que el usuario escribe es un error al desarrollar porque puede haber atacantes que buscan obtener información que no les corresponde.
  • En pdo existen las sentencias preparadas que creará el query con placeholders que luego se cambiarán por los valores reales, escapando la información y evitando SQL Injection. Lo importante es que cuando trabajes con entradas de usuario, valides siempre.
  • Un ataque XSS es un ataque en el que alguien trata de inyectar código en nuestra aplicación. Chrome cuenta con un auditor que evita estos ataques pero sólo a partir de una versión avanzada.
  • strip_tags y htmlspecialchars van a escapar los caracteres HTML evitando ataques XSS

Aportes 14

Preguntas 2

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

¿Los cron jobs que utilizan paramentros tambien deberían estar validados?

Ademas de estas funciones igual hay una muy poderosa que se llama filter_var recomiendo investigarla.

Y recuerden, SIEMPRE validen lo que sus usuarios les envían:D!

y como se hace un prepare en un sp?

Confiar en lo que el usuario escribe es un error al desarrollar porque puede haber atacantes que buscan obtener información que no les corresponde.

pdo viene de PHP Data Object y son las librerías base con las que se comunica PHP y un motor de base de datos. Eloquent encapsula esta información y nos genera una capa superior que nos permite comunicarnos con la base de datos usando buenas prácticas

En pdo existen las sentencias preparadas que creará el query con placeholders que luego se cambiarán por los valores reales, escapando la información y evitando SQL Injection. Lo importante es que cuando trabajes con entradas de usuario, valides siempre.

Un ataque XSS es un ataque en el que alguien trata de inyectar código en nuestra aplicación. Chrome cuenta con un auditor que evita estos ataques pero sólo a partir de una versión avanzada.

strip_tags y htmlspecialchars van a escapar los caracteres HTML evitando ataques XSS

pdo viene de PHP Data Object y son las librerías base con las que se comunica PHP y un motor de base de datos. Eloquent encapsula esta información y nos genera una capa superior que nos permite comunicarnos con la base de datos usando buenas prácticas

Confiar en lo que el usuario escribe es un error al desarrollar porque puede haber atacantes que buscan obtener información que no les corresponde

En pdo existen las sentencias preparadas que creará el query con placeholders que luego se cambiarán por los valores reales, escapando la información y evitando SQL Injection. Lo importante es que cuando trabajes con entradas de usuario, valides siempre

Un ataque XSS es un ataque en el que alguien trata de inyectar código en nuestra aplicación. Chrome cuenta con un auditor que evita estos ataques pero sólo a partir de una versión avanzada

strip_tags y htmlspecialchars van a escapar los caracteres HTML evitando ataques XSS

Buenas tarde, estoy usando PHP 7.3 y un gestor de BD Adaptive Server Enterprise de SYBASE, uso ODBC con el driver de Sybase.
Cuando hago la siguiente consulta, me devuelve cero, no se si es un problema con los marcadores de posicion (?), o con este gestor de BD no funciona.
$consulta="select sum(c.consumofac) as suma from cabfacturacion c ";
$consulta.="inner join cabfacturacionclie cl ";
$consulta.="on (cl.codcliente=c.codcliente) ";
$consulta.=“where c.anio=?”;

	$sql=$dbh->prepare($consulta);	
	$sql->bindParam(1, $_POST['anio'], PDO::PARAM_STR,4);
	$sql->execute();			
	$total=$sql->fetchColumn();
	$msg=($total===false) ? "No hay filas" : sprintf("Suma: %d",$total); 

echo $msg; Al final el resultado me da cero.