0

インターネットを利用してサイト間でデータをやり取りするアプリを担当しているのですが、一部のお客さまが支払いに抵抗を感じているため、未払い者のサービスを遮断できる仕組みが必要です。ファイアウォールを使用してチェックをブロックする管理者から保護したいのですが、逆に、何らかの理由で会社の Web サイトが消えてアクセスできなくなることをある程度許容したいと思います。

私が想像しているスキームは次のとおりです。

server makes twice daily check to web page using a URL like:
http://www.ourcompany.com/check.php?myID=GUID&Code=MyCode

これは、関心のあるものを何も含まないか、GUID と値のいずれかを含む応答を返します。

GUID=0

このゼロは、サーバーが操作を停止する必要があることを示します。再び機能させるために、サーバーは、渡されたコードを変換する必要があると考えられる値と一致するまで、5 分ごとに同じ情報をチェックします。

このスキームは私には理にかなっていますが、実際の問題は、ブロッキングから保護する方法です。インターネットにアクセスする必要があることがわかっている場合、Web サーバーからの応答を取得できずに、どのくらいの時間操作を続ける必要があるでしょうか? 14 日間のようなもので、とにかくそれを停止するのが最善の方法ですか?

4

3 に答える 3

1

最終的に使用したソリューションは、私が提案したとおりでした。はい、ここで説明するツールを使用して倒すことはできますが、何もしないよりはましです。

アプリは、公開鍵暗号化を使用して暗号化された制御ファイルを含む Web サイトへのアクセスを毎日チェックします。メモリ内で復号化し、GUID が見つかった場合は、コードと一致する必要があります。操作を無効にするには、コードを 0 (ゼロ) に設定します。これは常に失敗します。無効にすると、2 分ごとにチェックして、迅速な復元を可能にします。サーバーに問題が発生した場合に備えて、1 週間は機能するコードを手動で生成するメカニズムもあります。

コードは、サーバーに接続せずに最大 14 日間許可しますが、これを意図的なブロックの試みと見なします。10 日後、サポートに連絡するよう求めるエラー メッセージが表示されます。

于 2009-08-31T14:29:50.937 に答える
0

この方法は非常に簡単に回避できます。ローカルのdnsサーバーを使用してwww.ourcompany.comをローカルマシンにポイントするか、httpプロキシを使用するだけです。その後、ユーザーはプログラムに対して必要な応答を返すことができます。

ユーザーがチェックを回避していないと仮定すると、確認なしで操作を継続する期間はビジネス上の決定であり、プログラミング上の決定ではありません。

于 2009-04-17T08:19:12.710 に答える
0

ユーザーは、OWASP WebScarab などのツールを使用してその場で値を変更し、セキュリティ モデルを覆すことができます。安全なチャネルの要求、公開鍵の比較など、より難しいものを含める必要があります。

于 2009-04-18T13:31:04.200 に答える