《阿里巴巴Java開發手冊-v1.1》解讀(二)安全規約

 1.   【強制】隸屬於用戶個人的頁面或者功能必須進行權限控制校驗。  

     說明:防止沒有做水平權限校驗就可隨意訪問、修改、刪除別人的數據,比如查看他人的私信 

     內容、修改他人的訂單。  

 

2.   【強制】用戶敏感數據禁止直接展示,必須對展示數據脫敏。  

     說明:查看個人手機號碼會顯示成:158****9119,隱藏中間4 位,防止隱私泄露。  

 

 3.   【強制】用戶輸入的SQL 參數嚴格使用參數綁定或者METADATA 字段值限定,防止SQL 注入, 

     禁止字符串拼接SQL 訪問數據庫。  

 

4.   【強制】用戶請求傳入的任何參數必須做有效性驗證。  

     說明:忽略參數校驗可能導致:  

          page size 過大導致內存溢出  

          惡意order by 導致數據庫慢查詢  

          任意重定向  

          SQL 注入  

          反序列化注入  

          正則輸入源串拒絕服務ReDoS  

        說明:Java 代碼用正則來驗證客戶端的輸入,有些正則寫法驗證普通用戶輸入沒有問題, 

        但是如果攻擊人員使用的是特殊構造的字符串來驗證,有可能導致死循環的結果。  

 

 5.   【強制】禁止向HTML 頁面輸出未經安全過濾或未正確轉義的用戶數據。  

 

 6.   【強制】表單、AJAX 提交必須執行CSRF 安全過濾。  

     說明:CSRF(Cross-site request forgery)跨站請求僞造是一類常見編程漏洞。對於存在 

     CSRF 漏洞的應用/網站,攻擊者可以事先構造好URL,只要受害者用戶一訪問,後臺便在用戶 

     不知情情況下對數據庫中用戶參數進行相應修改。  

 

7.   【強制】在使用平臺資源,譬如短信、郵件、電話、下單、支付,必須實現正確的防重放限制, 

     如數量限制、疲勞度控制、驗證碼校驗,避免被濫刷、資損。  

     說明:如註冊時發送驗證碼到手機,如果沒有限制次數和頻率,那麼可以利用此功能騷擾到其 

     它用戶,並造成短信平臺資源浪費。  

 

 8.   【推薦】發貼、評論、發送即時消息等用戶生成內容的場景必須實現防刷、文本內容違禁詞過 

     濾等風控策略。  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章