Re: [問題] 請問程式碼的問題this.password=password

看板java作者 (是)時間7年前 (2017/12/04 10:47), 編輯推噓2(205)
留言7則, 5人參與, 7年前最新討論串2/2 (看更多)
※ 引述《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

12/04 14:32, 7年前 , 1F
不覺得3有特別意義 反而會增加後續維護困難度
12/04 14:32, 1F

12/04 21:17, 7年前 , 2F
密碼變數不用password那要用什麼? 變數不就是要有意義?
12/04 21:17, 2F

12/04 21:21, 7年前 , 3F
fortify這些codereview軟體經常有令人驚訝的警告 要問為甚
12/04 21:21, 3F

12/04 21:23, 7年前 , 4F
還是只能問原廠 還曾遇過Singleton被當資安問題 囧
12/04 21:23, 4F

12/09 21:01, 7年前 , 5F
如果只是預設密碼我是覺得還好
12/09 21:01, 5F

12/09 22:32, 7年前 , 6F
怎麼會不知道為什麼,解釋都有寫啊,只是認不認同它的規則
12/09 22:32, 6F

12/09 22:32, 7年前 , 7F
當然有時就是單純的誤判
12/09 22:32, 7F
文章代碼(AID): #1Q9BSiKB (java)
文章代碼(AID): #1Q9BSiKB (java)