Estamos desarrollando API REST utilizando el marco de Python llamado FASTAPI. La prueba de seguridad del código falló para la inyección de html. Están enviando un código de etiqueta html en la carga útil posterior, lo estamos insertando en DB y enviando lo mismo en GET Response. ¿Hay alguna forma de evitar esta inyección de HTML mientras se procesa la solicitud en FASTAPI?
sí. Ningún marco va a cambiar mágicamente el contenido que obtienes sin que seas explícito al respecto. (Imagínese si fuera una API REST para grabar fragmentos de HTML de un sistema interno para usarlos en la representación de páginas web en otro punto final: necesitaría el HTML tal como está)
Es solo una cuestión de llamar a una función de escape en sus datos de entrada, antes de ponerlos en la base de datos.
La función html.escape de la biblioteca estándar de Python es suficiente en este caso.
No hay código en su pregunta, y no sé FASTAPI de memoria, pero si coloca la carga útil en la base de datos sin pasar por ningún código que escriba, entonces debe personalizar eso y poner esta llamada para preprocesar sus datos , o agregue una etapa desencadenada (es decir, un suscriptor de eventos) que lo hará por usted.