%n in format string (なかやまさんの日記)から。

わたしも知りませんでした。勉強になります。マニュアルには以下のように書かれている。

信頼できないユーザー入力から来ている場合、 %n を入れることによって printf 呼び出し時 に
メ モ リ への書き込みを引き起こし、セキュリティーホールを作るかもしれない。

%n の機能を理解すると、確かにセキュリティホールになるわ。もっとも、こんな機能要るの? という感じはする。戻り値を使うのが普通じゃないかと。

コメントを残す

メールアドレスが公開されることはありません。