<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          「自檢清單」再來一打Web安全面試題(面試向)

          共 3502字,需瀏覽 8分鐘

           ·

          2021-02-05 15:48

          從胡子的長(zhǎng)度和憂郁的眼神我察覺到,面前坐著的這位面試官應(yīng)該有點(diǎn)東西,渾身上下流露著打過 CTF 的氣場(chǎng)。我像以往一樣,準(zhǔn)備花3分鐘的時(shí)間進(jìn)行自我介紹。在此期間,面試官面無表情但很有耐心的聽著我bilibala...

          我按照原定計(jì)劃順利地介紹(吹)完自己的項(xiàng)目經(jīng)驗(yàn),面試官露出了一絲淡淡的微笑看著我說:

          ?

          你覺得自己最擅長(zhǎng)的是什么?

          ?

          (我淡淡的回應(yīng)道:雖然是一名前端工程師,但是我對(duì)web安全很感興趣。)

          0.CIA三元組知道嗎?

          • 機(jī)密性(Confidentiality
          • 完整性(Integrity
          • 可用性(Availability

          (這三個(gè)東西一定要回答的干凈利落,不假思索)

          1.XSS攻擊是如何產(chǎn)生的?

          黑客在你的瀏覽器中插入一段惡意 JavaScript 腳本,竊取你的隱私信息、冒充你的身份進(jìn)行操作。這就是 XSS 攻擊(Cross-Site Scripting,跨站腳本攻擊)

          因?yàn)闉g覽器無法區(qū)分腳本是被惡意注入的還是正常的內(nèi)容,它都會(huì)執(zhí)行,況且 HTML 非常靈活,可以在任何時(shí)候?qū)λM(jìn)行修改。

          2.知道XSS有哪幾種類型嗎?

          (送分題)

          • 反射型 XSS (也叫非持久型)
          • 基于 DOM 的 XSS
          • 存儲(chǔ)型 XSS (也叫持久型 XSS)

          3.分別說一下它們的實(shí)現(xiàn)原理

          反射型:顧名思義,惡意 JavaScript 腳本屬于用戶發(fā)送給網(wǎng)站請(qǐng)求中的一部分,隨后網(wǎng)站又將這部分返回給用戶,惡意腳本在頁面中被執(zhí)行。一般發(fā)生在前后端一體的應(yīng)用中,服務(wù)端邏輯會(huì)改變最終的網(wǎng)頁代碼。

          基于DOM型:目前更流行前后端分離的項(xiàng)目,反射型 XSS 無用武之地。但這種攻擊不需要經(jīng)過服務(wù)器,我們知道,網(wǎng)頁本身的 JavaScript 也是可以改變 HTML 的,黑客正是利用這一點(diǎn)來實(shí)現(xiàn)插入惡意腳本。

          存儲(chǔ)型:又叫持久型 XSS,顧名思義,黑客將惡意 JavaScript 腳本長(zhǎng)期保存在服務(wù)端數(shù)據(jù)庫中,用戶一旦訪問相關(guān)頁面數(shù)據(jù),惡意腳本就會(huì)被執(zhí)行。常見于搜索、微博、社區(qū)貼吧評(píng)論等。

          4.說一說它們之間的區(qū)別

          反射型的 XSS 的惡意腳本存在 URL 里,存儲(chǔ)型 XSS 的惡意代碼存在數(shù)據(jù)庫里。

          而基于DOM型的XSS 攻擊中,取出和執(zhí)行惡意代碼由瀏覽器端完成,屬于前端 JavaScript 自身的安全漏洞,其他兩種 XSS 都屬于服務(wù)端的安全漏洞。

          (面試官微微抬起頭,遞給我一張紙。)

          5.再畫個(gè)圖解釋一下把

          (好的,給你降維解釋一波)

          反射型


          基于DOM型


          存儲(chǔ)型


          (面試官:小伙子圖畫的不錯(cuò))

          6.黑客可以通過XSS攻擊做哪些事兒?

          • 盜取用戶 Cookie
          • 未授權(quán)操作
          • 修改 DOM
          • 刷浮窗廣告
          • 發(fā)動(dòng) XSS 蠕蟲攻擊
          • 劫持用戶行為,進(jìn)一步滲透內(nèi)網(wǎng)

          (...太多了)

          7.XSS攻擊如何進(jìn)行防護(hù)?

          • 一切用戶輸入皆不可信,在輸出時(shí)進(jìn)行驗(yàn)證
          • HTML 元素內(nèi)容、屬性以及 URL 請(qǐng)求參數(shù)、CSS 值進(jìn)行編碼
          • 當(dāng)編碼影響業(yè)務(wù)時(shí),使用白名單規(guī)則進(jìn)行檢測(cè)和過濾
          • 使用 W3C 提出的 CSP (Content Security Policy,內(nèi)容安全策略),定義域名白名單
          • 設(shè)置 Cookie 的 HttpOnly 屬性

          8.知道哪些XSS攻擊案例簡(jiǎn)單說一下

          (沒想到你還愛聽新聞)

          • 2005年,年僅19歲的 Samy Kamkar 發(fā)起了對(duì) MySpace.com 的 XSS Worm 攻擊。Samy Kamkar 的蠕蟲在短短幾小時(shí)內(nèi)就感染了100萬用戶——它在每個(gè)用戶的自我簡(jiǎn)介后邊加了一句話:“but most of all, Samy is my hero.”(Samy是我的偶像)。這是 Web 安全史上第一個(gè)重量級(jí)的 XSS Worm,具有里程碑意義。
          • 2007年12月,百度空間收到蠕蟲攻擊,用戶之間開始轉(zhuǎn)發(fā)垃圾短消息。
          • QQ 郵箱 m.exmail.qq.com 域名被發(fā)現(xiàn)反射型 XSS 漏洞
          • 2011年新浪微博曾被黑客 XSS 攻擊,黑客誘導(dǎo)用戶點(diǎn)擊一個(gè)帶有誘惑性的鏈接,便會(huì)自動(dòng)發(fā)送一條帶有同樣誘惑性鏈接微博。攻擊范圍層層擴(kuò)大,也是一種蠕蟲攻擊。

          9.什么是CSRF攻擊?

          CSRF 英文全稱是 Cross-site request forgery,又稱為“跨站請(qǐng)求偽造”。

          顧名思義,CSRF 攻擊就是黑客引誘用戶打開黑客的網(wǎng)站,利用用戶的登陸狀態(tài)發(fā)起跨站請(qǐng)求。

          降維解釋:攻擊者誘導(dǎo)受害者進(jìn)入第三方網(wǎng)站,在第三方網(wǎng)站中,向被攻擊網(wǎng)站發(fā)送跨站請(qǐng)求。利用受害者在被攻擊網(wǎng)站已經(jīng)獲取的注冊(cè)憑證,繞過后臺(tái)的用戶驗(yàn)證, 達(dá)到冒充用戶對(duì)被攻擊的網(wǎng)站執(zhí)行某項(xiàng)操作的目的。

          10.CSRF攻擊一般怎么實(shí)現(xiàn)?

          • 最容易實(shí)現(xiàn)的是 Get 請(qǐng)求,一般進(jìn)入黑客網(wǎng)站后,可以通過設(shè)置 imgsrc 屬性來自動(dòng)發(fā)起請(qǐng)求
          • 在黑客的網(wǎng)站中,構(gòu)造隱藏表單來自動(dòng)發(fā)起 Post 請(qǐng)求
          • 通過引誘鏈接誘惑用戶點(diǎn)擊觸發(fā)請(qǐng)求,利用 a 標(biāo)簽的 href。

          點(diǎn)擊下載美女視頻

          11.CSRF攻擊和XSS攻擊有什么區(qū)別?

          CSRF 攻擊不需要將惡意代碼注入用戶的頁面,僅僅是利用服務(wù)器的漏洞和用戶的登錄狀態(tài)來實(shí)施攻擊。

          CSRF 攻擊成本也比 XSS 低,用戶每天都要訪問大量網(wǎng)頁,無法確認(rèn)每一個(gè)網(wǎng)頁的合法性, 從用戶角度來說,無法徹底防止 CSRF 攻擊。

          12.那應(yīng)該如何防范CSRF攻擊?

          • 針對(duì)實(shí)際情況,設(shè)置關(guān)鍵 Cookie 的 SameSite 屬性為 StrictLax
          • 服務(wù)端驗(yàn)證請(qǐng)求來源站點(diǎn)(Referer、Origin)
          • 使用 CSRF Token,服務(wù)端隨機(jī)生成返回給瀏覽器的 Token,每一次請(qǐng)求都會(huì)攜帶不同的 CSRF Token
          • 加入二次驗(yàn)證(獨(dú)立的支付密碼)

          13.關(guān)于Web密碼學(xué)你了解哪些呢?

          • 對(duì)稱加密算法
            • 對(duì)稱加密算法就是加密和解密使用同一個(gè)密鑰,簡(jiǎn)單粗暴
            • 常見的經(jīng)典對(duì)稱加密算法有 DES、AES(AES-128)、IDEA、國(guó)密SM1、國(guó)密SM4
          • 非對(duì)稱加密算法
            • 非對(duì)稱加密就是加密和解密使用不同的密鑰。發(fā)送方使用公鑰對(duì)信息進(jìn)行加密,接收方收到密文后,使用私鑰進(jìn)行解密。
            • 主要解決了密鑰分發(fā)的難題
            • 我們常說的簽名就是私鑰加密
            • 常見的經(jīng)典非對(duì)稱加密算法有RSA、ECC和國(guó)密SM2
          • 散列算法
            • 不可逆性、魯棒性、唯一性
            • MD5、SHA(SHA-256)、國(guó)密SM3
            • 使用時(shí)記得加鹽

          AES 是國(guó)際上最認(rèn)可的密碼學(xué)算法,只要算力沒有極大的突破性進(jìn)展,這種算法在可預(yù)期的未來都是安全的。

          ECC 是目前國(guó)際上加密強(qiáng)度最高的非對(duì)稱加密算法。

          MD5SHA 的唯一性被破解了,但是大部分場(chǎng)景下,不會(huì)構(gòu)成安全問題。一般使用 SHA-256 加鹽即可滿足大部分使用場(chǎng)景。

          14.簡(jiǎn)單說一下HTTPS的實(shí)現(xiàn)原理

          1. Client 發(fā)送 random1+對(duì)稱加密套件列表+非對(duì)稱加密套件列表
          2. Server 收到信息, 選擇 對(duì)稱加密套件+非對(duì)稱加密套件 并和 random2+證書(公鑰在證書中) 一起返回
          3. Client 驗(yàn)證證書有效性,并用 random1+random2 生成 pre-master 通過服務(wù)器公鑰加密+瀏覽器確認(rèn) 發(fā)送給 Server
          4. Server 收到 pre-master,根據(jù)約定的加密算法對(duì) random1+random2+pre-master(解密)生成 master-secret,然后發(fā)送服務(wù)器確認(rèn)
          5. Client 收到生成同樣的 master-secert,對(duì)稱加密秘鑰傳輸完畢

          (基操,勿6)

          HTTPS 在 TCP 和 HTTP 中間加入了 SSL/TLS 安全層。

          • 對(duì)發(fā)起 HTTP 請(qǐng)求的數(shù)據(jù)進(jìn)行加密操作
          • 對(duì)接收到 HTTP 的內(nèi)容進(jìn)行解密操作。

          采用對(duì)稱加密的方式加密傳輸數(shù)據(jù)和非對(duì)稱加密的方式來傳輸密鑰,既可以解決傳輸效率問題也能保證兩端數(shù)據(jù)的安全傳輸。除此之外,為了能夠證明服務(wù)器是可靠的,引入了數(shù)字證書,讓瀏覽器驗(yàn)證證書的可靠性。

          面試官拿起旁邊已經(jīng)涼透的烏龍茶,喝了一口。

          (小伙子,有點(diǎn)東西)

          參考

          • 白帽子講Web安全
          • 瀏覽器工作原理與實(shí)踐
          • 安全攻防技能30講

          最后



          如果你覺得這篇內(nèi)容對(duì)你挺有啟發(fā),我想邀請(qǐng)你幫我三個(gè)小忙:

          1. 點(diǎn)個(gè)「在看」,讓更多的人也能看到這篇內(nèi)容(喜歡不點(diǎn)在看,都是耍流氓 -_-)

          2. 歡迎加我微信「qianyu443033099」拉你進(jìn)技術(shù)群,長(zhǎng)期交流學(xué)習(xí)...

          3. 關(guān)注公眾號(hào)「前端下午茶」,持續(xù)為你推送精選好文,也可以加我為好友,隨時(shí)聊騷。


          點(diǎn)個(gè)在看支持我吧,轉(zhuǎn)發(fā)就更好了


          瀏覽 27
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  久久99国产精品久久久久久久久 | AV黄色在线网站 | 精品在线播放 | 艹逼中文字幕 | 欧美性爱 国产精品 |