DjangoXSS攻擊

技術小阿哥發表於2017-11-28

一、什麼是XSS攻擊

XSS即跨站指令碼攻擊,XSS是一種經常出現在web應用中的電腦保安漏洞,它允許惡意web使用者將程式碼植入到提供給其它使用者使用的頁面中。 xss攻擊允許使用者注入客戶端指令碼到其他使用者的伺服器上。通常通過儲存惡意指令碼到資料庫,其他使用者通過資料庫獲取惡意指令碼,並在瀏覽器上呈現;或是使使用者點選會引起攻擊者javascirpt指令碼在使用者客戶端的連線來達到目的。但是xss攻擊可能發生在任意不可信的資料來源頭,例如cookie和web service。無論何時,只要資料在頁面內沒有充分地消毒(sanitized),就可能發生xss攻擊。

二、防止XSS攻擊的兩種方式

1、對單一變數進行轉義過濾。可以使用escape過濾器,無需轉義時使用safe過濾器

 PS: 把使用者輸入的資料以安全的形式顯示,那隻能是在頁面上顯示字串。

django框架中給資料標記安全方式顯示(但這種操作是不安全的!):

– 模版頁面上對拿到的資料後寫上safe. —-> {{XXXX|safe}}

– 在後臺匯入模組:from django.utils.safestring import mark_safe

把要傳給頁面的字串做安全處理 —-> s = mark_safe(s)

本文轉自 kesungang 51CTO部落格,原文連結:http://blog.51cto.com/sgk2011/2069048,如需轉載請自行聯絡原作者


相關文章