自分だけでしょうか?2020年1月半ばから、作成したアプリがWindows Defenderでトロイの木馬として誤検知されるようになりました。普段の開発環境では、Windows Defenderの除外設定でフォルダを除外しているので出ないのですが、テストPCのまっさらWindows10環境で一度出たら、他のテストPCでも検知されるようになり・・・
1月半ばまでは全く問題なかったのに何故!?(泣)
1. Submissionの結果
Microsoftに今回はexeとソースファイルをzipで固めて送って、結果ソースにはなし。あるのはzip(exeが入っている)とexe本体がCloudではトロイの木馬として検知されるもスタッフがチェックするのか、最終結果はDefenderの定義ファイルにより誤検知されないようになりました。Windows Defenderの定義ファイルを更新しておけば問題ないです。
以下が結果です。
アナリストコメントで、検出を外しましたと。最新のWindows Defender定義ファイルをダウンロードすればOKです。

今回は楽天商品レビュー取得アプリを久々起動してみたら、誤検知され焦りました。先月は大丈夫だったのに・・・
ちなみにWindows Defender誤検知対応の具体的な手順は以前記事にしましたので参照ください。
2. 何が検知対象なのか?
ブログでも紹介しているスクリプトをexe化してもなるのか確かめてみました。楽天レビュー取得アプリは送信して誤検知から外してもらっているので、よっぽどソースを変更しない限り誤検知されることはないでしょう。(いつまた誤検知対象になるかは、マルウェア次第だと勝手に思っています)
3. まずはUPXを疑ってみる
UPXが原因の可能性とAutoIt公式Wikiにも書いてあるので、ソースは同じでビルドでUPXを使う・使わない版を作ります。
ちなみに筆者はバッチファイルで非圧縮版作ってから、UPXで圧縮版を作ることをやっています。
下記のような感じで、targetnopack.exeを作ってからtarget.exe(UPXで圧縮)
rem stripperから開始 "C:\..\AU3Stripper.exe" "target.au3" /rsln rem 既存のexeファイルを削除 rm targetnopack.exe rm target.exe rem build no comp "C:\...Aut2exe_x64.exe" /in target_stripped.au3 /out targetnopack.exe /icon target.ico /comp 4 /x64 /nopack /unicode /companyname "" /filedescription "" rem comp by UPX "C:\..upx.exe" --best --ultra-brute -o target.exe targetnopack.exe
この2つをなるべくまっさらなPCにコピーして、誤検知されるかどうかを見ればいいですね。
3.1 以前作ったダウンロードファイルの検索でやってみると
以前作った、ダウンロードしたファイルの検索スクリプトでUPX圧縮しない・する版を用意してみます。これをUSBメモリなどでまっさらPCにコピーするとどうなるかですね。
3.2 結果は見事UPX圧縮版が脅威と見なされました・・・
USBをまっさらPCに刺してデスクトップにコピーしようとしたら、UPX圧縮版は即座にWindows Defenderによって脅威と見なされ消えました。
元に戻すにはWindows セキュリティ->ウイルスと脅威の防止->保護の履歴 に履歴として残っているのでそれを許可すればOKです。
4. 楽天レビュー取得アプリもUPX圧縮なしなら誤検知されない
今後、バージョンアップのたびにMicrosoftに送信するとかになると大変、しかもWindows Defender以外のアンチウイルスソフトを現在無視した状態なので、もうUPX使わないほうが良いですね。
というわけで、Stores.jpで公開しているアプリはUPX圧縮しないものに差し替えました。
これで検知されることはないと思いたいのですが(少なくとも自分は変なコードは書いていないはず)
コメント