No puedo afirmar que sé “mucho” sobre las secuencias de comandos del lado del servidor, pero algunas.
El mayor riesgo en el pasado han sido los ataques de inyección SQL en los que algo ingresado en un navegador se incluye como parte del texto del SQL que se envía a la base de datos. Esto no es un problema si el valor se envía como un parámetro a la consulta o actualización, pero es un problema si el desarrollador tenía la intención de actualizar una dirección de correo electrónico, pero la dirección de correo electrónico escrita es “; seleccione * de los usuarios;” , lo que hace que la consulta enviada al servidor de la base de datos sea en realidad dos comandos, el primero mal formado (por ejemplo, destinado a actualizar el correo electrónico), el segundo es el comando ingresado en el navegador y posiblemente devuelva una lista de la tabla de usuarios al navegador. Esperemos que todos los desarrolladores web hayan recibido el mensaje de que las entradas deben ir a los parámetros)
En el futuro, si está permitiendo que algo se quede en su servidor o en la base de datos que podría ser un problema, corre un ligero riesgo de que esto pueda manejarse incorrectamente en otras consultas de la base de datos.
- ¿Cómo es Net Protector Antivirus? ¿Es bueno en comparación con Quickheal, Kaspersky y Bitdefender?
- ¿Podrán los fabricantes de aplicaciones espiar mi ubicación, fotos y los sitios web que visito en mi teléfono después de darles acceso a la cámara, la lista de contactos, las fotos y la ubicación de mi teléfono cuando instalo sus aplicaciones?
- ¿Qué algoritmo se usa para la biometría de pulsación de tecla?
- ¿Qué era KrebsOnSecurity?
- ¿Qué cambios ha realizado en las impresoras de su organización debido a problemas de seguridad?
También es bueno asegurarse de que su conjunto de datos no sea basura. Debería haber algunas normas: si su sitio web y los procesos comerciales requieren que el usuario final ingrese una dirección válida, entonces sería bueno validar que la ciudad / estado / país existe, o que el código postal es válido, etc. Esto no es No es necesariamente un problema de seguridad.
Los usuarios de navegadores emprendedores también pueden aumentar el código javascript o la funcionalidad del lado del cliente para agregar nuevos elementos a los menús desplegables para los estados a los que no envía o accede a los descuentos, por lo que el lado del servidor debe validar cada entrada en un formulario y cualquier dato del cliente, sin la suposición de que el cliente limitará los valores solo a aquellos que sean válidos.
Desbordamiento de búfer: puede llegar a ser un problema menor con los compiladores modernos, pero aún es posible explotar problemas, como el envío a ciegas de datos que son demasiado grandes para una base de datos (en la actualidad, la base de datos generalmente lo truncaría y protegería), pero si se descubre que el código del lado del servidor maquina mucho los datos o el almacenamiento en caché de valores, un atacante podría explotar eso y comenzar a enviar cientos de cadenas de 1 MB para que su servidor caiga debido al uso excesivo de memoria.