Yandexはサイト向けのウイルス対策ソフトウェアをリリースしました-Manul

Yandexの検索では、行きたいページが感染しているという800万件以上の警告が毎日表示されています。 多くの場合、サイトの所有者は、最悪の事態がすでに発生し、トラフィックが低下し、ユーザーが感染した場合にのみ、自分のサイトがハッキングされ、悪意のあるコードが配置される可能性があることを思い出します。



ウェブマスターが可能な限り迅速に問題に対応できるように、ここ数年、感染に関する警告をYandex.Webmasterに送信しています。 それらの中で、私たちは何をすべきかの詳細な指示を与え、そして最も難しいケースでは、私たちのサポートチームはウェブマスターを助けます。







ただし、常に最高のものが必要です。 感染したサイトの所有者と通信するときに発生する主な問題の1つは、サーバー側で感染源を見つけることです。 毎日数千のサイトがウイルスに感染しており、人間のデバイスにとって危険であるとマークしているYandexには、定期的に更新されるウイルスデータベースがあります。 そして、私たちのチームは、大規模なプロジェクト、つまりサイトのウイルス対策に成長したアイデアを思いつきました。 それで私たちはManulを作りました。それをオープンソースにすることに決めました。 これは、ウェブマスターがサイトに何が起こったのかを理解し、それを治すのに役立つユーティリティです。 カットの下で、それがどのように機能し、どのような問題を解決するかについて詳しく説明します。



サイトの感染は、そのハッキングだけでなく、その上にサービスコードが配置されているためにも発生する可能性があります。 これが人々にとって重要なサイトに起こるとき、それは所有者だけでなく傷つきます。



サポートチームは、ウェブマスターから毎日何十通ものメールを受信し、感染への対処を依頼しています。 しかし、原則として、外部からの感染の兆候のみが見られ、多くの場合、サーバー上で悪意のあるコードを検索する場所を正確に特定することはできません。 同様に、感染源が1か所のみにあることを保証することはできません。 したがって、感染の原因を除去する主な作業はサイト所有者の肩にかかっており、このため、復旧プロセスが遅れる可能性があります。 同時に、ほとんどの問題は単純ですが、たとえばCMSの古いバージョンや個々のコンポーネントの既知の脆弱性のために設計された大規模な感染であることがわかっています。



したがって、単純なツール、つまりサイトに関する構造化された情報を収集するウイルス対策ユーティリティを作成するというアイデアがありました。 その後、収集したデータを自分で分析するか、専門家に送信することができるはずです。 さらに、このようなスペシャリスト、およびサイトの処理にも関与しているスタジオまたは個々のスペシャリストになりたいです。必要に応じて、ウェブマスターが自分でこれを行うことができます。 そしてもちろん、治療プロセスを最初から最後まで自動化するために、ツールはヒーリングスクリプトを提供できる必要があります。 特に通常の場合。







これをどのように実現できるかを考え始めました。 これは、管理者アカウントへのアクセスを必要としない、簡単にインストールできるユーティリティであることは明らかでした。 YandexはWebマスターにWebサイトの感染について通知するため、このような感染の場合、ユーティリティをすばやくダウンロードしてインストールできれば十分です。また、治療の終了後、サーバーからウイルス対策フォルダを簡単に削除することもできます。



市場のサイト向けのウイルス対策ソリューションは既に存在していましたが、見たいものとは異なりました。使いやすく、誰でも開発および補完できる無料のオープンソースツールです。 ウイルス対策ユーティリティを作成する際に、 Revisiumと経験を交換することにしました



RevisiumのGrigory Zemskovは、サーバー側のサイトをクロールおよび処理する豊富な経験と、実用的なソリューションであるAi-Bolitスクリプトを使用しました。 私たちは知識と願いを組み合わせて、新しい何か、マヌルネコを得ました。



どのように機能しますか?



Manulのアーカイブは、たとえばFTP / SFTPを介してサイトのルートディレクトリに注がれ、そこで解凍されます。 このツールを使用したさらなる作業はブラウザを介して行われます。 スキャン時に、Manulはルートディレクトリとその下にあるすべてのファイルに関する情報を収集します。サイズ、最終変更日、ハッシュ量を計算します。 並行して、添付されたウイルス対策データベースによって各ファイルのマルウェアがチェックされ、次の3つのフラグのいずれかでマークされます。





チェックの完了後、Manulは受信したすべての情報をXMLレポートの形式で保存します。 疑わしいコードと悪意のあるコードスニペットもレポートに添付されます。







レポートを表示するための別のツール、Manul Log Analyzerがオンラインで利用可能です。 レポートを表形式で表示し、サイズ、変更日などの一連のプロパティでファイルをフィルタリングし、疑わしいコードのフラグメントを表示できます。 人気のあるCMSのさまざまなバージョンについて、アナライザーは自動的にホワイトリストを適用し、変更が認識されていない標準構成からファイルをすぐにフィルターします。 また、各ファイルの反対側にある[検疫]ボタンと[削除]ボタンをクリックすると、サーバーから悪意のあるファイルを削除するManul用のスクリプトを作成でき、疑わしいファイルは分析用に送信するためにアーカイブされます。 このスクリプトを実行するには、マヌルネコを開き、「治療」タブに移動します。







Manulは、機密データ(パスワードなど)へのアクセスを必要としません。 ファイルで実行されるすべてのアクションは、サイト所有者によって制御および確認されます。 サードパーティがツールを使用できないようにするには、初めてツールを起動するときにパスワードで保護する必要があります。 ユーティリティを使用する場合、サイトとユーザーに関するデータはどこにも自動的に送信されません。



このユーティリティはランタイム環境を必要とせず、脆弱なホスティングサイトでも実行されるように設計されています。 それでも、それを実行するには、特定の条件を満たす必要があります。PHPバージョンは少なくとも5.2で、ZipArchive、DOM、およびXMLモジュールが存在します。 Manulは、web_root / public_html仮想ホストディレクトリへの読み取りアクセスも必要です。



次は?



私たちは、どんなウェブマスターでも私たちの仕事を利用できるようにすることを決めました。 これを行うために、Yandex.Webmasterにアンチウイルスを配置し、サイトがウイルスに感染したという通知とともにその機能を常に思い出させます。



しかし、私たちはそこで止まらないことに決めました。 私たちは、すべての開発者が私たちのマヌルネコを使用するだけでなく、彼に新たな命を与える機会を持つことを望んでいます。 ManulはGitHubに投稿されたオープンソースプロジェクトです。 開発に参加したり、新しい機能を追加したり、ソースコードを自分のニーズに合わせたりすることができます。



All Articles