Seguridad en Sofisis
Este documento es una descripción general de las características de seguridad de Sofisis.
Protección de scripts de sitios cruzados (XSS)
Los ataques XSS permiten a un usuario inyectar scripts del lado del cliente en los navegadores de otros usuarios. Esto generalmente se logra almacenando los scripts maliciosos en la base de datos donde serán recuperados y mostrados a otros usuarios, o haciendo que los usuarios hagan clic en un enlace que hará que el navegador del usuario ejecute el JavaScript del atacante. Sin embargo, los ataques XSS pueden originarse a partir de cualquier fuente de datos no confiable, como cookies o servicios web, siempre que los datos no estén suficientemente desinfectados antes de incluirlos en una página.
Protección de falsificación de solicitud de sitio cruzado (CSRF)
Los ataques CSRF permiten que un usuario malintencionado ejecute acciones utilizando las credenciales de otro usuario sin el conocimiento o consentimiento de ese usuario.
Sofisis tiene protección incorporada contra los tipos de ataques CSRF.
La protección CSRF funciona al buscar un secreto en cada solicitud POST. Esto garantiza que un usuario malintencionado no pueda simplemente "reproducir" un formulario POST en su sitio web y que otro usuario que inicie sesión lo envíe involuntariamente. El usuario malintencionado tendría que conocer el secreto, que es específico del usuario (utilizando una cookie).
Protección de inyección SQL
La inyección SQL es un tipo de ataque en el que un usuario malintencionado puede ejecutar código SQL arbitrario en una base de datos. Esto puede provocar la eliminación de registros o la fuga de datos.
Los conjuntos de consultas de Sofisis están protegidos de la inyección de SQL ya que sus consultas se construyen utilizando la parametrización de consultas. El código SQL de una consulta se define por separado de los parámetros de la consulta. Dado que los parámetros pueden ser proporcionados por el usuario y, por lo tanto, inseguros, el controlador de base de datos subyacente los escapa.
Protección de clickjacking
Clickjacking es un tipo de ataque en el que un sitio malicioso envuelve a otro sitio en un marco. Este ataque puede provocar que un usuario desprevenido sea engañado para que realice acciones no intencionadas en el sitio de destino.
Sofisis contiene protección contra clics en forma de que en un navegador compatible puede evitar que un sitio se represente dentro de un marco.
SSL / HTTPS
Sofisis está implementado con HTTPS. Con esto, se evita que los usuarios de redes malintencionadas detecten las credenciales de autenticación o cualquier otra información transferida entre el cliente y el servidor, impide que los atacantes de red activos , alteren los datos que se envían en cualquier dirección.
Validación de encabezado de host
Sofisis usa el encabezado Host proporcionado por el cliente para construir URL en ciertos casos. Si bien estos valores se desinfectan para evitar ataques de Cross Site Scripting, Host puede usar un valor falso para falsificación de solicitudes entre sitios, ataques de envenenamiento de caché y enlaces de envenenamiento en correos electrónicos.
Debido a que incluso las configuraciones de servidor web aparentemente seguras son susceptibles a encabezados Host falsos , Sofisis valida los encabezados Host según la los host que tiene permitidos.