tfhx8
если это не безопасно
Дмитрий
Точно не чтоб новисы его использовали вместо всей остальной стандартной либы
Julian 🏳️‍🌈
тогда зачем оно вообще есть?)
Для внутренних целей, разработчиков языка или что-то в таком духе.
Tishka17
А если нужен server-side scripting?
Есть нормальные способы деплоя приложений.
Tishka17
может быть их больше)
Больше чем сколько?
Дмитрий
os.fork тоже есть кстати, но зачем-ьо же придумали multiprocessing
tfhx8
Больше чем сколько?
задел на будущее, поэтому для удобства
Tishka17
Правильно. Бэкдоры надо заранее готовить
Anonymous
Дмитрий
Проблемы бы не было, если б оп вместо кодинга побыстрее вбил бы в гугол python dynamic import
Дмитрий
Как и многих других проблем в этом чате кстати
Дмитрий
Эээ
Дмитрий
А рандомные чуваки в чате - всегда, и ими можно злоупотреблять?
Дмитрий
Вы серьезно?
Anonymous
Чего бля
Дмитрий
Даже несмотря на то, что конкретно в этом случае гугл выдаст доку
Дмитрий
А в почти всех других stackoverflow
Julian 🏳️‍🌈
У меня гугл кстати вообще редко доку кидает(
tfhx8
c exec понятно, но как могут выполнить код, если используется либа marshal? Тут тоже говорили, что она не безопасна
Julian 🏳️‍🌈
Приходится специально после запроса добавлять python docs
Anonymous
Конечно мы всегда правы
Anonymous
У меня гугл кстати вообще редко доку кидает(
Ибо людишки в доку идут в последнюю очередь
Anonymous
Все открывают простые ответы на стаке
Дмитрий
Ибо людишки в доку идут в последнюю очередь
Попрошу все ж за себя говорить
Anonymous
На стаке реклама Гугла/других человек
Anonymous
На стаке реклама Гугла/других человек
Гугл пушит стак выше в результатах поиска
Дмитрий
Все ок?)
c
Все открывают простые ответы на стаке
на стаке в целом норм ответы
Tishka17
c exec понятно, но как могут выполнить код, если используется либа marshal? Тут тоже говорили, что она не безопасна
"The marshal module exists mainly to support reading and writing the “pseudo-compiled” code for Python modules of .pyc files" Цитата из документации
Tishka17
Думаю натолкнет на мысли
tfhx8
подсунуть специально сформированные данные
для этого надо же знать баги самого маршала? Всмысле как именно нужно делать "эти данные" ? Тоесть просто кода на питоне не прокатит же?
Tishka17
А о том, что он вообще может делать все что угодно так не писался для работы с данными
Alex
а о выполнении произвольного или почти произвольного кода путем подсовывания специально сформированных данных
Tishka17
И это ожидаемое поведение
Tishka17
А не баг
Tishka17
всмысле заменить его pyc файлы на свой?
Нет. Он фактически юзается самим питоном
Julian 🏳️‍🌈
И возможно даже не обязательно с расширением pyc
Tishka17
Не надо его юзать в своих прогах
Alex
кто пустил его к компьютеру?
Дмитрий
Гугл по запросу python marshal malformed data
Дмитрий
Рекомендую
tfhx8
если он юзается внутри докера?
tfhx8
и если данные тоолько читаются маршалом, в чем не безопасность?
tfhx8
чтение каких имеенно файлов, из вне не видно же
Tishka17
если он юзается внутри докера?
Докер не увеличивает безопасность приложения
tfhx8
им могут наверно воспользоватьсья если получат физический доступ к пк или шелуу?
Alex
мы не можем запретить тебе прострелить себе колено играясь с ружьем
Alex
с такими познаниями я бы поостерегся размышлять о безопасности
tfhx8
пример получения доступа можете привести?
tfhx8
через маршал
tpouuhk
пример получения доступа можете привести?
Он может исполнять любой питон код ( как я понял из того что говорили выше )
tpouuhk
пример получения доступа можете привести?
Запустить питон интерпретатор в докере и дай доступ)))00)0)0)
Tishka17
Подумаешь, кто-то будет майнить на твоём железе
tpouuhk
ну это так себе пример)
Ну любой код будет исполнятся, нормальный пример 🌝
Tishka17
Особенно круто, если ты платишь за секунды CPU и у тебя авто масштабирование при превышении нагрузки :)
tfhx8
ну чтобы это эксплуатировать, они же должны получить доступ к машине?
tpouuhk
🌝
tfhx8
Ну любой код будет исполнятся, нормальный пример 🌝
я не врубаюсь, каким образом? Тоесть положут свой файл к примеру на питоне и сделают marshal.load(mycode) ?
c
если позволишь, то да
tfhx8
ну чтобы это эксплуатировать, они же должны получить доступ к машине?
так им сначало надо будет сломать основную машину же?
Сергій
я не врубаюсь, каким образом? Тоесть положут свой файл к примеру на питоне и сделают marshal.load(mycode) ?
злоумышленник берёт и ложит свой код, вместо твоего а твоя прога его запускает.
tpouuhk
🌝