日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

android 访问服务器sql_XSS 攻击、CSRF 攻击、SQL 注入、流量劫持(DNS 劫持、HTTP 劫持)—— 浏览器安全

發(fā)布時(shí)間:2024/7/23 HTML 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 访问服务器sql_XSS 攻击、CSRF 攻击、SQL 注入、流量劫持(DNS 劫持、HTTP 劫持)—— 浏览器安全 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

今天看了 jsliang 大佬關(guān)于網(wǎng)絡(luò)安全的文章,為了加深一下印象,自己動(dòng)手寫一下。
主要參考文章:網(wǎng)絡(luò)安全 ——— jsliang
XSS攻擊
XSS(Cross Site Script)跨站腳本攻擊,指的是向網(wǎng)頁(yè)注入惡意代碼,并對(duì)網(wǎng)頁(yè)進(jìn)行篡改。在用戶瀏覽時(shí),從而獲取用戶隱私數(shù)據(jù)的一種攻擊方式。一般為 JavaScript 。

  • 竊取 Cookie 信息,模擬用戶進(jìn)行登錄,然后進(jìn)行轉(zhuǎn)賬等操作
  • 使用 addEventListener 監(jiān)聽(tīng)用戶行為,監(jiān)聽(tīng)鍵盤事件,竊取用戶的銀行卡密碼等。并發(fā)送到攻擊者的服務(wù)器
  • 通過(guò)修改 DOM 偽造假的登錄窗口,欺騙用戶輸入用戶名和密碼等
  • 生成浮窗廣告等
  • 修改 URL 跳轉(zhuǎn)到惡意網(wǎng)站
  • ....

防御 :

  • 輸入檢查:對(duì)輸入內(nèi)容中的 script 和 iframe 等標(biāo)簽進(jìn)行轉(zhuǎn)義或者過(guò)濾
  • 設(shè)置 httpOnly(后端): 設(shè)置此屬性可防止 JavaScript 獲取 Cookie, 只能在 HTTP請(qǐng)求過(guò)程中使用 Cookie
  • 開(kāi)啟 CSP 白名單 :即開(kāi)啟白名單,可以阻止白名單意外的資源加載和運(yùn)行 (參考:web安全csp白名單的弊端、開(kāi)啟CSP網(wǎng)頁(yè)安全政策防止XSS攻擊)

CSRF攻擊
CSRF(Cross—Site Request Forgery) 跨站請(qǐng)求偽造。簡(jiǎn)單說(shuō)一下自己的理解,不對(duì)的地方請(qǐng)指正。CSRF攻擊主要是利用用戶登陸過(guò)的網(wǎng)站生成的Cookie,也就是這個(gè)用戶的憑證,操控用戶,進(jìn)行轉(zhuǎn)賬等有利于攻擊者的行為。但并不是像XSS攻擊一樣竊取Cookie,攻擊者不知道Cookie的內(nèi)容,只是利用而已。 例子: 網(wǎng)站A為用戶正常瀏覽的網(wǎng)站,網(wǎng)站B為攻擊者的惡意網(wǎng)站。假設(shè)用戶已經(jīng)登錄網(wǎng)站A獲取到了Cookie,這時(shí)候用戶打開(kāi)網(wǎng)站B,這時(shí)候網(wǎng)站B運(yùn)行惡意代碼,請(qǐng)求訪問(wèn)網(wǎng)站A或者說(shuō)網(wǎng)站A某個(gè)api(例如網(wǎng)站A的轉(zhuǎn)賬api),通常是在用戶不知情的情況下。
防御:

  • 驗(yàn)證 Token:瀏覽器請(qǐng)求服務(wù)器時(shí),服務(wù)器返回一個(gè) token,之后每個(gè)請(qǐng)求都需要同時(shí)帶上 token 和 Cookie 才會(huì)被認(rèn)為是合法請(qǐng)求
  • 驗(yàn)證 Referer:通過(guò)驗(yàn)證請(qǐng)求頭的 Referer 來(lái)驗(yàn)證來(lái)源站點(diǎn),但請(qǐng)求頭很容易偽造
  • 設(shè)置 SameSite:設(shè)置 Cookie 的 SameSite,可以讓 Cookie 不隨跨站請(qǐng)求發(fā)出,但瀏覽器兼容不一

具體實(shí)現(xiàn)和原理參考:CSRF攻擊與防御
SQL注入
主要是通過(guò)往輸入框里面輸入 SQL語(yǔ)句,利用 SQL的語(yǔ)法識(shí)別機(jī)制,從而修改數(shù)據(jù)庫(kù)實(shí)際上運(yùn)行的SQL語(yǔ)句,以達(dá)到攻擊者的目的
例如: (假設(shè)前端沒(méi)有做用戶名和密碼的校驗(yàn)) 用戶輸入的用戶名:Kite OR '1 = 1'-- 用戶輸入的密碼:123456
預(yù)想執(zhí)行的SQL語(yǔ)句:SELECT * FROM user WHERE username='Kite' AND psw='123456'
實(shí)際執(zhí)行的SQL語(yǔ)句:SELECT * FROM user WHERE username='Kite' OR 1 = 1 --' AND psw='xxxx'
"--":是SQL的注釋代碼。也就是說(shuō) 1 = 1 后面的代碼無(wú)效。 結(jié)果就變成無(wú)論輸入的用戶名和密碼是否正確,都可以登錄。因?yàn)?1 = 1 肯定是為 true 。
防御:

  • 通過(guò)正則驗(yàn)證用戶輸入的內(nèi)容是否包含引起隱患的字符
  • 一般由后端來(lái)處理。

流量劫持
DNS 劫持
建過(guò)站點(diǎn)的朋友應(yīng)該都知道,需要域名解析,不然無(wú)法通過(guò)自己購(gòu)買的域名訪問(wèn)自己的服務(wù)器。域名解析,也就是通過(guò) DNS 服務(wù)器實(shí)現(xiàn)域名和服務(wù)器IP的映射,例如 http://kite1874.com 對(duì)應(yīng)的 IP 為 127.0.0.1。你訪問(wèn) http://kite1874.com 的時(shí)候,實(shí)際訪問(wèn)的是 127.0.0.1 這個(gè)IP地址對(duì)應(yīng)的服務(wù)器。實(shí)際上輸入 127.0.0.1 也可以正常訪問(wèn)站點(diǎn)。之所以需要使用域名進(jìn)行訪問(wèn),是為了方便記憶和SEO
DNS劫持,也就是通過(guò)篡改域名映射的IP,導(dǎo)致用戶訪問(wèn)的網(wǎng)站,變成攻擊者準(zhǔn)備的惡意網(wǎng)站。
例如:

  • 篡改路由器 DNS 配置。
  • 篡改 Hosts 文件貌似也可以做到(自己腦補(bǔ)的)
  • 網(wǎng)絡(luò)供應(yīng)商可以修改,如果有意這樣做的話。
  • ...

HTTP 劫持
大家都知道,HTTP 請(qǐng)求是明文的。而 HTTP 劫持主要是篡改請(qǐng)求的內(nèi)容。例如:你打開(kāi)一個(gè)網(wǎng)頁(yè),請(qǐng)求返回一個(gè)HTML文件,然后有意者修改這個(gè)HTML,往里面插了個(gè)小廣告,然后再返回給你。廣告還算小事,要是返回一個(gè)表單讓你輸入賬號(hào)密碼呢?你全然不知,還以為這是原來(lái)網(wǎng)站上的表單呢
防御:

  • HTTP 傳輸是明文,所以需要給它加密。也就是 HTTPS 協(xié)議。需要申請(qǐng) SSL 證書。

來(lái)自阿怪自己的博客 —— XSS攻擊、CSRF攻擊、SQL注入、流量劫持(DNS劫持、HTTP劫持)—— 瀏覽器安全 - 阿怪的小破站

總結(jié)

以上是生活随笔為你收集整理的android 访问服务器sql_XSS 攻击、CSRF 攻击、SQL 注入、流量劫持(DNS 劫持、HTTP 劫持)—— 浏览器安全的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。