簡體   English   中英

如何保護來自黑客的php,jquery,ajax請求?

[英]How can I protect my php, jquery, ajax requests from hackers?

我通過jquery的ajax方法發送了很多數據,一個函數的例子是

$.ajax({
    url: retrive.php,
    type:     'POST',
    data:     data,
    success:  callback
});

問題是,任何人都可以查看源代碼,並查看將POST數據發送到的php文件的位置,因此您可以將瀏覽器指向那里並從URL獲取數據。 我會檢查數據以確保其數據類型正確,但是我根本不希望用戶能夠訪問該url。

我們如何防止直接訪問該URL?

無法阻止用戶導航到AJAX請求中的url顯示。 如果您沒有收到POST數據,您所能做的就是顯示一個錯誤。 您可能還可以使用AJAX請求設置一個自定義請求標頭來進行檢查。

由於現代瀏覽器附帶了許多檢查功能,因此這並不是完全可能的。 由於php是在服務器端執行的,因此很安全。 但是由於Jquery和Ajax是在客戶端執行的,因此可以查看。 您可以采取一些安全措施。

1.)檢查HTTP REFERER,以便我們可以防止來自不受信任來源的不必要的Ajax調用。

在PHP $ _SERVER ['HTTP_REFERER']; 可以用來檢查。 如果推薦人不是您的來源,則可以拒絕該請求。

2.)加密的網址。

可以對Urls進行加密,以使黑客無法獲取實際的頁面詳細信息。

3.)J​​avaScript混淆

4.)服務器端驗證

許多程序員跳過服務器端驗證,而僅依賴於客戶端驗證。 客戶端驗證通常使用javascript完成,並且可以在瀏覽器上禁用它。 客戶還可以使用檢查工具來更改JavaScript並執行故障。 因此,服務器端驗證是必須的。

5)正確的身份驗證和會話管理

這些是我們可以采取的一些反措施。無論如何我們都不能阻止黑客檢查或查看javascript代碼或ajax調用,但是我們可以通過拒絕所有不需要的請求來保護服務器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM