6

カスタム ビルドの Web アプリケーションで使用されるブログ投稿のコメントを格納するための InnoDB テーブルがあります。

最近、コメントの自動増分主キー値が 1 ではなく 2 ずつ増加していることに気付きました。

また、最後のいくつかのコメンターのフットプリント署名 (例: ip、セッション ID、uagent 文字列など) を記憶するために使用される別の MySQL テーブルで、PHP セッションの名前が「viruskinq」で始まることに気付きました。常に 16 進数の md5 のような文字列になります。

Google は、「viruskinq」の結果を 2、3 しか得ていません。すべてトルコ語です。興味深いのは、約 1 年前に問題の Web サイトがトルコの悪党によって改ざんされたことです。(同じ会社がホストしている他の Web サイトも当時改ざんされていたため、私のアプリにセキュリティ ホールがあったため、攻撃者が成功しなかったことは 100% 確信しています。)

このサイトは、Linux を使用する共有ホスト上にあります。

サーバー自体がまだこれらのハッカーの影響下にある可能性があると思いますか? コメントの id 値を調べたところ、この倍増現象は今年の 5 月から存在していることがわかりましたが、改ざんはほぼ 1 年前に発生しました。

自動インクリメント値の奇妙な動作を説明する他の原因は何ですか? アプリケーションは変更されておらず、古いコメントでは、自動インクリメントされた主キーの値が適切です。

編集:ソリューションの概要

ホスティング会社から、自動インクリメント値が 2 倍になった理由は、マスター/スレーブ MySQL アーキテクトを使用しているためであり、この現象は正常であるとのことでした。

彼らはまた、さまざまなハッカーがサーバー、特に「セッション」を絶えず攻撃しており、それについては何もできないことを認めました.

荷物をまとめて、より良いウェブホストに移動したほうがいいと思います。

4

2 に答える 2

4

私は本当に、これがウイルスであることを疑っています。それが本当にその文字列で始まるセッション IDであるかどうかを再確認してください(これは確かに懸念の理由です)。私の推測では、これはブラウザでユーザー エージェント文字列を変更する方法を発見した子供であり、その結果はまったく無害です。

増分問題に関して。

  • まず、auto_increment_incrementmySQL サーバーの設定を確認します。何らかの理由で2に設定されたのでしょうか?

  • 次に、そうでない場合はDELETE、コメント システムがテーブルで実行するすべての操作を調べます。スパムと認識されたコメントは削除されますか? 削除をしばらくログに記録するか、ソフト削除に切り替えますか?

  • また、後続のコメントを自分で作成してみてください。同じ現象が発生しますか?mySQL を使用して手動でレコードを追加するとどうなりますか?

  • 送信されたコメントを挿入する PHP コードを調べて、この動作につながる可能性のあるものが何もないことを確認してください。

  • コメント システムを別のサーバーに移動してみてください。できればローカルのサーバーに移動してみてください。できれば新たにセットアップしたサーバーに移動して、そこで動作が持続するかどうかを確認してください。

于 2010-08-28T10:35:45.400 に答える
2

テーブルの自動インクリメント値が 2 に設定されているだけでしょうか?

参照: MySQL autoincrement column jumps by 10-Why?

于 2010-08-28T10:36:09.497 に答える