1

私はbeanstalkdpheanstalkを使い始めたばかりで、次の状況がセキュリティ上の問題であるかどうかに興味があります (そうでない場合は、なぜでしょうか?)。

最終的なワーカー スクリプトが SQL データベース クエリを取得して実行するためのジョブを含むキューを設計するとき、オンライン ユーザーがサーバーのポート 11300 にアクセスしてジョブを自分自身をキューに入れ、悪意のあるコードでジョブを実行させます。送信されるジョブ内にパスワードを含めることができると言われました。

しばらくすると、誰かが端末でいくつかの簡単なコマンドを実行してキュー内のジョブを取得し、パスワードを見つけて、パスワードを含むジョブを作成できることに気付きました。

telnet thewebsitesipaddress 11300 //creating a telnet connection
list-tubes //finding which tubes are currently being used
use a_tube_found //using one of the tubes found
peek-ready //see whats inside one of the jobs and find the password

これが発生せず、キューがハッキング/制御されないようにするにはどうすればよいですか?

前もって感謝します!

4

1 に答える 1

3

これらの状況は、Beanstalkd をファイアウォールの背後またはプライベート ネットワークに配置することで回避できます。

DigitalOcean(たとえば)は、同じ場所のサーバーからのみアクセスできるプライベートネットワークIPアドレスを持つサービスを提供します.

当社では 1 年以上 beanstalkd を使用していますが、まだこれらの問題は発生していません。

わかりましたが、プロデューサーが index.php というページで、誰かがそこに入力するとジョブがキューに送られるとしたらどうでしょうか。この状況では、サーバーはオープン ネットワークである必要はありませんか?

ブラウザはジョブ サーバーと通信する方法がなく、/あなた/が許可したリソース、つまり表示ページにアクセスするだけです。バックエンドのみがジョブ サーバーにアクセスできます。また、フロントエンドがバックエンドから分離されている特定の方法で Web アプリケーションを構築すると、潜在的なセキュリティの問題がさらに少なくなります。

于 2016-05-24T09:44:50.690 に答える