約1か月前、PyInstallerとInno Setupを使用して、Python 3スクリプトのインストーラーを作成しました。MyAVG Business Edition AntiVirusは、今日のアップデートで文句を言い始めましたプログラムの起動に使用されるメインの.exeファイル(Python "guts"のすべてを持つPyInstallerによって作成されたフォルダー)にSCGeneric Trojan Horseが含まれていること。 AVGで誤検知だと思っていましたが、.exeファイルをVirusTotalに送信すると、この分析が得られます。
これは、61のスキャナーのうち11が問題を検出することを示しています。
TheHacker Trojan/Agent.am
NANO-Antivirus Trojan.Win32.Agent.elyxeb
DrWeb Trojan.Starter.7246
Yandex Trojan.Crypren!52N9f3NgRrY
Jiangmin Trojan.Agent.asnd
SentinelOne (Static ML) static engine - malicious
AVG SCGeneric.KTO
Rising Malware.Generic.5!tfe (thunder:5:ujHAaqkyw6C)
CrowdStrike Falcon (ML) malicious_confidence_93% (D)
Endgame malicious (high confidence) 20170503
Zillya Dropper.Sysn.Win32.5954
今、これらの他のスキャナーは私が以前に聞いたものだとは言えません...しかし、それでもただAVG誤検知を与えるだけではないのではないかと心配しています。
問題の.exeファイルを分析のためにAVGに送信しました。検出を試みていると思われるものは何でも取り消されることを願っています。
PyInstallerを使用して作成した.exeランチャーがトロイの木馬と見なされないようにするために、他にできることはありますか?
ご意見ありがとうございます。
問題のファイルを https://secure.avg.com/submit-sample のAVGの「誤検出を報告する」ページに送信できました。彼らは私のファイルを分析し、ウイルスがないと判断したという応答をかなり迅速に受け取りました(正確な長さは覚えていませんが、1日未満でした)。彼らは、それがもはや偽陽性を引き起こさないように彼らのウイルス定義を調整したと言いました。定義を更新しましたが、それでもトリガーされていたので、ウイルス定義バージョンを再度連絡しました。バージョンが十分に高くなかったと聞きました。ローカルサーバー。しかし、1日以内に適切なバージョンの定義が得られ、誤検知はトリガーされなくなりました。
したがって、AVGで誤検知が発生した場合は、このソリューションをお勧めします。問題の解決策をかなり迅速かつ簡単に取得できます。
VirusTotal からPyinstallerで常にいくつかの誤検出を受け取っていました。これは私がそれを修正した方法です:
Pyinstallerには、さまざまなOS用のコンパイル済みブートローダーバイナリが付属しています。マシンで自分でコンパイルすることをお勧めします。マシン上ですべてが一貫していることを確認してください。 Windows 64ビットの場合、Python 64ビット。Windows用のPyInstaller 64bitをダウンロードします。Python
https://wiki.python.org/moin/WindowsCompilers
VSを使用して、マシンでPyinstallerのブートローダーをコンパイルします。 DownloadedPyinstallerFolder\PyInstaller\bootloader\Windows-64bitのrun.exe、runw.exe、run_d.exe、runw_d.exeを自動的に更新します。詳細については以下を確認してください。
https://pythonhosted.org/PyInstaller/bootloader-building.html
最後にPyinstallerをインストールします。 Pyinstallerディレクトリ内で実行
python setup.pyインストール
3.4からPyInstaller 3.1.1に戻すと、私の側で(少なくとも一時的に)同様の問題が解決されました。
@boogie_bullfrogが言ったように、以前のバージョンに戻すことが解決策になる可能性があります。ただし、いくつかのデータ(写真やアイコンなど)を保存するために* .specファイルを使用しました。私は最新の3.5バージョン(2019年8月)を持っていましたが、アプリをコンパイルすると3.1.1に移行するとエラーが発生しました(おそらくPython 3.7)をサポートしているため)。
したがって、現時点で最も簡単な解決策は.4へのダウングレードです
Pyinstaller 3.5からの仕様をサポートし、onefile-appはWindows 10組み込みファイアウォールで検出されませんでした