TOCTOU 【Time-Of-Check to Time-Of-Use】 TOCTTOU
概要
TOCTOU(Time-Of-Check to Time-Of-Use)とは、コンピュータプログラムに含まれるバグ(欠陥)の類型の一つで、ある条件のチェック時点(time-to-check)から、チェックした結果を利用・行使する時点(time-to-use)までの間に環境が変化してしまい、意図せず競合状態が生じること。例えば、「あるファイルへの書き込み権限があるかチェックする」コードの後に「ファイルへの書き込みを行う」コードがある場合、ファイルが実際にはシンボリックリンクで、チェック直後に参照先が外部から変更されてしまう可能性がある。
その場合、実際に書き込みを行うファイルに対する権限のチェックは機能せず、アクセス権が無いはずのファイルの内容を書き換えてしまう誤作動が発生する。悪意の第三者が意図的にこうしたすり替えを行うことで、サイバー攻撃に悪用される場合もある(TOCTOU脆弱性)。
(2023.11.13更新)