驗證和編碼

驗證是檢查輸入資料以確保形式完整的處理程序。Validation.Required 發現項目指出,從來源到接收槽的給定資料路徑上沒有發生驗證。驗證可能如同將資料限制在長度上限一樣簡單,也可能如同檢查名稱和位址的形式是否完整一樣複雜。驗證也可以檢查「SQL 注入」之類的攻擊,它會偵測出能夠啟用這些攻擊的無效字元序列。

編碼是將資料轉換成形式完整狀態的處理程序。Validation.EncodingRequired 發現項目指出從來源到接收槽的給定資料路徑沒有發生編碼。編碼可能如同字元跳出一樣簡單,也可能如同資料加密一樣複雜。編碼也可以跳出會導致「跨網站 Scripting」之類攻擊的字元,以防止這些攻擊。

當第一次掃描時,AppScan® 來源可能會將某個發現項目識別為可疑安全發現項目。當建立適用於特定來源的驗證或編碼常式時,如果從來源接收資料之後,未呼叫指定的驗證或編碼常式,AppScan® Source for Analysis 會將發現項目報告為明確(而不是可疑)。

評量會追蹤整個專案中之已知來源的資料。如果能夠將資料從已知來源追蹤到已知的接收槽,指定的驗證和編碼常式就可以確保不會出現以無界限的輸入資料來進行的惡意攻擊。