Articles of Security

¿Cómo se implementa python-keyring en Windows?

¿Cómo Python-keyring proporciona seguridad en Windows? En GNOME / KDE en Linux, se le solicita al usuario que ingrese su contraseña para autorizar el acceso al anillo de claves por aplicación. En Windows no hay tal aviso cuando una aplicación accede al conjunto de claves. ¿Qué es detener una aplicación Python aleatoria para recuperar una […]

¿Se necesita ALLOWED_HOSTS en Heroku?

Por lo que entiendo, ALLOWED_HOSTS realiza una comprobación cuando DEBUG=False para evitar que un atacante apunte su propio dominio a su sitio. Parece que los dominios personalizados de Heroku hacen lo mismo. Entonces, en lugar de agregar una variable ALLOWED_HOSTS requerida en tu app.json para el botón Heroku (ya que se siente redundante y es […]

¿Por qué la deencoding de Python reemplaza más que los bytes no válidos de una cadena codificada?

Al intentar decodificar una página html utf-8 codificada no válida, se obtienen resultados diferentes en python, firefox y chrome. El fragmento codificado no válido de la página de prueba se parece a ‘PREFIX\xe3\xabSUFFIX’ >>> fragment = ‘PREFIX\xe3\xabSUFFIX’ >>> fragment.decode(‘utf-8’, ‘strict’) … UnicodeDecodeError: ‘utf8’ codec can’t decode bytes in position 6-8: invalid data ACTUALIZACIÓN : Esta […]

¿Mi código impide el recorrido del directorio?

¿Es seguro el siguiente fragmento de código de una aplicación Python WSGI del recorrido de directorios? Lee un nombre de archivo pasado como parámetro y devuelve el archivo nombrado. file_name = request.path_params[“file”] file = open(file_name, “rb”) mime_type = mimetypes.guess_type(file_name)[0] start_response(status.OK, [(‘Content-Type’, mime_type)]) return file Monté la aplicación en http://localhost:8000/file/{file} y envié solicitudes con las URL […]

Acelerar los ataques de inicio de sesión de fuerza bruta en Django

¿Existen tácticas generalmente aceptadas para proteger las aplicaciones Django contra este tipo de ataque?

¿Cómo en Django / Python puedo garantizar la seguridad del HTML introducido por WYSIWYG?

Me gustaría eliminar las vulnerabilidades a la inyección XSS / JavaScript en una aplicación web donde los usuarios pueden usar un editor como CKEditor que permite HTML arbitrario (y si mi elección específica de editor permite HTML arbitrario o no, los blackhats podrán enviar datos arbitrarios HTML de todos modos). Así que no hay JavaScript, […]

Validando archivos subidos en Django

Una aplicación de Django en la que estoy trabajando tiene un modelo de Event . Un Event puede tener fotos asociadas, archivos html estáticos y archivos pdf. Me gustaría permitir que los usuarios de confianza carguen estos archivos, pero desconfío de la seguridad, especialmente después de haber leído lo siguiente en los documentos de Django […]

Derechos de acceso a nivel de campo y seguridad en openerp 7

Supongamos que tengo 3 usuarios que son los siguientes: user_employee having access rights Human Resource /Employee group user_officer having access rights Human Resource /officer group user_manager having access rights Human Resource /manager group Para objeto hr_employee(hr.employee) Si estoy conectado como user_manager o user_officer , puedo crear / editar mi propio registro de empleado. Si estoy […]

Dónde almacenar los archivos subidos por el usuario en Django

Estoy creando una aplicación Django donde los usuarios subirán un archivo CSV. Cada fila en el archivo CSV se agregará a la base de datos (después de validar los datos). El archivo puede ser descartado. De la documentación de Django, estoy usando esto para guardar el archivo. def handle_uploaded_file(f): with open(‘some/file/name.txt’, ‘wb+’) as destination: for […]

La mejor manera de interactuar con un servicio con fines de explotación.

Supongamos que tengo un servicio para interactuar. Usando netcat sería algo como esto: > nc 127.0.0.1 8080 hello hi how are you? Quiero automatizar la interacción con este servicio para realizar algún ataque, por ejemplo, cadena de formato. Así que creo un script en Python y eso fue realmente doloroso para que funcionara. Aquí está […]