[F16_webhack] POST #2 資工三乙 403262631 蕭人豪

XSS (cross site scripting)

XSS是一種注入式攻擊,利用網站輸入的漏洞來插入html 或是 前端腳本語言,來達到攻擊目的。可以藉此取得session、cookie及更高的使用者權限。

基本在防禦XSS攻擊時,我們可以剪掉使用者輸入含有html tag的部分,並刪除任何非法或不屬於該輸入部分該有的內容,例如在輸入時,可能可以限制使用者輸入英數字,且不含其他符號。

 

CSRF (Cross-Site Request Forgery)

也就是跨網站丟出假請求的一種攻擊手法,藉由使用者的動作送出非使用者原意的事情。可能利用郵件寄加入過參數的url給被攻擊者,當使用者點擊時,就可能受到攻擊。攻擊者也可能在網頁中藏有看不見的點擊動作,在使用者沒有發現的情況下竊取使用者的資料。

CSRF的防禦方式是提供服務方在收到使用者請求時,再次確認使用者連結來源,或是使用者的重要個人資料不單純保留在cookie
而身為使用者也應該確認連結來源的正確性。

 

SQLI (SQL injection)

資料庫隱碼攻擊,和XSS一樣是一種注入式攻擊但主要是針對調用資料庫時的攻擊。在使用者輸入框注入SQL指令,藉以取得資料庫的各種資料、權限。

防禦SQL injection 的方式是要驗證使用者輸入的字串,是否含有危險字元(例如單雙引號、括號或註解符號),並刪除或取代他。又或者盡量將使用者輸入的字串放入SQL中。

 

總之,不要相信使用者。