LLVM の Arm バックエンドにおけるスタック保護機構では、関数のスタックフレーム内においてローカル変数と戻り先アドレスの間にチェック用の cookie 値(カナリア)がスタックプロテクタとして配置されます。関数の実行終了時にこの値が上書きされていないかチェックすることでスタックの改ざんを検知します。 スタックプロテクタが置かれるスタック上の位置はあらかじめ決められていますが、スタック上にロー...

関連キーワード