
OWASP
Spurtcommerce sigue los principios de OWASP para su seguridad integrada.
El equipo de Spurtcommerce ha implementado una amplia gama de reglas de seguridad establecidas por la investigación y estándares líderes de la industria sobre vulnerabilidades de seguridad - OWASP (Open Web Application Security Project).
Pruebas de Gestión de Identidad
En plataformas de comercio electrónico y minoristas en línea, la Gestión de Identidad juega un papel vital y necesita ser fluida y segura para identificar al Usuario y su rol, y garantizar que solo puedan acceder a los datos o información del cliente que necesitan o a los que tienen derecho.
En Spurtcommerce, siempre que aparece un nuevo usuario, se siguen todos los protocolos y reglas requeridos. Puede consultar los diferentes mecanismos de prueba relacionados con la Gestión de Identidad que se han seguido y se están cumpliendo.
Prueba de Definiciones de Roles - WSTG-IDNT-01
Los vendedores ahora pueden establecer su zona horaria preferida, asegurando que las marcas de tiempo para pedidos, informes, plazos de cumplimiento y notificaciones se muestren en su hora local. Esta característica simplifica las operaciones para los vendedores que gestionan negocios en múltiples regiones. .
Prueba del Proceso de Registro de Usuarios - WSTG-IDNT-02
Hemos utilizado el correo electrónico como identidad para los usuarios. Los usuarios pueden registrarse con entradas básicas y el correo electrónico será único para cada usuario. El mismo correo electrónico no puede ser utilizado para múltiples cuentas de usuario.
Prueba del Proceso de Aprovisionamiento de Cuentas - WSTG-IDNT-03
Solo el administrador puede tomar medidas para aprovisionar el acceso para los usuarios y también puede desprovisionar a un usuario.
Prueba de Enumeración de Cuentas y Cuentas de Usuario Adivinables - WSTG-IDNT-04
La plataforma Spurtcommerce bloquea la cuenta de usuario en algunos intervalos. En este caso, el atacante no puede adivinar los nombres de usuario y contraseñas.
Prueba de Política de Nombres de Usuario Débil o No Aplicada - WSTG-IDNT-05
En este proyecto de comercio electrónico, no proporcionamos ningún mensaje de error relacionado con los nombres de cuenta adivinables y usamos solo el correo electrónico único como nombre de usuario.
Pruebas de Autenticación
La autenticación de usuarios es un aspecto importante en el comercio electrónico.
Una de las razones más convincentes para probar desde la perspectiva de un usuario autenticado es que algunas vulnerabilidades son explotables sin credenciales pero solo se descubren con credenciales. Sin pruebas de autenticación, una debilidad externa grave que permitiría la suplantación de usuarios pasaría desapercibida.
Puede consultar los detalles de los principios y reglas que autentican a los usuarios por su legitimidad en nuestro proyecto Spurtcommerce.
Prueba de Credenciales Transportadas a través de un Canal Encriptado - WSTG-ATHN-01
Los datos sensibles están protegidos cuando se transmiten a través de la red y hemos utilizado HTTPS para la plataforma y redirigimos cualquier solicitud HTTP a HTTPS.
Prueba de Credenciales Predeterminadas - WSTG-ATHN-02
Hemos configurado la plataforma para que las contraseñas de los usuarios no sean adivinables. El usuario no puede dar una contraseña que replique total o parcialmente los nombres de usuario y las contraseñas deben tener caracteres especiales, números y mayúsculas.
Prueba de Mecanismo de Bloqueo Débil - WSTG-ATHN-03
Evalúa la capacidad del mecanismo de bloqueo de cuentas para mitigar la adivinación de contraseñas mediante fuerza bruta. Luego evalúa la resistencia del mecanismo de desbloqueo contra el desbloqueo no autorizado de cuentas. Después de 5 intentos exitosos, hemos configurado el bloqueo de la cuenta de usuario por un tiempo y esto se ha hecho para evitar que los atacantes adivinen contraseñas.
Prueba de Esquema de Autenticación Eludible - WSTG-ATHN-04
Garantiza que la autenticación se aplique en todos los servicios que la requieran. Nuestra plataforma autentica al usuario en cada solicitud mediante el uso de middleware. Cualquier persona no autorizada no podrá acceder a ninguna solicitud sin pasar por la autenticación.
Prueba de Contraseña Vulnerable Recordada - WSTG-ATHN-05
Valida que la sesión generada se gestione de manera segura y no ponga en peligro las credenciales del usuario. Además, la contraseña no se guarda en el navegador.
Prueba de Debilidades de Caché del Navegador - WSTG-ATHN-06
Revisa si la plataforma almacena información sensible en el lado del cliente. Y luego también revisa si el acceso puede ocurrir sin autorización.
Prueba de Política de Contraseñas Débil - WSTG-ATHN-07
Determina la resistencia de la plataforma contra la adivinación de contraseñas mediante fuerza bruta utilizando diccionarios de contraseñas disponibles evaluando la longitud, complejidad, reutilización y requisitos de envejecimiento de las contraseñas. Hemos protegido la plataforma con contraseñas no adivinables.
Prueba de Funcionalidades de Cambio o Restablecimiento de Contraseña Débiles - WSTG-ATHN-09
Prueba de Funcionalidades de Cambio o Restablecimiento de Contraseña Débiles - WSTG-ATHN-09
Pruebas de Autorización
La autorización de usuarios es otro aspecto altamente significativo en los portales de comercio electrónico.
En Spurtcommerce hemos implementado los mecanismos adecuados, donde los usuarios pueden acceder solo a aquellos módulos para los que tienen permiso.
Los permisos se deniegan si intentan acceder a un módulo mediante una URL. Por lo tanto, los atacantes no pueden recuperar ningún registro de usuario para el cual no tengan derecho.
Prueba de Esquema de Autorización Eludible -
El usuario puede acceder solo a sus módulos accesibles. No pueden acceder a otros módulos incluso si conocen las URLs a través de las cuales se puede acceder al módulo. Esto se ha hecho con un middleware que valida al usuario y los permisos que tienen.
Prueba de Escalamiento de Privilegios -
El usuario no puede otorgar acceso a un módulo por sí mismo y para cualquier usuario, el acceso solo puede ser proporcionado por los usuarios administradores de mayor rango.
message. Security_one_40_1
Identifica puntos donde pueden ocurrir referencias de objetos. También evalúa las medidas de control de acceso y si son vulnerables a IDOR. La plataforma valida la solicitud y verifica la base de datos y verifica los datos con el usuario. Por lo tanto, los atacantes o hackers no pueden recuperar los registros de otros usuarios.
Pruebas de Gestión de Sesiones
La implementación de tokens de sesión para los usuarios del portal de comercio electrónico es altamente importante.
En Spurtcommerce, hemos implementado la gestión de sesiones, donde los tokens autentican a los usuarios y estos tokens están encriptados.
Puede consultar los detalles del proceso que hemos seguido en este sentido.
Prueba de Esquema de Gestión de Sesiones -
La plataforma recopila tokens de sesión para el mismo usuario y para diferentes usuarios donde sea posible. En este proyecto de comercio electrónico, hemos introducido tokens para autenticaciones y los tokens creados serán únicos para cada usuario y los tokens que se crean también estarán encriptados.
Prueba de Funcionalidad de Cierre de Sesión -
Evalúa la interfaz de usuario de cierre de sesión. Luego analiza el tiempo de espera de la sesión y si la sesión se elimina correctamente después del cierre de sesión. La plataforma guarda el token creado en la base de datos y en cada solicitud, el sistema valida si el token existe en la base de datos. Si no, la solicitud se devuelve seguida de un mensaje de error. Luego, durante el cierre de sesión, el token se elimina de la base de datos. .
Pruebas de Validación de Datos
Una validación exhaustiva de datos es una necesidad absoluta en proyectos de comercio electrónico.
En Spurtcommerce, hemos seguido los estándares importantes para la validación de datos implementando el proceso para la eliminación de datos o códigos inapropiados y los parámetros de solicitud. Esto es muy importante para prevenir cualquier vulnerabilidad y entrada innecesaria de datos irrelevantes.
Puede ver los detalles del proceso que hemos implementado para la validación de datos en Spurtcommerce.
Prueba de Contaminación de Parámetros HTTP -
En el proyecto Spurtcommerce, hemos utilizado archivos de solicitud para cada solicitud y en la solicitud, solo pueden usar los parámetros respectivos.
Prueba de Inyección SQL -
La plataforma valida cada valor de parámetro y sanitiza cualquier entrada de ataque XSS.
Prueba de Inyección SSI -
La plataforma no permite ciertos caracteres para algunos parámetros y esto se ha hecho para restringir a los atacantes.
Prueba de Inyección IMAP SMTP -
La plataforma valida el parámetro del cuerpo del correo electrónico contra ataques de fuerza bruta para que el atacante no pueda incluir etiquetas HTML o scripts.
Pruebas de Inyección de Código -
La plataforma también valida el parámetro de solicitud, verifica si tiene código en los parámetros. Si el código existe, entonces devuelve un mensaje de error.
Pruebas de Inyección de Comandos -
La plataforma valida el parámetro de solicitud, verifica si tiene código de línea de comandos en los parámetros. Si existe, entonces devuelve un mensaje de error.
Pruebas de Inyección de Cadena de Formato -
La plataforma restringe la cadena que causa cualquier comportamiento no deseado en la plataforma.
Pruebas de Inyección de Plantillas del Lado del Servidor -
En la plataforma, hemos utilizado plantillas ejs en el lado del servidor. Esto restringe la sintaxis de plantillas nativas en los parámetros de solicitud.
Criptografía
En el comercio electrónico, para evitar el abandono del carrito, es importante tener opciones de pago con un clic y otras características similares. Sin embargo, estas características tienen un riesgo de violación de datos y fácil acceso a los datos financieros de los clientes. .
Una de las razones más convincentes para probar desde la perspectiva de un usuario autenticado es que algunas vulnerabilidades son explotables sin credenciales pero solo se descubren con credenciales. Sin pruebas de autenticación, una debilidad externa grave que permitiría la suplantación de usuarios pasaría desapercibida.
Por lo tanto, la encriptación de los tokens de usuario juega un papel altamente significativo. En Spurtcommerce, hemos utilizado HTTPS para evitar la transmisión de datos sensibles y para cualquier información de este tipo, la encriptación se ha hecho obligatoria para prevenir todos los posibles ataques y vulnerabilidades de datos.
Pruebas de Seguridad Débil de la Capa de Transporte -
Hemos utilizado HTTPS para revisar la fortaleza criptográfica y la validez del certificado digital.
Pruebas de Información Sensible Enviada a través de Canales No Encriptados -
Hemos utilizado HTTPS para evitar completamente la transmisión de cualquier información sensible a través de los canales y la plataforma evalúa la privacidad y seguridad de los canales utilizados en formato de encriptación.
Pruebas de Encriptación Débil -
Para cualquier información sensible, la plataforma genera la encriptación AES. Esta es una clave secreta de 64 caracteres que es altamente segura y previene cualquier ataque.
Pruebas de Lógica de Negocio
En Spurtcommerce, todas las validaciones de lógica de negocio se realizan únicamente en la API del lado del servidor.
Con el uso de ACL, cada acción en la plataforma se registra y nos hemos asegurado de que cada acción clave siga un flujo paso a paso en la plataforma.
Además, hemos configurado el sistema para no aceptar archivos con extensiones que puedan pasar datos o códigos irrelevantes al sistema.
Pruebas de Validación de Datos de Lógica de Negocio -
Nos hemos asegurado de que todas las validaciones de lógica de negocio se realicen desde el backend y nuestro sistema nunca confíe en los datos del usuario.
Pruebas de Capacidad para Falsificar Solicitudes -
Nos hemos asegurado de que las validaciones de datos ocultos también se realicen en el backend y que la plataforma esté protegida contra solicitudes falsificadas.
Pruebas de Verificación de Integridad -
Hemos utilizado ACL y también auditamos cada acción realizada en nuestra plataforma. Esto puede ser visto por el administrador, quien puede ver un informe completo de las acciones realizadas por cada usuario y cuándo (hora exacta) se realizó dicha acción.
Pruebas de Circunvención de Flujos de Trabajo -
También hemos implementado un flujo paso a paso en la plataforma. Solo después de la finalización exitosa de los flujos principales, se pueden realizar los flujos subsiguientes.
Pruebas de Carga de Tipos de Archivos No Esperados -
Hemos permitido solo ciertos tipos de archivos esperados para la carga de documentos y la plataforma restringe los archivos con extensiones como .php, .jsp y .aspx.
Pruebas de Carga de Archivos Maliciosos -
Solo se permitirán archivos con extensiones como - pdf, xlsx, doc y docx para la carga, y todos los demás archivos con otras extensiones serán restringidos. .
Pruebas del Lado del Cliente
En Spurtcommerce, hemos implementado soluciones para todas las posibles vulnerabilidades que pueden ocurrir en el lado del cliente y que pueden llevar a la fuga de información sensible.
En el comercio electrónico, esto es importante ya que hay altas probabilidades de que los usuarios intenten imitar las URLs para obtener datos a los que no tienen derecho.
Con middleware para validar el token, el sistema no confía en ningún dato del lado del cliente.
Pruebas de Redirección de URL del Lado del Cliente -
Pruebas de Inyección CSS -
Mostrar nombres de archivos CSS desde la fuente de la página de vista es una de las vulnerabilidades. Nuestro frontend, que ha sido construido en Angular, cambia el nombre del CSS y reemplaza los nombres con nombres únicos que no se pueden adivinar.
Pruebas de Clickjacking -
Mostrar nuestra plataforma en iframe es una de las vulnerabilidades. Prevenimos que nuestra plataforma se muestre en iframes.
Pruebas de Almacenamiento en el Navegador -
Almacenamos el token en el almacenamiento local y en el lado del servidor, usamos middleware para validar el token. No confiará en los datos del cliente.
Pruebas de Inclusión de Scripts entre Sitios -
Prevenimos la fuga de cualquier información sensible desde la plataforma. .
Pruebas de API
Nuestra plataforma de comercio electrónico valida que se cumplan todos los estándares de seguridad y pruebas mediante el uso de Swagger con la sincronización adecuada entre el lado del servidor y el lado del cliente con documentación de API REST.
Pruebas de GraphQL -
Hemos asegurado la configuración lista para producción en el despliegue y validamos que todas las entradas estén protegidas contra ataques XSS.