さて、今日はCSV Excel Macro Injectionという脆弱性のお話です。 参考 http://www.contextis.com/resources/blog/comma-separated-vulnerabilities/ 今回はMicrosoft Excelにしぼって説明します。 CEMIはウェブサイトで良く見かける、CSVへの書き出し機能を狙った脆弱性です。皆様ご存知の通り、Excelには関数があり、CSVに書き出す際ユーザ入力が正しくエスケープされていない場合、関数をインジェクトすることにより任意のコード実行などができます。 コード実行にはDynamic Data Exchangeを使います。具体的なコードは以下です。 =cmd|' /C calc'!A0 上記コードの入ったCSVを開く事により電卓が起動します。しかし電卓が起動される前に警告が出ます。参考記事では警告