經得起原始碼資安弱點掃描的程式設計習慣培養(四)_2.Injection注入攻擊_SQL Injection_In語句正確參數化套入

 接續前幾篇系列










之前已經有修正過SQL Injection的經驗了是在針對order by情境
而這次遇到舊專案是在於In 一些參數的動態組字串的問題引發白箱弱掃


雖然前人已經有改用參數化方式但仍然會引發Injection風險


首先前人寫一段回傳DataSet給外面資料DataBind的dal函數

在外部呼叫時候
他傳入參數的準備處理比較容易有風險
用字串橫線分割
但傳入到function仍需要轉回成陣列或集合的型別


也會有多此一舉
所以其實在function設計上傳入參數一開始就指定傳入類似List之類的集合型別就好了


再針對In裡面要傳進的參數先prepare好一個condition string



如此可降低一些被弱掃認為是有風險的寫法
少點動態組字串問題






留言

這個網誌中的熱門文章

SAP物料主數據(Material Master Data)

何謂淨重(Net Weight)、皮重(Tare Weight)與毛重(Gross Weight)

外貿Payment Term 付款條件(方式)常見的英文縮寫與定義