Size: a a a

2017 November 17

С

СчАсТлИвАя НО НЕ ТВОЯ ❤️❤️❤️ in Rubyata
Kalys Osmonov
в каждой руби версии есть баг, который вызывает сегфолт. через сегфолт получат доступ к хост процессу. опасян.
В чём механизм получения доступа к хост-процессу через сегфолт?
источник

ch

core hook in Rubyata
overflow + получить управление
источник

ch

core hook in Rubyata
пишем шеллкод как в старые добрые
источник

ch

core hook in Rubyata
НО
источник

ch

core hook in Rubyata
такие риски должны учитываться при построении архитектуры
источник

ch

core hook in Rubyata
при всем желании мы не сможем учесть всех дырок во всех инструментах, поэтмоу по безопасности нужно абстрагироваться и перекрывать такие вещи уровнем выше
источник

KO

Kalys Osmonov in Rubyata
Adis O
надо было добавить, что код будет писать доверенный человек, а не аноним какой-то
если доверенный человек пишет, то почему-бы не eval?
источник

ch

core hook in Rubyata
надо было добавить, что код будет писать доверенный человек, который не умеет писать код
источник

PT

Pavel Tkachenko in Rubyata
Мне тут показывали крутую штуку. Google
источник

PT

Pavel Tkachenko in Rubyata
источник

RS

Rustam Sharshenov in Rubyata
Kalys Osmonov
если доверенный человек пишет, то почему-бы не eval?
тогда и руби процесс под рутом, чтобы точно все работало
источник

PT

Pavel Tkachenko in Rubyata
Короче с ним проблем не будет
источник

PT

Pavel Tkachenko in Rubyata
источник

PT

Pavel Tkachenko in Rubyata
Юра, тут думаю твоя экспертиза нужна
источник

ch

core hook in Rubyata
@nimfin о приуэт )
источник

Y

Yuri in Rubyata
@corehook привет! ) для такой задачи aws lambda больше подходит. Но насколько я знаю руби там пока нет. Кажется обещали добавить скоро
источник

Y

Yuri in Rubyata
Shopify пытались не так давно сделать безопасный запуск стороннего руби кода. В результате кучу багов пофиксили в рубях, но спустя пол года признались что это бездонная бочка и засендбоксили как-то (скорее всего через контейнеры те же) Можно в их блоге поискать.
источник

MS

Mikhail Sytchev in Rubyata
Меня больше интересует вопрос зачем так делать. Что за задача? Выглядит как не очень хорошая идея. Может можно другое решение придумать.
источник

Y

Yuri in Rubyata
Задача предоставить пользователю кастомизировать логику приложения (кастомные формулы, рассчеты, етц)
источник

Y

Yuri in Rubyata
Насколько я понимаю
источник