Attributeは自分が適用された先を知っているのか?

これは、上記の問題のすべてを解決するのに便利な情報なのですが、System.Attribute クラスにはそれらしいメンバーが定義されていません。
System.AttributeUsageAttribute は System.Attribute の派生クラスにたいしてしか指定できないので、そういう機能がありそうなものですが、これらは System.dll アセンブリではなく、mscorlib.dll アセンブリで定義されているので特別扱いされている気配がします。