← malcheck トップ

セキュリティ情報・データの取り扱い

更新日: 2026 年 9 月 14 日

適用範囲: malcheck(https://malcheck.com/)の API と管理画面

問い合わせ窓口: 株式会社ダンミカ info@donemika.com(セキュリティに関する質問、障害・漏えい時の連絡もこちら)

このページは、malcheck を利用するお客様が、取引先や社内のセキュリティチェックシート(質問票)に回答するための根拠として使えるように書いています。登録なしで閲覧・共有できます。記載は実装と運用の実態に合わせており、実装と異なることは書きません。

1. malcheck が行うこと

お客様のアプリケーションから POST /api/scan にファイル(実体、またはファイルが置かれている URL)を送ると、malcheck のサーバー内の ClamAV でウイルス検査を行い、結果を JSON で返します。

2. 処理場所

検査サーバーとデータベースはさくらインターネット(東京)の設備にあります。検査処理を国外のサーバーで行うことはありません。接続先・接続元の IP アドレスは固定で、IP アドレス一覧に公開しています(変更は 30 日前に通知)。ただし、後述の再委託先のうち Sentry と Mailgun は米国のサービスです。国内のサーバーで処理していても、再委託先の所在地を含めた取り扱いの実態で「国外での取り扱い」の有無が判断されることがあるため、質問票への回答では第 6 節の再委託先一覧を参照してください。

3. ファイル本体の扱い

4. 保存される情報と保持期間

検査ごとに、次の情報を検査履歴としてデータベースに保存します。ファイル本体は保存しません。

項目内容備考
ファイル名保存しません。送信時のファイル名はレスポンス(非同期の場合はコールバック)に返すだけで、検査履歴には記録しませんファイル名に氏名・案件名などが含まれていても malcheck 側には残りません
URLURL 指定で送った場合の URLお客様側の機密や個人情報が含まれることがあります。機密を含めない運用を推奨します
metaお客様が任意で付けた文字列
callback_url非同期モードで指定した通知先 URL
サイズ・ハッシュファイルサイズ、MD5・SHA-1・SHA-256ハッシュからファイルの中身は復元できません
判定結果clean / dirty / unscannable / error、検出名または失敗理由、ClamAV のバージョン
日時受付日時(UTC)

「ファイル本体は保存しない」ことを、それだけで安全性の根拠にはしていません。URL・meta にはお客様側の機密が入りうるため、質問票への回答では「本体とファイル名は保存されず、上記の記録が残る」と書き、機密を含めない運用をお客様側で行うことを前提にしてください。

種類保存場所保持期間用途
検査履歴(上の表)データベース(国内)1 年(受付から 365 日を過ぎた行を毎日自動削除。削除後もチーム別・月別の件数だけは利用量の集計のために残す)検査結果の証跡、利用件数の集計。ダッシュボードの「検査履歴」で検索・CSV 保存できる
アクセスログ検査サーバー内90 日障害調査、不正アクセスの検知。リクエスト元 IP・URL・ステータス・User-Agent を含む。ファイルの中身や POST パラメータは含まない
アプリケーションログ検査サーバー内90 日障害調査。一時ファイルのパスを出力する。ファイルの中身は出力しない
エラー記録(Sentry)Sentry(米国)90 日(Sentry の既定)例外の発生箇所・回数の把握。送る内容は第 6 節を参照
データベースのバックアップさくらインターネットのオブジェクトストレージ(国内)30 日(日次で取得し、30 日を過ぎた世代を自動削除)障害時の復旧。復旧後は保持期限を過ぎた検査履歴を再度削除する

解約後も検査履歴は上記の保持期間まで残り、期限で自動削除されます。期限前の削除を希望される場合は問い合わせ窓口までご連絡ください。1 年より長く証跡を残したい場合は、ダッシュボードの「検査履歴」から期間を指定して CSV をダウンロードし、お客様側で保管してください。

5. 検査エンジンと検査範囲の限界

6. 再委託先(malcheck が利用する外部サービス)

malcheck の提供のために次の外部サービスを利用しています。ファイル本体をこれらに送ることはありません。それぞれに渡るデータの種類は次のとおりです。

サービス所在地用途渡るデータ
さくらインターネット日本(東京・石狩)検査サーバー・データベースのホスティング、バックアップの保管ファイル本体(検査中の一時保存のみ)、検査履歴、ログ、DB バックアップ
Sentry米国エラー監視例外発生時のスタックトレース、リクエストの URL・メソッド・ヘッダー(Cookie・認証情報を除く)、直前のログとクエリの発行記録。リクエスト本文(token・url・meta 等のパラメータ)、SQL のバインド値、IP アドレスは送らない設定にしています
Mailgun米国メール送信登録・パスワード再設定などのメールの宛先アドレスと本文。検査に関するデータは含まない
Mailchimp米国登録者リスト登録時のメールアドレス
Slack米国運営者向けの日次集計通知チーム名と検査件数のみ

7. 結果の意味と、お客様側で実装していただくこと

結果意味推奨する扱い
cleanClamAV で検出されなかった。「安全の保証」ではない通常どおり処理する
dirty検出あり。found に検出名保存・配布しない。必要なら利用者に通知する
unscannable検査は完了したが中身を検査できなかった(暗号化 ZIP、展開上限超過)。found に理由通さない。再送しても結果は変わらないので、利用者に暗号化を解く・分割するよう案内する
error(HTTP 502 / 503)検査できなかった(URL の取得失敗、検査エンジンの障害)。message に理由通さない。503 は時間をおいて再送する
結果が返らない(タイムアウト・コールバック未達)検査が完了していない通さない(保留にして再検査する)。「検査できなければ通さない」設計を推奨します

ウイルス検査だけでファイルアップロードの対策が完了するわけではありません。拡張子・MIME タイプ・サイズの制限、保存先での実行権限の排除、配信時の Content-Disposition の指定など、呼び出し側の対策と組み合わせてください(OWASP File Upload Cheat Sheet を参照)。

8. 運営者によるアクセスの管理

9. 障害・漏えい時の対応

10. セキュリティチェックシートの回答例

よくある設問に対する回答例です。malcheck 側で実施していることお客様側で実装していただくことを分けて書いています。回答例は「対象ファイルを漏れなく malcheck に送り、結果が返るまで公開せず、検出時・未完了時は通さない」という運用を実装した場合のものです。自社の実装に合わせて書き換えてお使いください。そのまま使えることを保証するものではありません。

設問malcheck が実施することお客様側で実装すること回答例
アップロードファイルのウイルスチェックを実施しているか受け取ったファイルを ClamAV で検査し、結果を返す対象ファイルを公開・利用前に漏れなく送る。結果が返るまで公開しない対象となるアップロードファイルを公開・利用前に外部のウイルス検査 API(malcheck)へ送信し、ClamAV で検査しています
使用しているエンジンと定義の更新頻度ClamAV。定義は毎時更新を確認して反映ClamAV を利用し、ウイルス定義は毎時更新の有無を確認して反映しています
ファイルはどこに保存されるか。国外に出るか国内(東京)のサーバーで処理し、検査後にファイル本体を削除送るファイルの範囲を決める検査は国内のサーバーで行われ、ファイル本体は検査後に削除されます。検査事業者のエラー監視(Sentry)とメール送信(Mailgun)は米国のサービスですが、ファイル本体は送られません
検査後に何が残るかサイズ・ハッシュ・判定結果・URL・meta を検査履歴として 1 年保存。ファイル名は保存しないURL や meta に機密を含めないファイル本体とファイル名は保存されず、ハッシュ・判定結果などの検査履歴が保存されます(保持期間は 1 年。期限を過ぎた行は毎日自動削除)
通信は暗号化されているかHTTPS のみHTTPS で送る検査 API との通信は HTTPS で暗号化されています
ウイルスが検出された場合の扱いdirty と検出名を返す保存・配布しない検出されたファイルは保存・公開せず、利用者に通知します
検査できなかった場合の扱いerror(HTTP 502 / 503)を返す。結果が出なかった検査も 10 分で error に確定clean 以外は通さない。503 は再送する検査が完了しなかったファイルは公開せず、再検査または保留とします
暗号化されたファイルの扱い暗号化 ZIP と展開上限超過は unscannable を返す(2026-09-14 以降のチーム。それ以前のチームは従来どおり clean、希望により切り替え)unscannable を通さない。暗号化ファイルを受け付けない、または別途扱うパスワード付き圧縮ファイルは検査できないため受け付けていません(検査 API が unscannable として返すため、公開しない設計にしています)
ログの保持期間アクセスログ 90 日、検査履歴 1 年(期限で自動削除)自社側のログ方針を書く検査事業者側ではアクセスログを 90 日、検査履歴を 1 年保持し、期限を過ぎたものは自動削除しています
外部サービスへの接続先を IP で制限できるか接続先 IP を固定し IP アドレス一覧ips.json で公開。変更は 30 日前に通知送信プロキシ・ファイアウォールで宛先を制限する検査 API の接続先 IP は固定で公開されており、宛先を当該 IP に制限しています。IP の変更は 30 日前に通知される契約です
Webhook(コールバック)の送信元 IP は公開されているかコールバックと URL 取得の送信元 IP を固定し、同じページで公開受信側で送信元 IP を制限する検査結果のコールバックは公開された固定の送信元 IP から送られ、受信側で送信元 IP を制限しています

11. 個別の質問票への対応

上の回答例で足りない設問がある場合は、設問をテキストで info@donemika.com または 問い合わせフォーム からお送りください。malcheck に関する回答文を表形式のテキストでお返しします。ファイル(Excel 等)への記入はお客様側でお願いしています。契約検討中でも対応します。

12. 関連文書