Zen of Python
20.1K subscribers
1.29K photos
179 videos
36 files
3.3K links
Полный Дзен Пайтона в одном канале

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/xZOL
Download Telegram
В PyPI нашли библиотеку для MEXC, которая помогала… красть крипту у установивших

Вредоносный пакет ccxt-mexc-futures маскировался под легитимное расширение для автоматизации торговли криптовалютами. Пакет крал API-ключи пользователей и управлял их ордерами, перенаправляя запросы на поддельный сервер. 

Воистину, в эпоху «Девятого вала контента» пропустить такой зловред при установке инструментария легче легкого.

#безопасность

@zen_of_python
👀21
Из гайда по безопасности Django

Фреймворк известен своей философией «батарейки в комплекте». Однако даже с его встроенными средствами защиты, безопасность приложения во многом зависит от разработчика.

Современные веб-приложения сталкиваются с множеством угроз. Хотя Django предоставляет встроенные механизмы защиты от многих из них, полезно ознакомиться с основными InfoSec-практиками.

Обновление Django и зависимостей

Регулярно «освежайте» версию фреймворка и сторонних библиотек, они нередко содержат хотфиксы в контексте безопасности.

Передача данных по HTTPS

Обязательно настраивайте свой веб-сервер, будь то nginx или что другое, на HTTPS. SSL-сертификат можно получить бесплатно на letsencrypt.com. Библиотека certbot даже позволяет настроить автопродление серта.

Ограничение доступа к базе данных

Хотя Django ORM защищает от SQL-инъекций, дополнительные меры не повредят:

— Ограничьте права пользователя БД до необходимого минимума;
— Регулярно создавайте резервные копии и шифруйте данные;
— Используйте ORM Django.

Если необходимо использовать сырой SQL, спасет параметризация. В примере ниже драйвер БД экранирует значение username:


from django.db import connection

with connection.cursor() as cursor:
cursor.execute("SELECT * FROM auth_user WHERE username = %s", [username])


Встроенные средства безопасности

Создатели проекта предоставляет множество встроенных механизмов безопасности:

— Добавьте django.middleware.security.SecurityMiddleware в список MIDDLEWARE;
— Настройте заголовки безопасности, такие как Content-Security-Policy, X-Content-Type-Options, X-Frame-Options.

Аутентификация

— Реализуйте многофакторную аутентификацию с помощью пакетов, таких как django-otp;
— Применяйте ролевую модель доступа для управления правами пользователей.

Полезные библиотеки | Misc

Ниже представлена слегка эклектичная, но полезная подборка тулов, прямо или косвенно повышающих безопасность вашего сайта:
— django-ratelimit ограничит частоту запросов;
— django-guardian управляет объектно-ориентированными разрешениями;
— SonarQube / semgrep.dev: автотестирует ваш проект на предмет эксплойтов (DevSecOps).

#безопасность #основы
@zen_of_python
👍2🎃1
​​Еще одна схема мошенничества на PyPi: освободившиеся домены

PyPI усиливает защиту аккаунтов от атак через «возрождение» доменов. С июня 2025 года система ежедневно проверяет статус доменов, связанных с адресами электронной почты пользователей. Если домен переходит в период восстановления или удаления, PyPI автоматически отменяет верификацию таких адресов, предотвращая возможность захвата аккаунта через сброс пароля. С начала июня более 1 800 адресов были размечены как ненадежные. Пользователям рекомендуется добавить вторичный адрес с надежного почтового сервиса и включить двухфакторную аутентификацию для повышения безопасности.

#безопасность
@zen_of_python
😈 — Если для мошенников в опенсорсе отдельный котел в аду
😈51