国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

web 應(yīng)用常見安全漏洞一覽

Panda / 2468人閱讀

摘要:應(yīng)用常見安全漏洞一覽注入注入就是通過給應(yīng)用接口傳入一些特殊字符,達(dá)到欺騙服務(wù)器執(zhí)行惡意的命令。此外,適當(dāng)?shù)臋?quán)限控制不曝露必要的安全信息和日志也有助于預(yù)防注入漏洞。

web 應(yīng)用常見安全漏洞一覽 1. SQL 注入

SQL 注入就是通過給 web 應(yīng)用接口傳入一些特殊字符,達(dá)到欺騙服務(wù)器執(zhí)行惡意的 SQL 命令。

SQL 注入漏洞屬于后端的范疇,但前端也可做體驗(yàn)上的優(yōu)化。

原因

當(dāng)使用外部不可信任的數(shù)據(jù)作為參數(shù)進(jìn)行數(shù)據(jù)庫的增、刪、改、查時(shí),如果未對(duì)外部數(shù)據(jù)進(jìn)行過濾,就會(huì)產(chǎn)生 SQL 注入漏洞。

比如:

name = "外部輸入名稱";

sql = "select * from users where name=" + name;

上面的 SQL 語句目的是通過用戶輸入的用戶名查找用戶信息,因?yàn)橛捎?SQL 語句是直接拼接的,也沒有進(jìn)行過濾,所以,當(dāng)用戶輸入 "" or "1"="1" 時(shí),這個(gè)語句的功能就是搜索 users 全表的記錄。

select * from users where name="" or "1"="1";
解決方案

具體的解決方案很多,但大部分都是基于一點(diǎn):不信任任何外部輸入。

所以,對(duì)任何外部輸入都進(jìn)行過濾,然后再進(jìn)行數(shù)據(jù)庫的增、刪、改、查。

此外,適當(dāng)?shù)臋?quán)限控制、不曝露必要的安全信息和日志也有助于預(yù)防 SQL 注入漏洞。

參考 Web 安全漏洞之 SQL 注入 - 防御方法 了解具體的解決方案。

推薦參考

Web 安全漏洞之 SQL 注入

SQL 注入詳解

2. XSS 攻擊

XSS 攻擊全稱跨站腳本攻擊(Cross-Site Scripting),簡單的說就是攻擊者通過在目標(biāo)網(wǎng)站上注入惡意腳本并運(yùn)行,獲取用戶的敏感信息如 Cookie、SessionID 等,影響網(wǎng)站與用戶數(shù)據(jù)安全。

XSS 攻擊更偏向前端的范疇,但后端在保存數(shù)據(jù)的時(shí)候也需要對(duì)數(shù)據(jù)進(jìn)行安全過濾。

原因

當(dāng)攻擊者通過某種方式向?yàn)g覽器頁面注入了惡意代碼,并且瀏覽器執(zhí)行了這些代碼。

比如:

在一個(gè)文章應(yīng)用中(如微信文章),攻擊者在文章編輯后臺(tái)通過注入 script 標(biāo)簽及 js 代碼,后端未加過濾就保存到數(shù)據(jù)庫,前端渲染文章詳情的時(shí)候也未加過濾,這就會(huì)讓這段 js 代碼執(zhí)行,引起 XSS 攻擊。

解決方案

一個(gè)基本的思路是渲染前端頁面(不管是客戶端渲染還是服務(wù)器端渲染)或者動(dòng)態(tài)插入 HTML 片段時(shí),任何數(shù)據(jù)都不可信任,都要先做 HTML 過濾,然后再渲染。

參考 前端安全系列(一):如何防止XSS攻擊? - 攻擊的預(yù)防 了解具體的解決方案。

推薦參考

前端安全系列(一):如何防止XSS攻擊?

前端防御 XSS

淺說 XSS 和 CSRF

3. CSRF 攻擊

CSRF 攻擊全稱跨站請求偽造(Cross-site Request Forgery),簡單的說就是攻擊者盜用了你的身份,以你的名義發(fā)送惡意請求。

原因

一個(gè)典型的 CSRF 攻擊有著如下的流程:

受害者登錄 a.com,并保留了登錄憑證(Cookie)

攻擊者引誘受害者訪問了 b.com

b.coma.com 發(fā)送了一個(gè)請求:a.com/act=xx(瀏覽器會(huì)默認(rèn)攜帶 a.com 的 Cookie)

a.com 接收到請求后,對(duì)請求進(jìn)行驗(yàn)證,并確認(rèn)是受害者的憑證,誤以為是受害者自己發(fā)送的請求

a.com 以受害者的名義執(zhí)行了 act=xx

攻擊完成,攻擊者在受害者不知情的情況下,冒充受害者,讓 a.com 執(zhí)行了自己定義的操作

注:上面的過程摘自 前端安全系列之二:如何防止CSRF攻擊?

解決方案

防止 CSRF 攻擊需要在服務(wù)器端入手,基本的思路是能正確識(shí)別是否是用戶發(fā)起的請求。

參考 前端安全系列之二:如何防止CSRF攻擊? - 防護(hù)策略 了解具體的解決方案。

推薦參考

前端安全系列之二:如何防止CSRF攻擊?

Web安全漏洞之CSRF

淺說 XSS 和 CSRF

4. DDoS 攻擊

DoS 攻擊全稱拒絕服務(wù)(Denial of Service),簡單的說就是讓一個(gè)公開網(wǎng)站無法訪問,而 DDoS 攻擊(分布式拒絕服務(wù) Distributed Denial of Service)是 DoS 的升級(jí)版。

這個(gè)就完全屬于后端的范疇了。

原因

攻擊者不斷地提出服務(wù)請求,讓合法用戶的請求無法及時(shí)處理,這就是 DoS 攻擊。

攻擊者使用多臺(tái)計(jì)算機(jī)或者計(jì)算機(jī)集群進(jìn)行 DoS 攻擊,就是 DDoS 攻擊。

解決方案

防止 DDoS 攻擊的基本思路是限流,限制單個(gè)用戶的流量(包括 IP 等)。

參考 DDoS的攻擊及防御 - 防御 了解具體的解決方案。

推薦參考

DDoS的攻擊及防御

淺談 DDoS 攻擊與防御

使用 Nginx、Nginx Plus 抵御 DDOS 攻擊

5. XXE 漏洞

XXE 漏洞全稱 XML 外部實(shí)體漏洞(XML External Entity),當(dāng)應(yīng)用程序解析 XML 輸入時(shí),如果沒有禁止外部實(shí)體的加載,導(dǎo)致可加載惡意外部文件和代碼,就會(huì)造成任意文件讀取、命令執(zhí)行、內(nèi)網(wǎng)端口掃描、攻擊內(nèi)網(wǎng)網(wǎng)站等攻擊。

這個(gè)只在能夠接收 XML 格式參數(shù)的接口才會(huì)出現(xiàn)。

解決方案

禁用外部實(shí)體

過濾用戶提交的XML數(shù)據(jù)

參考 xxe漏洞的學(xué)習(xí)與利用總結(jié) 了解具體的解決方案。

推薦參考

好剛: 6分鐘視頻看懂XXE漏洞攻擊

xxe漏洞的學(xué)習(xí)與利用總結(jié)

XXE漏洞攻防學(xué)習(xí)(上)

6. JSON 劫持

JSON 劫持(JSON Hijacking)是用于獲取敏感數(shù)據(jù)的一種攻擊方式,屬于 CSRF 攻擊的范疇。

原因

一些 Web 應(yīng)用會(huì)把一些敏感數(shù)據(jù)以 json 的形式返回到前端,如果僅僅通過 Cookie 來判斷請求是否合法,那么就可以利用類似 CSRF 的手段,向目標(biāo)服務(wù)器發(fā)送請求,以獲得敏感數(shù)據(jù)。

比如下面的鏈接在已登錄的情況下會(huì)返回 json 格式的用戶信息:

http://www.test.com/userinfo

攻擊者可以在自己的虛假頁面中,加入如下標(biāo)簽:

如果當(dāng)前瀏覽器已經(jīng)登錄了 www.test.com,并且 Cookie 未過期,然后訪問了攻擊者的虛假頁面,那么該頁面就可以拿到 json 形式的用戶敏感信息,因?yàn)?script 標(biāo)簽會(huì)自動(dòng)解析 json 數(shù)據(jù),生成對(duì)應(yīng)的 js 對(duì)象。然后再通過:

Object.prototype.__defineSetter__

這個(gè)函數(shù)來觸發(fā)自己的惡意代碼。

但是這個(gè)函數(shù)在當(dāng)前的新版本 Chrome 和 Firefox 中都已經(jīng)失效了。

注:上面的過程摘自 JSON和JSONP劫持以及解決方法

解決方案

X-Requested-With 標(biāo)識(shí)

瀏覽器 JSON 數(shù)據(jù)識(shí)別

禁止 Javascript 執(zhí)行 JSON 數(shù)據(jù)

推薦參考

JSON和JSONP劫持以及解決方法

JSONP 安全攻防技術(shù)(JSON劫持、 XSS漏洞)

7. 暴力破解

這個(gè)一般針對(duì)密碼而言,弱密碼(Weak Password)很容易被別人(對(duì)你很了解的人等)猜到或被破解工具暴力破解。

解決方案

密碼復(fù)雜度要足夠大,也要足夠隱蔽

限制嘗試次數(shù)

8. HTTP 報(bào)頭追蹤漏洞

HTTP/1.1(RFC2616)規(guī)范定義了 HTTP TRACE 方法,主要是用于客戶端通過向 Web 服務(wù)器提交 TRACE 請求來進(jìn)行測試或獲得診斷信息。

當(dāng) Web 服務(wù)器啟用 TRACE 時(shí),提交的請求頭會(huì)在服務(wù)器響應(yīng)的內(nèi)容(Body)中完整的返回,其中 HTTP 頭很可能包括 Session Token、Cookies 或其它認(rèn)證信息。攻擊者可以利用此漏洞來欺騙合法用戶并得到他們的私人信息。

解決方案

禁用 HTTP TRACE 方法。

9. 信息泄露

由于 Web 服務(wù)器或應(yīng)用程序沒有正確處理一些特殊請求,泄露 Web 服務(wù)器的一些敏感信息,如用戶名、密碼、源代碼、服務(wù)器信息、配置信息等。

所以一般需注意:

應(yīng)用程序報(bào)錯(cuò)時(shí),不對(duì)外產(chǎn)生調(diào)試信息

過濾用戶提交的數(shù)據(jù)與特殊字符

保證源代碼、服務(wù)器配置的安全

10. 目錄遍歷漏洞

攻擊者向 Web 服務(wù)器發(fā)送請求,通過在 URL 中或在有特殊意義的目錄中附加 ../、或者附加 ../ 的一些變形(如 ....// 甚至其編碼),導(dǎo)致攻擊者能夠訪問未授權(quán)的目錄,以及在 Web 服務(wù)器的根目錄以外執(zhí)行命令。

11. 命令執(zhí)行漏洞

命令執(zhí)行漏洞是通過 URL 發(fā)起請求,在 Web 服務(wù)器端執(zhí)行未授權(quán)的命令,獲取系統(tǒng)信息、篡改系統(tǒng)配置、控制整個(gè)系統(tǒng)、使系統(tǒng)癱瘓等。

12. 文件上傳漏洞

如果對(duì)文件上傳路徑變量過濾不嚴(yán),并且對(duì)用戶上傳的文件后綴以及文件類型限制不嚴(yán),攻擊者可通過 Web 訪問的目錄上傳任意文件,包括網(wǎng)站后門文件(webshell),進(jìn)而遠(yuǎn)程控制網(wǎng)站服務(wù)器。

所以一般需注意:

在開發(fā)網(wǎng)站及應(yīng)用程序過程中,需嚴(yán)格限制和校驗(yàn)上傳的文件,禁止上傳惡意代碼的文件

限制相關(guān)目錄的執(zhí)行權(quán)限,防范 webshell 攻擊

13. 其他漏洞

SSLStrip 攻擊

OpenSSL Heartbleed 安全漏洞

CCS 注入漏洞

證書有效性驗(yàn)證漏洞

14. 業(yè)務(wù)漏洞

一般業(yè)務(wù)漏洞是跟具體的應(yīng)用程序相關(guān),比如參數(shù)篡改(連續(xù)編號(hào) ID / 訂單、1 元支付)、重放攻擊(偽裝支付)、權(quán)限控制(越權(quán)操作)等。

另外可以參考:6種常見web漏洞坑

15. 框架或應(yīng)用漏洞

WordPress 4.7 / 4.7.1:REST API 內(nèi)容注入漏洞

Drupal Module RESTWS 7.x:Remote PHP Code Execution

SugarCRM 6.5.23:REST PHP Object Injection Exploit

Apache Struts:REST Plugin With Dynamic Method Invocation Remote Code Execution

Oracle GlassFish Server:REST CSRF

QQ Browser 9.6:API 權(quán)限控制問題導(dǎo)致泄露隱私模式

Hacking Docker:Registry API 未授權(quán)訪問

后續(xù)

更多博客,查看 https://github.com/senntyou/blogs

作者:深予之 (@senntyou)

版權(quán)聲明:自由轉(zhuǎn)載-非商用-非衍生-保持署名(創(chuàng)意共享3.0許可證)

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/73198.html

相關(guān)文章

  • web 應(yīng)用常見安全漏洞一覽

    摘要:應(yīng)用常見安全漏洞一覽注入注入就是通過給應(yīng)用接口傳入一些特殊字符,達(dá)到欺騙服務(wù)器執(zhí)行惡意的命令。此外,適當(dāng)?shù)臋?quán)限控制不曝露必要的安全信息和日志也有助于預(yù)防注入漏洞。 web 應(yīng)用常見安全漏洞一覽 1. SQL 注入 SQL 注入就是通過給 web 應(yīng)用接口傳入一些特殊字符,達(dá)到欺騙服務(wù)器執(zhí)行惡意的 SQL 命令。 SQL 注入漏洞屬于后端的范疇,但前端也可做體驗(yàn)上的優(yōu)化。 原因 當(dāng)使用外...

    darkerXi 評(píng)論0 收藏0
  • 基于瀏覽器客戶端的流式渲染技術(shù)難點(diǎn)一覽

    摘要:為了適應(yīng)流式渲染技術(shù)對(duì)網(wǎng)絡(luò)高吞吐零緩沖的特點(diǎn),可能需要對(duì)現(xiàn)有網(wǎng)絡(luò)協(xié)議進(jìn)行改造主要針對(duì)。視頻基于的,視頻在客戶端的播放會(huì)相對(duì)較為容易。輸入信號(hào)各自隔離處理即可,瀏覽器端對(duì)常見的輸入信號(hào)幾乎都有支持。 本文首發(fā)于我的博客(點(diǎn)此查看),歡迎關(guān)注。 流式渲染技術(shù),不同于傳統(tǒng)意義上前端領(lǐng)域的服務(wù)端渲染(即 SSR),指的是云端性能強(qiáng)勁的機(jī)器進(jìn)行畫面渲染,將渲染完成的數(shù)據(jù)傳送至客戶端,客戶端只負(fù)責(zé)...

    Render 評(píng)論0 收藏0
  • Spring體系常用項(xiàng)目一覽

    摘要:的面向的異常遵從通用的異常層次結(jié)構(gòu)。比如以前常用的框架,現(xiàn)在常用的框架包含許多項(xiàng)目,下面挑一些最常用的出來總結(jié)一下。狀態(tài)是流程中事件發(fā)生的地點(diǎn),在流程中通過轉(zhuǎn)移的方式從一個(gè)狀態(tài)到另一個(gè)狀態(tài),流程的當(dāng)前狀況稱為流程數(shù)據(jù)。 如今做Java尤其是web幾乎是避免不了和Spring打交道了,但是Spring是這樣的大而全,新鮮名詞不斷產(chǎn)生,學(xué)起來給人一種凌亂的感覺,我就在這里總結(jié)一下,理順頭緒...

    OnlyLing 評(píng)論0 收藏0
  • Android 研發(fā)工程師圖書一覽(2016年版)

    摘要:番茄工作法簡約而不簡單,本書亦然。在番茄工作法一個(gè)個(gè)短短的分鐘內(nèi),你收獲的不僅僅是效率,還會(huì)有意想不到的成就感。 @author ASCE1885的 Github 簡書 微博 CSDN 知乎本文由于潛在的商業(yè)目的,不開放全文轉(zhuǎn)載許可,謝謝! showImg(/img/remote/1460000007319503?w=728&h=792); 廣而告之時(shí)間:我的新書《Android 高...

    MadPecker 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<