Supongamos que está utilizando técnicas de tokenización / cifrado suficientes para cumplir con las PCI DSS.
No, estamos ante un problema abstracto en el que alguien puede predecir un valor. El factor de riesgo es que si el valor se puede adivinar o sigue un patrón conocido, se podría eliminar a voluntad.
La cuestión del GUID es irrelevante, porque el vector de ataque sigue siendo un ataque de fuerza bruta. Si bien conocer el patrón o los algoritmos utilizados para crear su identificación única puede ciertamente ayudar a reducir las posibilidades de un ataque más limitado del diccionario, el conocimiento de las identificaciones con anticipación no es necesario para eliminar registros de manera indiscriminada.
Usted aborda el problema implementando controles adicionales. Primero, si esto está en una base de datos, tiene suficientes registros y transacciones en su lugar.
En el camino para realizar la eliminación, debe haber controles adicionales en su lugar. Comencemos por el lado del usuario: si el registro está asociado con el usuario, solo el usuario debe tener la capacidad de eliminar sus propios registros. Si el usuario no está autenticado o no posee los registros, no permita que el proceso de eliminación continúe. ¿El usuario necesita proporcionar una autorización especial? ¿Hay otra variable establecida en la base de datos o en una sesión para permitir la eliminación (por ejemplo, deben autorizar antes de que se lleve a cabo la acción?) Si existe un riesgo suficiente, puede implementar una confirmación fuera de banda, como el envío de una Mensaje SMS o tal vez una confirmación por correo electrónico es aceptable. En este escenario, es probable que exista un riesgo bajo si un usuario borra a sabiendas sus propios registros de tarjetas de crédito porque puede ingresarlos nuevamente más tarde.
Si tiene controles sólidos de autenticación, autorización y transacción, limitará la capacidad de eliminar valores de forma indiscriminada, incluso si se conocen.
Como precaución adicional, es posible que desee implementar algoritmos de detección de ataques y heurísticas. Por ejemplo, limite el número de eliminaciones de la misma dirección IP por día. Revertir transacciones si hay demasiadas eliminaciones en un día dado considerando patrones de eliminación normales, etc.
Suena a partir de su descripción que se está ejecutando un sencillo comando POST. Me aseguraría de que esto solo suceda si hay TLS / SSL, el usuario está autenticado, hay un token CSRF en la solicitud, etc. Me aseguraría de que todos Las eliminaciones se registran y se pueden revertir. Ya que la eliminación no resultaría en una exposición, también puede confiar en una notificación posterior a la acción a los usuarios, "Confirmamos que eliminó su tarjeta de crédito registrada. Si no lo hizo, comuníquese con nosotros inmediatamente", etc. / p>