2014-08-31 41 views
-1

允許$ _REQUEST我有接受來自JavaScript的Ajax調用一個$_REQUEST並增加了後到DBPHP的安全性,只能從特定的URL

一個簡單的PHP腳本,但我需要確保只從JavaScript請求我域名是允許的,以防止有人向我的數據庫提交數千垃圾帖子。

我的問題是,我如何確保我的腳本只接受來自我的域名的$_REQUEST

謝謝

+1

這個問題根本沒有顯示任何研究工作 – Fabio 2014-08-31 13:32:57

+0

也許如果你可以告訴我我應該搜索哪種術語,那麼這將有幫助,我已經嘗試過研究,但是我的術語與零相關 – user2028856 2014-08-31 13:33:40

+0

如何「PHP ,安全發佈用戶驗證「? http://blackbe.lt/php-secure-sessions/ 或http://serverfault.com/questions/583884/apache-listen-only-on-specific-domain-not-ip 這一個會要求您根據自己的需要來調整它,但是可行。 還有: http://bobby-tables.com/php.html 可能有用 – ConnectedSystems 2014-08-31 13:38:47

回答

3

簡短的回答是:你不能。

聽起來像你需要對CSRF介紹常用的防禦(即隨機生成一個安全令牌,並將其存儲在cookie(或會話)以及HTML文檔中,你然後提交令牌你的請求的一部分,並將其與cookie中的一個進行比較,如果它們匹配,那麼它是來自用戶的故意發佈,而不是他們的瀏覽器被欺騙以使其他站點發出請求)。

雖然這不會阻止人們提交「數千垃圾帖子」。您還需要對用戶進行身份驗證,並在允許用戶通過之前檢查他們是否有權提交提交。

您也可以考慮包括速率限制檢查和垃圾郵件過濾。

+0

好的,另一種方式如何。由於我的PHP腳本通常只能通過來自我的站點的Ajax請求調用,所以我可以檢測到傳入的Ajax調用的URL,如果它與我的域不匹配,請不要執行任何操作 – user2028856 2014-08-31 13:40:27

+0

不,您不能。 (至少不夠可靠,值得使用)。 – Quentin 2014-08-31 13:41:10

+0

爲什麼它不夠可靠?任何信息對我來說真的很有用 – user2028856 2014-08-31 13:42:57