1. 程式人生 > >FORM表單安全之使用隱藏域(type="hidden")的注意事項

FORM表單安全之使用隱藏域(type="hidden")的注意事項

最近我測試了一些帶有表單中帶有隱藏域的一些網站,發現一個比較普遍的BUG!

一、BUG表述

表單程式碼如下

<form id='' action='' method=''>
    <input type='text' name='' value=''/>
    //使用者在這裡輸入資訊
    <input type='hidden'  id='' value =''/>
    //隱藏域攜帶一些值
    <button type='submit'>提交<button/>
<form/>

 知道前端的同學們都知道,瀏覽器當中可右擊檢查程式碼,在原始碼中雙擊value就可以手動更改value的值,更改成功過後如果不新增校驗程式碼,那麼我將這個錯誤的值通過表單上次後,將對後臺資料造成嚴重的隨時

。如下圖:

二、BUG解決方案

1、如果表單中隱藏域的值在整個專案中都有使用,可以考慮通過session,在action後臺處理介面中,直接讀取session的值,而不是通過前臺的隱藏域讀取。

2、在表單中,不得不使用隱藏域的時候,我們需要新增js校驗檔案,對隱藏域的值進行校驗,檢驗通過後才允許提交表單。