
OsKaR
Zeta
Verificación en dos pasos activada
Si, en mis otros scripts utilizaba una función para limpiar caracteres tipo <, OR, ', y alguno más, pero en este script en particular los latinos utilizan carácteres con dibujos que al filtrarlos me comentaban que no salian en sus frases, por ello modifique y solo hice una limpieza básica.
PD. Me he guardado en enlace 2. 😉
@ Jesam, estas modificaciones las podeis hacer tranquilamente en el script, pero aseguraros bien ya que los caracteres que soleis usar tal vez no salgan.
Por ejemplo, abrimos el template "principal.php" y buscamos la linea 6:
Sustituimos
Esto sería una opción para seguir utilizando caracteres con dibujitos y tener una mayor seguridad.
O bien:
PD. Me he guardado en enlace 2. 😉
Si sanitizas el texto de las frases, por ejemplo, para sólo aceptar carácteres alfanuméricos y espacios, ¿habría algún problema de funcionalidad?
Aquí tienes una manera de hacerlo:
Enlace eliminado
Se realiza usando expresiones regulares, si miras los comentarios y vas probando comprobarás como puedes modificarla. Yo te arreglaría el código pero no sé qué carácteres se suelen usar en estas frases. De todos modos, no permitas carácteres como ' " % \ *
También te recomiendo que, antes de hacer eso (es decir, paso previo) le hagas un strip_tags() para quitar tags HTML.
Consigue información sobre estos temas (seguridad PHP). ¿Si construyes una casa te aseguras de que no quede ninguna puerta sin cerradura, y ninguna ventana sin rejas, verdad? Ésto es igual 🙂 Yo sé de éste tema porque siempre lo he visto un tema muy importante: yo no quiero que uno de mis clientes me llame porque un sitio con 100000 visitantes diarios ha sido hackeado, y el responsable soy yo por haber dejado la "puerta abierta". Nunca me ha pasado, ni con mis sitios ni con los de mis clientes, pero precisamente porque se ha prevenido.
Un buen punto de inicio (información muy básica sobre algunos tipos de vulnerabilidades) es PHP Freaks - PHP Help Tutorial: PHP Security
@ Jesam, estas modificaciones las podeis hacer tranquilamente en el script, pero aseguraros bien ya que los caracteres que soleis usar tal vez no salgan.
Por ejemplo, abrimos el template "principal.php" y buscamos la linea 6:
PHP:
$frase = htmlspecialchars($_POST['frase']);
Sustituimos
PHP:
// seguridad mysql
function seguridad($texto){
$texto=str_replace("<", "", $texto);
$texto=str_replace(">", "", $texto);
$texto=str_replace("%", "", $texto);
$texto=str_replace("'", "", $texto);
$texto=str_replace('"', "", $texto);
// etc caracteres...
return $texto;
}
$frase = seguridad($_POST['frase']);
Esto sería una opción para seguir utilizando caracteres con dibujitos y tener una mayor seguridad.
O bien:
PHP:
$frase = addslashes(trim($_POST['frase']));
:O que interesante... entonces si se llega arreglar estos problemas de seguridad, tu OsKar llegarías a corregirlos y liberarlos, o existiera una versión de pago? 😀
Última edición: