看板 java 關於我們 聯絡資訊
※ 引述《lur (垃圾東西)》之銘言: : 如提,因為客戶的白箱測試掃出這些hardcode password的critical : 雖然我覺得這應該只是一個參數 : 但是我真的不知道怎麼解釋才比較好懂 : 如果有人願意幫忙的話,我再把程式碼寄到站內信 : 拜託大家了Q_Q 先參考OWASP或CWE的相關文件 了解什麼是hard coded password和它的risk https://www.owasp.org/index.php/Use_of_hard-coded_password https://cwe.mitre.org/data/definitions/798.html https://cwe.mitre.org/data/definitions/259.html 解決方法大概如下 1.不要把使用者/密碼等相關設定 hardcode在程式碼中 這種做法會讓有辦法接觸或反編譯的人在程式碼上拿到關鍵的密碼 管理和開發人員 應該分層管理才對 2.把username和password加密,不要用明碼表示 3.不管是把密碼存在資料庫或屬性資源包上 鍵值的部分不要有關鍵字 Ex: config.properties ... SERVER.USER_NAME=XXX SERVER.PASSWORD=XXX ... 不建議在鍵值的命名上,讓人一目了然這個參數就是密碼 這做法等於告訴他人:你的密碼就是儲存在這個地方 相關的關鍵字大概是:password, pwd, pw...etc 這幾個關鍵字都會被程式碼分析程式歸類為有風險的keywords 個人的經驗大致如上 有不足的部分煩請大家補充 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.96.116.21 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1512355628.A.50B.html
KeyFSN: 不覺得3有特別意義 反而會增加後續維護困難度 12/04 14:32
Soarwind: 密碼變數不用password那要用什麼? 變數不就是要有意義? 12/04 21:17
jej: fortify這些codereview軟體經常有令人驚訝的警告 要問為甚 12/04 21:21
jej: 還是只能問原廠 還曾遇過Singleton被當資安問題 囧 12/04 21:23
IhateOGC: 如果只是預設密碼我是覺得還好 12/09 21:01
ssccg: 怎麼會不知道為什麼,解釋都有寫啊,只是認不認同它的規則 12/09 22:32
ssccg: 當然有時就是單純的誤判 12/09 22:32