Articles of seguridad de

Entendiendo la inseguridad de Python Pickle

En la documentación de Python se indica que el pickle no es seguro y no debe analizar las entradas de los usuarios que no son de confianza. Si investigas esto; casi todos los ejemplos demuestran esto con una llamada a system() a través de os.system . Lo que no me queda claro es cómo se […]

Python: API de generación de token con su peligroso

Estoy siguiendo el libro “Flask Web Development” para implementar la autenticación basada en token. Básicamente, el usuario se autentica a sí mismo con autenticación básica HTTP y se genera un token para ello: s = Serializer(app.config[‘SECRET_KEY’], expires_in = 3600) token = s.dumps({ ‘id’: user.id }) Pero parece que esto no cambia mientras la id y […]

¿Puede la cadena .format () de Python ser segura para cadenas de formato que no son de confianza?

Estoy trabajando en una aplicación web donde los usuarios podrán suministrar cadenas en las que el servidor sustituirá las variables. Preferiblemente, me gustaría usar la syntax del formato PEP 3101 () y estoy analizando la posibilidad de reemplazar los métodos en Formatter para que sea seguro para una entrada no confiable. Estos son los riesgos […]

Consulta si los hilos de Python. El locking está bloqueado o no

Tengo un subproceso que estoy ejecutando (código a continuación) que inicia un subproceso de locking. Para garantizar que otros subprocesos no inicien el mismo subproceso, tengo un locking alrededor de esta llamada subprocess.call . También quiero poder terminar esta llamada de subproceso, así que tengo una función de parada a la que llamo desde otro […]

Biblioteca segura de Python Markdown

Me gustaría permitir que los usuarios dejen comentarios de texto enriquecido, posiblemente utilizando markdown. He instalado las bibliotecas utilizadas en Reddit, pero estoy preocupado por el ataque de inyección de javascript que ocurrió el año pasado, especialmente porque todavía no tengo claro los detalles de cómo se realizó el ataque. ¿Debo estar preocupado por la […]

¿Cómo pasar de forma segura la contraseña como argumento a un script de Python a través de SSH?

Tengo un script en Python que crea un usuario de Linux, dado un nombre de usuario y una contraseña como argumentos. quiero llamar al script directamente (por ejemplo, ./pass.py ) llame al script en la misma máquina virtual desde python (por ejemplo, subprocess.Popen(‘/pass.py’) ) llame al script desde una máquina virtual diferente desde python sobre […]

Almacenamiento de usuario y contraseña en una base de datos

Estoy creando un software con usuario + contraseña. Después de la autenticación, el usuario puede acceder a algunos servicios semipúblicos, pero también puede cifrar algunos archivos a los que solo el usuario puede acceder. El usuario debe almacenarse tal cual, sin modificaciones, si es posible. Después de la autenticación, el usuario y la contraseña se […]

Cómo verificar si un directorio es un subdirectorio de otro directorio

Me gusta escribir un sistema de plantillas en Python, que permite incluir archivos. p.ej Esta es una plantilla Puede incluir archivos de forma segura con safe_include`othertemplate.rst` Como saben, incluir archivos puede ser peligroso. Por ejemplo, si uso el sistema de plantillas en una aplicación web que permite a los usuarios crear sus propias plantillas, podrían […]

¿Es “safe_eval” realmente seguro?

Estoy buscando una función eval “segura” para implementar cálculos similares a las hojas de cálculo (usando numpy / scipy). La funcionalidad para hacer esto (el módulo rexec ) se ha eliminado de Python desde la versión 2.3 debido a problemas de seguridad aparentemente no solucionables. Hay varios hacks de terceros que pretenden hacer esto: la […]

Prueba de Python de HeartBleed

Me encontré con esta secuencia de comandos de Python que prueba el servidor para la vulnerabilidad HeartBleed: ¿Alguien podría explicar el contenido del “hola”, qué se está enviando y cómo se construyó este contenido? No estoy tratando de usar este script maliciosamente. Me pidieron que probara un servidor Tomcat 7.0.2 para la vulnerabilidad: verifiqué que […]