Zendesk のマルウェアスキャン機能を使ってみた

先日公開された Zendesk のマルウェアスキャン機能を実際に使ってみました。テストファイルでの検知方法や Zendesk API での確認結果などを書いています。
2022.08.02

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

こんにちは、サービスグロースチームの筧です。

今回は、先日公開された Zendesk のマルウェアスキャン機能についてご紹介します!

マルウェアスキャンニングサービスに関するお知らせ – Zendeskヘルプ

どんな機能か

チケットの添付ファイルをスキャンし、マルウェアの可能性があると判定されたものをブロックしてくれるセキュリティ機能になります。

マルウェア添付ファイルへの対処 – Zendeskヘルプ

マルウェアスキャンは、チケットのすべての添付ファイルをスキャンし、マルウェアの可能性があると判定されたものをブロックするセキュリティ機能です。添付ファイルがマルウェアと判定された場合、管理者がマルウェア判定を取り消さない限り、エージェントはそのファイルをダウンロードすることはできなくなります。

何が嬉しいか

  • お問い合わせ対応を行う、エージェントの端末がウイルス感染する可能性が減る
  • バックエンドでマルウェアスキャンサービスを導入していた場合、そのサービスをなくせる可能性がある

使ってみた

本ブログでは、下記内容をやってみます。

  • 実際に検知させてみる
  • Zebdesk API での表示確認

実際に検知させてみる

マルウェア検知用のテストファイルとして EICAR を利用して実際に検知させてみようと思います。試す場合は、ローカル端末のウイルスソフトウェアも検知する可能性があるので、事前に情シス関係等に連携しておきましょう。

EICAR Standard Anti-Virus Test File | JPCERT/CC

お問い合わせフォームから、テストファイルを添付してチケット起票します。エージェント画面で対象チケットを確認すると、マルウェア検知されていることが確認できました!下図では管理者権限でログインしているので、GUI でアクセス許可できる箇所も表示されています。

Zebdesk API での表示確認

以下の Zebdesk API でマルウェア検知結果がどのように表示されるか確認します。 確認結果には、公式の API REFERENCE に未記載の内容も含みます。 本番のワークロードでのご利用には注意ください。

  • List Comments
    • 特定チケットのコメント内容をリスト
  • Show Attachment
    • 特定添付ファイルの内容を表示

List Comments

List Comments | Ticket Comments | Zendesk Developer Docs

Ticket Comments の List Comments を使って、レスポンスを確認します。特定チケット内のマルウェア検知結果を確認したい場合は当該 API が適切だと思います。レコード数が100を超えることが予想される場合は Pagination も実装しましょう。今回は簡単に curl で確認します。表示されているレスポンスはサンプルです。

$ curl https://{subdomain}.zendesk.com/api/v2/tickets/{ticket_id}/comments.json \
  -H "Content-Type: application/json" -v -u {email_address}:{password}
  
{
  "comments": [
    {
・・snip・・
      "attachments": [
		    "id": 498482,
		    "malware_access_override": false,
		    "malware_scan_result": "not_scanned",
・・snip・・
      "attachments": [
		    "id": 498483,
		    "malware_access_override": false,
		    "malware_scan_result": "malware_not_found",
・・snip・・
      "attachments": [
		    "id": 498484,
		    "malware_access_override": false,
		    "malware_scan_result": "malware_found",
・・snip・・

レスポンスに以下の項目が確認できました。

  • malware_access_override
  • malware_scan_result

malware_access_override はマルウェアが検出された添付ファイルへのエージェントのアクセスを許可する項目です。true で許可、false で制限となっています。

Update Attachment for Malware | Attachments | Zendesk Developer Docs

Toggles enabling or restricting agent access to attachments with detected malware.

malware_scan_result で添付ファイルがマルウェアの可能性のあるかを確認できそうです。調査したところ各パターンの値は以下の通りでした。

  • 機能有効化前等でスキャンされていない場合: not_scanned
  • 問題ないと判断された場合: malware_not_found
  • 疑われる場合: malware_found

Show Attachment

Show Attachment | Attachments | Zendesk Developer Docs

Attachments の Show Attachment を使って、レスポンスを確認します。List Comments などで確認できる、attachments.id を引数にとるので、添付ファイルごとに確認が可能です。

$ curl https://{subdomain}.zendesk.com/api/v2/attachments/{attachment_id} \
  -v -u {email_address}:{password}

{
  "attachment": {
    "malware_access_override": false,
    "malware_scan_result": "malware_found",
・・snip・・

先程の List Comments と同じく、レスポンスに malware_access_override と malware_scan_result が確認できます。表示されているレスポンスはサンプルです。

おわりに

最後まで読んでいただきありがとうございます。

フロント側でマルウェアスキャンできるのは嬉しいですね。検知時に運用側でどのように対応するかルールも定めて有効活用しましょう。公式ドキュメントには使用感や制限についても記載がありますので、あわせて参照ください。

マルウェア添付ファイルへの対処 – Zendeskヘルプ

それではまた!