0

現在、サイトのクリーンアップに非常にイライラする問題があります。同じホスティング スペースに、Umbraco (ASP.NET) と Blab Lite (PHP チャットルーム) をインストールしました。前者は SQL 2005 と通信し、後者は MySQL 5 と通信します。

私の Umbraco サイトには、エントリー フォーム付きのゲストブックがありました。ポストバック時に Akismet チェックを行い、Akismet によってスパムとして確認された場合、対応する Umbraco ドキュメントの作成/保存をスキップします。

しかし、最近、自分のゲストブック ノードの下に作成されたエントリがスパムとして確認されるようになりましたが、ドキュメントはまだ保存されています。「display:none」を使用してフォームを非表示にするところまで行きましたが、これらのエントリはまだ作成されています! Umbraco ドキュメント イベント ログへのログ記録を含めるように DLL を変更しましたが、何らかの理由で、これらを作成してもログへのエントリがトリガーされません。別のアセンブリで Document.BeforeSave イベントのイベント ハンドラーを作成しましたが、このイベント ハンドラーはこれらのエントリの保存をキャッチしていません。

スパマーがどのようにしてこれらのエントリを作成できるのか、私は本当に困惑しています。これを行う方法と、この種の攻撃を防ぐためにサイトを保護する方法を知っている人はいますか?

ありがとう、ダニー。

4

3 に答える 3

1

これは古い投稿のようですが、回答済みとしてマークされていないので、試してみます。私はしばらく Umbraco を使用していないので、最新バージョンでこれが修正されたかどうかはわかりませんが、問題は Umbraco 自体にあります。Document.BeforeSave() は、ノードが作成された後に起動されるため、スパム フィルターが機能していません。フォームを非表示としてマークしても機能しません。これは、ボットがソース コードを見て、見つけたフォーム フィールドとパターン マッチするだけだからです。Umbraco 問題の詳細については、こちらをご覧ください。

http://forum.umbraco.org/yaf_postst9312_BeforePublish-and-BeforeSave-Event-Handlers.aspx

私が言ったように、私は何年も Umbraco を使用していませんが、うまくいけば、修正を見つけたとしても誰かを助けるでしょう.

ポール

于 2010-09-20T01:40:14.653 に答える
0

はい、イベントリスナーは実際に機能しています。これにより、ここで何か他のことが奇妙だと思うようになりました。私はついに思い切って、目の細かい櫛ですべてを通り抜けました。最初に、標準の Umbraco 4 ディストリビューションと私のホストの bin フォルダーの内容を比較しました。それぞれを新しいもので上書きするのが最も簡単だと思いました。次に、インストールした各 Umbraco パッケージを調べて、DLL も正常であることを確認しました。うーん、Umbraco または私がインストールしたパッケージの他のものと一致しない DLL が 1 つありました - EO.Web.dll!

EssentialObjects による合法的なものがあるようですが、Umbraco、私のコード、またはパッケージのいずれかが実際にそれを使用しているとは思いません! 私はそれを削除しましたが、Umbraco インストールのすべての部分がまだ機能しています! ascx マークアップでフォームの可視性を設定したので、フォームはレンダリングされません。これが問題のマルウェアであるかどうかを確認します。

于 2009-12-05T11:11:25.557 に答える
0

私の推測では、Umbraco ドキュメントの作成/保存をスキップするバグがコードにあると思われます...ただし、Document.BeforeSave イベントがトリガーされないのは奇妙です。イベントリスナーも機能していることを確認していますか (つまり、スパム以外のエントリの保存を登録していますか?)

ちなみに、「display:none」を設定してもスパマーは止められません。ボットは一般的に CSS を無視するからです。

于 2009-12-04T01:57:53.833 に答える