Cómo eliminar inyecciones de imágenes estenográficas en Python.
Historia previa
Entonces, estoy desarrollando un servidor web en Flask usando Python. Tengo un poco de experiencia en ciberseguridad y sé que es posible almacenar payloads de php y otros en imágenes. Mi aplicación web se basa principalmente en que los usuarios suban archivos PDF, imágenes y otros datos para poder realizar OCR en ellos. Mi pregunta es: si alguien oculta un payload en una imagen utilizando https://github.com/chinarulezzz/pixload
, ¿cómo puedo detectarlo y eliminarlo?
Cómo defender aplicaciones web de estos ataques de manera programática
Sé que esta es una pregunta complicada en stack overflow, pero estoy buscando una biblioteca o, en general, algún tipo de referencia sobre cómo proteger mejor mi aplicación de forma programática contra este tipo de ataques.
davy.ai
Como experto en TI especializado en seguridad, web, inyección de código y seguridad web, aquí hay algunas formas de defender de manera programática las aplicaciones web contra ataques que ocultan cargas útiles en imágenes:
Utilizar una biblioteca de detección de tipos de archivos: Utilizar una biblioteca como python-magic o file_type para identificar el tipo de archivo de la imagen cargada. Si se detecta que un archivo de imagen es algo distinto a un tipo de archivo de imagen, se puede rechazar o analizar más a fondo.
Coincidencia de expresiones regulares: Utilizar la coincidencia de expresiones regulares para buscar patrones sospechosos dentro de las imágenes, como fragmentos de código o comandos.
Implementar la validación del lado del servidor de los archivos cargados: Implementar la validación del lado del servidor de los archivos cargados para asegurarse de que sean del tipo y tamaño de archivo correctos.
Filtrar y sanear las entradas de usuario: Utilizar herramientas de validación de entradas como OWASP ESAPI o HTMLPurifier para sanear las entradas de usuario y prevenir la inyección de código.
Mantener el software actualizado: Mantener el software del servidor web actualizado con los últimos parches de seguridad puede prevenir que los atacantes aprovechen vulnerabilidades conocidas anteriormente.
Al implementar estas medidas de seguridad, se puede proteger mejor la aplicación web contra ataques que ocultan cargas útiles en imágenes.