Re: [請益] 網站資安需注意哪些?

看板PHP作者 (正太控)時間6年前 (2018/05/28 18:43), 編輯推噓4(406)
留言10則, 4人參與, 6年前最新討論串2/4 (看更多)
※ 引述《freebug (Freebug)》之銘言: : 除了需注意 : 1) CSRF : 2) Code injection : 其中又包含: : ◆ SQL injection : ◆ HTML / JS injection : ◆ PHP injection : 3) HTTP response splitting (但新版的PHP已經將多行header給禁止了,所以好像不必 : 擔心這點) : 還有其他需要注意的點嗎? : 目前在下知道的就這些… 之前忘記在哪聽過一句話:資安不只是意識,還有實踐。 有很多東西其實要自己實踐後才會知道,舉例來說: 1. 像是 XSS 是什麼?會帶來什麼危險?用 htmlentities 跟 htmlspecialchars 這兩個函式來防禦有什麼差別? 2. LFI 是什麼?除了被 access 到 /etc/passwd 之外,有沒有可能讓 source code 洩露? 3. SQL Injection 的原理是?用 PDO 真的可以一勞永逸嗎? mysqli_real_escape_string 真的有助於防止 SQL injection 嗎? 4. 什麼是 SSRF?會讓系統服務遭受什麼樣的風險? 5. extract 這個函式很好用,但會不會不知不覺間被拿來提權? 6. serialize 跟 unserialize 的使用時要注意什麼? 7. Hash 用戶的密碼是用什麼演算法好呢?bcrypt ?argon2?它們又有什麼差別? 8. json_encode 跟 json_decode 有什麼潛在問題嗎?有沒有可能造成 DoS? 9. 什麼是 XXE?什麼情況可能會出現? 10. 什麼是 race codition?在 PHP + MySQL 這樣的經典組合中有沒有可能出現?要如何解決? 11. 如何正確取得使用者的 IP?$_SERVER['REMOTE_ADDR']?如果商業邏輯伺服器是放在 LoadBalancer 之後呢? 當然還有很多很多,不過因為晚餐點的義大利麵上菜了,就不繼續舉例下去囉 XD。 ----- Sent from JPTT on my iPhone -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.136.239.233 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1527504207.A.92A.html

05/29 21:01, 6年前 , 1F
推 有幾個都沒認真想過
05/29 21:01, 1F

05/31 13:46, 6年前 , 2F
3. PDO不行嗎? 還是說PDO對特殊的utf8字元有問題?
05/31 13:46, 2F

05/31 17:31, 6年前 , 3F
PDO不能解決注入,解決注入的方法是「不要組SQL」
05/31 17:31, 3F

05/31 17:33, 6年前 , 4F
例如 prepared statement。
05/31 17:33, 4F

05/31 17:34, 6年前 , 5F
例如 prepared statement + bind 參數
05/31 17:34, 5F

05/31 17:54, 6年前 , 6F
PDO 仍然有 query 這個 method,自組 SQL 的話仍會中獎
05/31 17:54, 6F

05/31 17:56, 6年前 , 7F
另外,prepare 這個 method 在預設設定之下是模擬 prep
05/31 17:56, 7F

05/31 17:56, 6年前 , 8F
are statement 的 (為了相容性),而不是真的用資料庫的
05/31 17:56, 8F

05/31 17:56, 6年前 , 9F
prepare statement feature
05/31 17:56, 9F

06/01 00:09, 6年前 , 10F
感謝回覆
06/01 00:09, 10F
文章代碼(AID): #1R2zrFag (PHP)
文章代碼(AID): #1R2zrFag (PHP)