W11_防止 XSS


Posted by Christy on 2021-08-30

hw1 實作_3. XSS

  • 在別人的網站上執行 js 就叫做 XSS

  • 修補 XSS 漏洞

    • 推薦在顯示的時候做 escape,為什麼不在一開始使用者輸入時做呢?假時以後手機的 IOS 或者 Android 都要使用一樣的資料庫,那保持使用者輸入資料的原始資料會比較好

    • htmlspecialchars()

    • 所以我們要在任何使用者可以輸入的地方加上這個函式


如何防止 XSS 攻擊?

在這個範例中,我們在 utils.php 裡面建立一個函式叫做 escape,php 內建函式 htmlspecialchars()

function escape ($str) {
  return htmlspecialchars($str, ENT_QUOTES);
}
  • 在顯示的時候做跳脫,因為以後有可能其他手機 app 也會用到,應該保持使用者輸入的內容

  • 因此通常會在 index.php, login.php 等做跳脫,而不是在 handle_login.php 裡面做

  • 只要使用者可以輸入的地方,都必須要做這件事










Related Posts

[CSS] 切版眉角的部份

[CSS] 切版眉角的部份

React-[useEffect篇]- useEffect中的第二個參數dependency array以及搜索功能

React-[useEffect篇]- useEffect中的第二個參數dependency array以及搜索功能

[FE201] 前端中階:jQuery

[FE201] 前端中階:jQuery


Comments