Есть ли в Ruby on Rails своего рода функциональность Ведущего устройства Page?

Самый современный метод путаницы, кажется, виртуальная машина.

Вы в основном принимаете некоторое участие своего объектного кода и преобразовываете его в Ваш собственный формат байт-кода. Затем Вы добавляете маленькую виртуальную машину для выполнения этого кода. Только способ правильно отладить этот код будет состоять в том, чтобы кодировать эмулятор или дизассемблер для формата инструкции Вашего VM. Конечно, необходимо думать о производительности также. Слишком много байт-кода сделает Ваш прогон программы медленнее, чем собственный код.

самые старые приемы бесполезны теперь:

  • Isdebuggerpresent: очень хромой и легкий исправить
  • Другие обнаружения отладчика/точки останова
  • материал Ring0: пользователям не нравится устанавливать драйверы, Вы могли бы на самом деле повредить что-то в их системе и т.д.
  • Другой тривиальный материал, который все знают, или это делает Ваше программное обеспечение нестабильным. помните, что, даже если трещина делает Вашу программу нестабильной, но она все еще работает, за эту неустойчивость возложат ответственность на Вас.

, Если Вы действительно хотите кодировать решение VM сами (существуют хорошие программы для продажи), не используйте всего один формат инструкции. Сделайте это полиморфным, так, чтобы у Вас могли быть различные части кода, имеют другой формат. Таким образом, весь Ваш код не может быть взломан путем записи всего одного эмулятора/дизассемблера. Например, решение MIPS, которое предложили некоторые люди, кажется, легко повреждается, потому что формат инструкции MIPS хорошо документируется, и аналитические инструменты как IDA могут уже демонтировать код.

Список форматов инструкции, поддерживаемых IDA про дизассемблер

8
задан Justin Love 23 October 2009 в 16:24
поделиться

1 ответ

в вашем проекте rails в app / layouts / application. (Html.erb | html.haml), это макет или эквивалент для мастера. Вы также можете создать другие макеты и указать макет для использования для каждого действия:

render :index, :layout => "awesome"

Или указать макет для всего контроллера:

class PostController < ActionController::Base
  layout "super_awesome"
end
6
ответ дан 5 December 2019 в 22:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: