alertscriptでのコマンドラインインジェクション

お世話になっております。

アクションの実行にスクリプトを選択した場合にコマンドラインインジェクションができてしまうケースがあるように思い、認識正しいかご存じの方いれば教えていただきたいです。

zabbixバージョン:2.0.8

アクション設定の「メッセージ」:{ITEM.VALUE}

このような設定で、アラート検知時の値が「`hostname`」のようだった場合、メッセージ内容が「`hostname`」となり、スクリプト実行時にZabbixサーバ上でhostnameコマンドが実行されます。

alerter.cを見るとコマンドライン引数は全て二重引用符で囲まれてスクリプトに渡されているためにバッククォートの中身が評価されているのだと思います。

この実装である限り、例えばログ監視で悪意のある行を出力した場合にコマンドラインインジェクションが可能になると考えますが正しいでしょうか?

また、これを回避するにはalerter.cを修正するなどZabbixじたいの修正が必要と考えています。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

バグとして報告されていますが、現時点ですぐの修正予定は無いよ
うです。
https://support.zabbix.com/browse/ZBX-4529

他の方から頂いたご質問にも回答させて頂いていますが、現時点で
は、alerter.cなどを修正して回避するなどの対応が必要だと思われま
す。

ご参考:
  http://www.zabbix.jp/node/2651

ユーザー mkt の写真

やはりそうなのですね。
回答ありがとうございました。