2010-01-06 50 views
0

我有一個使用框架的網站。是否仍有可能從瀏覽器中爲某人使用地址欄製作其中一個框架的發佈數據?其中2個框架是靜態的,另一個框架具有使用post進行通信的php頁面。它似乎不可能,但我想確定。是否有可能在使用框架時篡改發佈數據

回答

3

不,這是不可能的POST數據從地址欄。您只能通過向URL添加參數來啓動GET請求。 POST Body不能以這種方式附加。

無論如何,它很可能發送POST請求到您的Web服務器的框架中的頁面。 HTTP is just the protocol與您的瀏覽器和網絡服務器相互交談。 HTTP對幀或HTML一無所知。該框架中的頁面具有URI,就像任何其他頁面一樣。當你點擊一個鏈接時,你的瀏覽器詢問服務器是否對該URI有。服務器將檢查它是否具有該URI的某些內容並作出相應響應。它不知道它會返回什麼

使用諸如TamperData for FirefoxFiddler for IE之類的工具,任何人都可以修改HTTP請求輕鬆發送到您的服務器。

+0

我最喜歡你的答案,但它不完全回答它。這些頁面是用於內聯網的,所以我並不擔心地址欄之外有工具的用戶。我想避免的一種情況是,他們可以在地址欄中做一些事情,比如view_form?id = 5,然後調出那個頁面,而不需要進入view_form.php頁面的表單 – 2010-01-06 19:28:15

+0

這聽起來像你不相信你需要驗證你的輸入。只要意識到在某些時候,有人會想出一個想法來處理你的表單,而且你會看起來很糟糕。 – notJim 2010-01-06 19:31:15

+0

沒有輸入在php應用程序中驗證。我不想要的是喬吹用戶輸入獲取數據到網址的地址欄,並試圖偷偷摸摸他們不應該的東西。使用框架,您無法從地址欄中看到框架中的頁面。 – 2010-01-06 19:40:24

0

也許不是來自瀏覽器,但他們仍然可以捕獲請求(修補它)並將其轉發到提供的目的地,並使用burp代理等工具。

1

POST數據無法添加到地址欄中。

您應該經常檢查&清理您在PHP代碼中獲得的所有數據,因爲任何人都可以將數據發佈到您的所有頁面。

不信任頁面外部的數據。清理它&檢查它。

0

要回答你的問題:不,不可以使用地址欄發送發佈數據。

但是有可能發送發佈數據到快照中的任何網址。例如使用cURL或Firefox擴展。因此,無論是POST還是GET還是UPDATE或其他,無論如何都要確認並清理您收到的所有數據。

這不是iFrame或php的具體內容,所以應該在每個web應用程序中考慮它。永遠不要依賴任何人發送的數據是正確的,有效的或安全的 - 尤其是當用戶發送時。

2

無論來源和/或環境如何,$_REQUEST陣列中的任何數據均應視爲平等武裝且危險。這包括$_GET,$_POST$_COOKIE

0

是的,他們絕對可以使用像Firebug這樣的工具,顯然還有像Gordon列出的更專業的工具。此外,即使他們無法在您的網站的瀏覽器中執行此操作,他們也可以始終創建自己的表單,或者通過腳本或命令行工具提交發布數據。

絕對不能依賴客戶端來保證安全。

+0

,正如我在下面的答案中所評論的那樣。用戶在使用IE的Intranet上沒有任何你所指的工具。因此將問題限制在僅用於地址欄 – 2010-01-06 19:38:40

+0

構建一個簡單的HTML表單,無論用戶想要提交給您的網站,這完全是微不足道的。他們需要的只是一個文本編輯器。 – notJim 2010-01-06 20:27:44

+0

如果他們無法將其上傳到服務器,他們將如何獲得apache的服務? – 2010-01-07 04:47:44

相關問題