台灣最大程式設計社群網站
線上人數
899
 
會員總數:246136
討論主題:189720
歡迎您免費加入會員
討論區列表 >> AJAX / JSON / jQuery >> 請問有什麼方法可以保護post和get的參數呢?
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
請問有什麼方法可以保護post和get的參數呢?
價值 : 100 QP  點閱數:4880 回應數:8
樓主

lok
門外漢
0 9
266 21
發送站內信

如題

因為我用ajax去post或get更改database的資料
在firebug里可以清楚的看到傳送的參數值
感覺很不安全~

請問有什麼方法可以保護這些資料不被使用者看到呢??

謝謝

搜尋相關Tags的文章: [ ajax ] , [ get ] , [ post ] , [ wcf ] ,
本篇文章發表於2009-05-09 18:51
1樓
回應

Sdany
捐贈 VP 給 Sdany 檢舉此回應
試試 SSL
本篇文章回覆於2009-05-09 20:49
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

Hunt
檢舉此回應
自己寫個編碼程式
本篇文章回覆於2009-05-09 21:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

Mark Shu
捐贈 VP 給 Mark Shu 檢舉此回應
將參數值自訂個編碼規則
接收時在還原就可
例如 http://itgroup.blueshop.com.tw/inmarkblue/markshu?n=convew&i=1419
本篇文章回覆於2009-05-09 22:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

gipi
檢舉此回應
http://www.purecs.net/thread/topic808_1.aspx
這邊有幾個加解密的程式可以參考,原則上您可以直接使用,若擔心別人使用相同的解密方法來解碼,您可修改一下您的秘鑰。
本篇文章回覆於2009-05-10 10:56
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

Sdany
捐贈 VP 給 Sdany 檢舉此回應
我不確定 ssl 可以防制 firebug

#3 #4 我想不太可行

你們所提供的都是使用元件或伺服端所用的程式寫法

對 AJAX 而言,使用 Script 來跑應該是行不通
若沒先對 Script 加密的話,
把字串加密,是很容易被破解的 (逆追蹤)

應該要先對 AJAX (Script) 加密
在 Script 中對要傳送的字串加密

#3 沒載點... 而且會有元件安裝的問題

當然 script 加密,也是能被解密啦~
本篇文章回覆於2009-05-10 15:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
回應

gipi
檢舉此回應
經#5一提我才想到,AJAX要防止post參數被竊取或竄改是比較難的,因為就算您在javascript中加密,他還是可以在您加密前先修改完,這樣即使用了SSL應該也沒用了。

想起來比較合適的方法就是Server端驗證client端的動作了,舉個例子:
1.使用者想要刪除某筆資料:在Server端驗證使用者是否真的具有刪除這筆資料的權限
2.使用者想要查詢某些資料:在Server端驗證使用者是否真的具有查詢這些資料的權限
......

post的參數值一般只傳遞必要的內容就好,例如key值,到Server端再去取得其他的內容,
搭配資料的驗證,以避免您所擔心的問題。
本篇文章回覆於2009-05-10 17:19
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

lok
檢舉此回應
謝謝大家的回答

編碼不是我要的, 因為我擔心的是
post跟get這個動作被"有心"的使用者亂搞

例如他們把http://xxxx/deleteData?id=sdfsfsf加到可以跨domain的src屬性裡(比如圖片)
讓已登入有http://xxxx/deleteData?id=sdfsfsf權限的使用者"不小心"連到這張圖來刪除使用者的資料等等

前面大大提供的編碼好像不能解決這個問題, 因為發送到server前的編碼是在client端做的(ajax), 有漏洞.

不過仔細想了一下, 編碼從server端做了發給client端
如驗證圖片的方式, 好像是唯一的解

是嗎?
本篇文章回覆於2009-05-10 20:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
回應

gipi
檢舉此回應
驗證圖片的目的應該不在這邊,就我所知他的目的是在防止暴力攻擊法,避免有人寫了程式不停的送出request,導致系統DoS,
但可不可以解到您的問題我還是有點疑惑,畢竟您不會將您的post參數當成驗證圖片的內容吧,如果會的話那驗證圖片的邏輯就有跡可尋了,仍不安全。

如您#7所述的狀況,我認為該由程式的架構面調整,使用者連到http://xxxx/deleteData?id=sdfsfsf就把該資料刪除了,那啟不是太危險了,建議還是回歸到基本的使用,確認使用者是按下某個按鈕才來執行刪除,並跳出警示訊息[確定刪除?],而不要直接呼叫某個url就可以刪除資料,這樣可確保使用者不會因為駭客的動作而做出某些非他所預期的動作。

參考看看。
本篇文章回覆於2009-05-10 22:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.