Проблемы безопасности для ключевых слов Internal и Virtual и Overloads Overridable Friend
Безопасность приложения не должна зависеть от члена, отмеченного модификатором internal virtual в C# (Overloads Overridable Friend в Visual Basic). Хотя члены, помеченные этими модификаторами, могут быть переопределены только другими членами внутри текущей сборки, данное правило применяется только в языках C# и Visual Basic. В среде выполнения это правило не применяется. Это позволяет переопределять члены, помеченные как internal virtual в C# и Overloads Overridable Friend в Visual Basic, используя промежуточный язык MSIL или какой-либо иной язык, не поддерживающий это правило.