2016-08-04 14 views
0

私はいくつかのプロジェクトでJquery Ajax呼び出しを使用しています。これらのサーバーへの呼び出しが安全でないかどうか疑問に思っていますか?ユーザーは、彼がサーバ・メソッド名とパラメータ名を含め、このコード全体を見ることができ、それはハッカーのための機会を提供し、ブラウザのソースをチェックする場合は、次のようなもの、Jquery Ajaxのセキュリティ上の懸念

$.ajax({ 
      method: "POST", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      url: "/CMSWebParts/vline/Serviceupdates/ServiceUpdate.aspx/EditPlannedDisruption", 
      data: '{"id":"' + id + '"}', 
      success: function (res) { 
      $("#hdnOverrideId_PlannedDisruption").val(res.d.PlannedDisruptionId); 

       $("#edTime2_PublishPlanned").val(res.d.pubtime2); 
       if (res.d.Proposed) { 
        $("#chkProposed").prop("checked", true); 
       } 

       if (res.d.Active) { 
        $("#chkActive").prop("checked", true); 
       } 

       if (res.d.LinkedOverrideId || res.d.LinkedOverrideId != "null") { 
        $("#btnlinkedOverride").hide(); 
        $("#linkedOverride").hide(); 
       } 

      } 

     }) 

を考えてみましょう。

ここに記載されていないセキュリティ対策はありますか?

+1

あなたの考え方によります – madalinivascu

+0

PHP Uでは、セッションまたは$ _COOKIEの存在条件を使用してajaxの応答を取得できます –

答えて

3

あなたが心配する必要があるのは、サーバーに送信するデータと、サーバーから受信したデータを暗号化することだけです。あなたは、ブラウザ上でのコード検査のために何もできません。

少し説明しましょう。誰かがあなたのウェブページにアクセスしたとき、あなたはすでにあなたがブラウザで動くように設計したものすべてを持っています。あなたはこれについて何もすることはできません。あなたはそれを少しでも気にしないようにすることができます。しかし、誰かがあなたのクライアント側のコードにアクセスできるようにしてください。

本当の問題は、ワイヤを通過するデータです。ハッカーがブラウザのコードを検査した場合、(あなたが間違いをしない限り)多くの有益な情報を得ることはできません。確かに、彼らは要求がどこに行き、どのパラメータが様々なエンドポイントにあるのかを見ることができます。しかし、適切に保護されたバックエンドは、適切な認証と承認なしでこれらのエンドポイントに要求を送信することさえできません。

ハッカーはまた、キャプチャに興味があります人々の詳細。非常に明白なケースはユーザー名とパスワードです。適切な暗号化なしにこのデータを電線で送信すると、そのが実際の問題です。

要するに、ブラウザで実行されているソースコードを保護するためにできることはあまりありません。利害関係者は既に必要なものを持っており、JSは難読化に役立たない。あなたは、ワイヤーを通過するデータを安全にすることにもっと関心があるはずです。

1

ユーザがブラウザのソースを確認した場合、彼は、サーバーメソッド名とパラメータ名を含め、このコード全体 を見ることができ、それはハッカーのための 機会を提供しています。

はい、攻撃者は、外部の観点からアプリケーションがどのように動作するかを知ることができます。

これは、ユーザーがアプリケーションサーバーとブラウザとの通信方法を操作することができたにもかかわらず、アプリケーションが安全であることを確認する理由です。

あなたは防ぐ必要があります。

  • 攻撃者は、URL、メソッドおよびパラメータが渡されている知っているにもかかわらず、サーバーへのアクセスを得ます。
  • アプリケーションを使用して他のユーザーをターゲットとする攻撃者(例:ストアドXSS)。
  • ブラウザを使用してアプリケーションの他のユーザーをターゲットとする攻撃者(XSS、CSRF、その他のクロスオリジン攻撃を反映 - 例:Same Origin Policyを参照)。
  • 攻撃者は、自分のアカウントで与えられた特権を悪用します。
  • 他にも数多くの攻撃ベクトルが利用されています。

ここには何かセキュリティ対策がありますか?

OWASP Top 10をチェックして、アプリケーションを保護する脆弱性の起点を確認してください。

関連する問題