久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      PHP安全問(wèn)題匯總

      1-XSS

      Cross-Site Scripting(跨站腳本攻擊)簡(jiǎn)稱(chēng) XSS,是一種代碼注入攻擊。攻擊者通過(guò)在目標(biāo)網(wǎng)站上注入惡意腳本,使之在用戶(hù)的瀏覽器上運(yùn)行。利用這些惡意腳本,攻擊者可獲取用戶(hù)的敏感信息如 Cookie、SessionID 等,進(jìn)而危害數(shù)據(jù)安全。

      來(lái)源

      • 來(lái)自用戶(hù)的 UGC 信息

      • 來(lái)自第三方的鏈接

      • URL 參數(shù)

      • POST 參數(shù)

      • Referer (可能來(lái)自不可信的來(lái)源)

      • Cookie (可能來(lái)自其他子域注入)

      轉(zhuǎn)義、過(guò)濾、限制長(zhǎng)度

      2-SQL注入

      通過(guò)SQL語(yǔ)句,實(shí)現(xiàn)無(wú)賬號(hào)登錄,甚至篡改數(shù)據(jù)庫(kù)。

      攻擊實(shí)例

      復(fù)制代碼 String sql = "select * from user_table where username=' "+userName+" ' and password=' "+password+" '";--當(dāng)輸入了上面的用戶(hù)名和密碼,上面的SQL語(yǔ)句變成:SELECT * FROM user_table WHERE username='’or 1 = 1 -- and password='’"""--分析SQL語(yǔ)句:--條件后面username=”or 1=1 用戶(hù)名等于 ” 或1=1 那么這個(gè)條件一定會(huì)成功;--然后后面加兩個(gè)-,這意味著注釋?zhuān)鼘⒑竺娴恼Z(yǔ)句注釋?zhuān)屗麄儾黄鹱饔茫@樣語(yǔ)句永遠(yuǎn)都--能正確執(zhí)行,用戶(hù)輕易騙過(guò)系統(tǒng),獲取合法身份。--這還是比較溫柔的,如果是執(zhí)行SELECT * FROM user_table WHEREusername='' ;DROP DATABASE (DB Name) --' and password=''--其后果可想而知…

      如何防御SQL注入
       1、檢查變量數(shù)據(jù)類(lèi)型和格式
       2、過(guò)濾特殊符號(hào)
       3、綁定變量,使用預(yù)編譯語(yǔ)句  

      3-CSRF

      CSRF一般指跨站請(qǐng)求偽造
      CSRF攻擊的全稱(chēng)是跨站請(qǐng)求偽造( cross site request forgery),是一種對(duì)網(wǎng)站的惡意利用

      CSRF則是通過(guò)偽裝來(lái)自受信任用戶(hù)的請(qǐng)求來(lái)利用受信任的網(wǎng)站,攻擊者盜用了你的身份,以你的名義向第三方網(wǎng)站發(fā)送惡意請(qǐng)求。CRSF能做的事情包括利用你的身份發(fā)郵件、發(fā)短信、進(jìn)行交易轉(zhuǎn)賬等,甚至盜取你的賬號(hào)。

      例如:
      如下:其中Web A為存在CSRF漏洞的網(wǎng)站,Web B為攻擊者構(gòu)建的惡意網(wǎng)站,User C為Web A網(wǎng)站的合法用戶(hù)

      3-1 CSRF攻擊攻擊原理及過(guò)程如下:

      1.用戶(hù)C打開(kāi)瀏覽器,訪問(wèn)受信任網(wǎng)站A,輸入用戶(hù)名和密碼請(qǐng)求登錄網(wǎng)站A;

      2.在用戶(hù)信息通過(guò)驗(yàn)證后,網(wǎng)站A產(chǎn)生Cookie信息并返回給瀏覽器,此時(shí)用戶(hù)登錄網(wǎng)站A成功,可以正常發(fā)送請(qǐng)求到網(wǎng)站A;

      3.用戶(hù)未退出網(wǎng)站A之前,在同一瀏覽器中,打開(kāi)一個(gè)TAB頁(yè)訪問(wèn)網(wǎng)站B;

      4.網(wǎng)站B接收到用戶(hù)請(qǐng)求后,返回一些攻擊性代碼,并發(fā)出一個(gè)請(qǐng)求要求訪問(wèn)第三方站點(diǎn)A;

      5.瀏覽器在接收到這些攻擊性代碼后,根據(jù)網(wǎng)站B的請(qǐng)求,在用戶(hù)不知情的情況下攜帶Cookie信息,向網(wǎng)站A發(fā)出請(qǐng)求。網(wǎng)站A并不知道該請(qǐng)求其實(shí)是由B發(fā)起的,所以會(huì)根據(jù)用戶(hù)C的Cookie信息以C的權(quán)限處理該請(qǐng)求,導(dǎo)致來(lái)自網(wǎng)站B的惡意代碼被執(zhí)行。

      3-2防御CSRF攻擊

      目前防御 CSRF 攻擊主要有三種策略:驗(yàn)證 HTTP Referer 字段;在請(qǐng)求地址中添加 token 并驗(yàn)證;在 HTTP 頭中自定義屬性并驗(yàn)證。

      1-驗(yàn)證 HTTP Referer 字段

      根據(jù) HTTP 協(xié)議,在 HTTP 頭中有一個(gè)字段叫 Referer,它記錄了該 HTTP 請(qǐng)求的來(lái)源地址。在通常情況下,訪問(wèn)一個(gè)安全受限頁(yè)面的請(qǐng)求來(lái)自于同一個(gè)網(wǎng)站,比如需要訪問(wèn) http://bank.example/withdraw?account=bob&amount=1000000&for=Mallory,用戶(hù)必須先登陸 bank.example,然后通過(guò)點(diǎn)擊頁(yè)面上的按鈕來(lái)觸發(fā)轉(zhuǎn)賬事件。這時(shí),該轉(zhuǎn)帳請(qǐng)求的 Referer 值就會(huì)是轉(zhuǎn)賬按鈕所在的頁(yè)面的 URL,通常是以 bank.example 域名開(kāi)頭的地址。而如果黑客要對(duì)銀行網(wǎng)站實(shí)施 CSRF 攻擊,他只能在他自己的網(wǎng)站構(gòu)造請(qǐng)求,當(dāng)用戶(hù)通過(guò)黑客的網(wǎng)站發(fā)送請(qǐng)求到銀行時(shí),該請(qǐng)求的 Referer 是指向黑客自己的網(wǎng)站。因此,要防御 CSRF 攻擊,銀行網(wǎng)站只需要對(duì)于每一個(gè)轉(zhuǎn)賬請(qǐng)求驗(yàn)證其 Referer 值,如果是以 bank.example 開(kāi)頭的域名,則說(shuō)明該請(qǐng)求是來(lái)自銀行網(wǎng)站自己的請(qǐng)求,是合法的。如果 Referer 是其他網(wǎng)站的話,則有可能是黑客的 CSRF 攻擊,拒絕該請(qǐng)求。

      這種方法的顯而易見(jiàn)的好處就是簡(jiǎn)單易行,網(wǎng)站的普通開(kāi)發(fā)人員不需要操心 CSRF 的漏洞,只需要在最后給所有安全敏感的請(qǐng)求統(tǒng)一增加一個(gè)攔截器來(lái)檢查 Referer 的值就可以。特別是對(duì)于當(dāng)前現(xiàn)有的系統(tǒng),不需要改變當(dāng)前系統(tǒng)的任何已有代碼和邏輯,沒(méi)有風(fēng)險(xiǎn),非常便捷。

      然而,這種方法并非萬(wàn)無(wú)一失。Referer 的值是由瀏覽器提供的,雖然 HTTP 協(xié)議上有明確的要求,但是每個(gè)瀏覽器對(duì)于 Referer 的具體實(shí)現(xiàn)可能有差別,并不能保證瀏覽器自身沒(méi)有安全漏洞。使用驗(yàn)證 Referer 值的方法,就是把安全性都依賴(lài)于第三方(即瀏覽器)來(lái)保障,從理論上來(lái)講,這樣并不安全。事實(shí)上,對(duì)于某些瀏覽器,比如 IE6 或 FF2,目前已經(jīng)有一些方法可以篡改 Referer 值。如果 bank.example 網(wǎng)站支持 IE6 瀏覽器,黑客完全可以把用戶(hù)瀏覽器的 Referer 值設(shè)為以 bank.example 域名開(kāi)頭的地址,這樣就可以通過(guò)驗(yàn)證,從而進(jìn)行 CSRF 攻擊。

      即便是使用最新的瀏覽器,黑客無(wú)法篡改 Referer 值,這種方法仍然有問(wèn)題。因?yàn)?Referer 值會(huì)記錄下用戶(hù)的訪問(wèn)來(lái)源,有些用戶(hù)認(rèn)為這樣會(huì)侵犯到他們自己的隱私權(quán),特別是有些組織擔(dān)心 Referer 值會(huì)把組織內(nèi)網(wǎng)中的某些信息泄露到外網(wǎng)中。因此,用戶(hù)自己可以設(shè)置瀏覽器使其在發(fā)送請(qǐng)求時(shí)不再提供 Referer。當(dāng)他們正常訪問(wèn)銀行網(wǎng)站時(shí),網(wǎng)站會(huì)因?yàn)檎?qǐng)求沒(méi)有 Referer 值而認(rèn)為是 CSRF 攻擊,拒絕合法用戶(hù)的訪問(wèn)。

      2-在請(qǐng)求地址中添加 token 并驗(yàn)證

      CSRF 攻擊之所以能夠成功,是因?yàn)楹诳涂梢酝耆珎卧煊脩?hù)的請(qǐng)求,該請(qǐng)求中所有的用戶(hù)驗(yàn)證信息都是存在于 cookie 中,因此黑客可以在不知道這些驗(yàn)證信息的情況下直接利用用戶(hù)自己的 cookie 來(lái)通過(guò)安全驗(yàn)證。要抵御 CSRF,關(guān)鍵在于在請(qǐng)求中放入黑客所不能偽造的信息,并且該信息不存在于 cookie 之中。可以在 HTTP 請(qǐng)求中以參數(shù)的形式加入一個(gè)隨機(jī)產(chǎn)生的 token,并在服務(wù)器端建立一個(gè)攔截器來(lái)驗(yàn)證這個(gè) token,如果請(qǐng)求中沒(méi)有 token 或者 token 內(nèi)容不正確,則認(rèn)為可能是 CSRF 攻擊而拒絕該請(qǐng)求。

      這種方法要比檢查 Referer 要安全一些,token 可以在用戶(hù)登陸后產(chǎn)生并放于 session 之中,然后在每次請(qǐng)求時(shí)把 token 從 session 中拿出,與請(qǐng)求中的 token 進(jìn)行比對(duì),但這種方法的難點(diǎn)在于如何把 token 以參數(shù)的形式加入請(qǐng)求。對(duì)于 GET 請(qǐng)求,token 將附在請(qǐng)求地址之后,這樣 URL 就變成 http://url?csrftoken=tokenvalue。 而對(duì)于 POST 請(qǐng)求來(lái)說(shuō),要在 form 的最后加上 ,這樣就把 token 以參數(shù)的形式加入請(qǐng)求了。但是,在一個(gè)網(wǎng)站中,可以接受請(qǐng)求的地方非常多,要對(duì)于每一個(gè)請(qǐng)求都加上 token 是很麻煩的,并且很容易漏掉,通常使用的方法就是在每次頁(yè)面加載時(shí),使用 javascript 遍歷整個(gè) dom 樹(shù),對(duì)于 dom 中所有的 a 和 form 標(biāo)簽后加入 token。這樣可以解決大部分的請(qǐng)求,但是對(duì)于在頁(yè)面加載之后動(dòng)態(tài)生成的 html 代碼,這種方法就沒(méi)有作用,還需要程序員在編碼時(shí)手動(dòng)添加 token。

      該方法還有一個(gè)缺點(diǎn)是難以保證 token 本身的安全。特別是在一些論壇之類(lèi)支持用戶(hù)自己發(fā)表內(nèi)容的網(wǎng)站,黑客可以在上面發(fā)布自己個(gè)人網(wǎng)站的地址。由于系統(tǒng)也會(huì)在這個(gè)地址后面加上 token,黑客可以在自己的網(wǎng)站上得到這個(gè) token,并馬上就可以發(fā)動(dòng) CSRF 攻擊。為了避免這一點(diǎn),系統(tǒng)可以在添加 token 的時(shí)候增加一個(gè)判斷,如果這個(gè)鏈接是鏈到自己本站的,就在后面添加 token,如果是通向外網(wǎng)則不加。不過(guò),即使這個(gè) csrftoken 不以參數(shù)的形式附加在請(qǐng)求之中,黑客的網(wǎng)站也同樣可以通過(guò) Referer 來(lái)得到這個(gè) token 值以發(fā)動(dòng) CSRF 攻擊。這也是一些用戶(hù)喜歡手動(dòng)關(guān)閉瀏覽器 Referer 功能的原因。

      3-在 HTTP 頭中自定義屬性并驗(yàn)證

      這種方法也是使用 token 并進(jìn)行驗(yàn)證,和上一種方法不同的是,這里并不是把 token 以參數(shù)的形式置于 HTTP 請(qǐng)求之中,而是把它放到 HTTP 頭中自定義的屬性里。通過(guò) XMLHttpRequest 這個(gè)類(lèi),可以一次性給所有該類(lèi)請(qǐng)求加上 csrftoken 這個(gè) HTTP 頭屬性,并把 token 值放入其中。這樣解決了上種方法在請(qǐng)求中加入 token 的不便,同時(shí),通過(guò) XMLHttpRequest 請(qǐng)求的地址不會(huì)被記錄到瀏覽器的地址欄,也不用擔(dān)心 token 會(huì)透過(guò) Referer 泄露到其他網(wǎng)站中去。

      然而這種方法的局限性非常大。XMLHttpRequest 請(qǐng)求通常用于 Ajax 方法中對(duì)于頁(yè)面局部的異步刷新,并非所有的請(qǐng)求都適合用這個(gè)類(lèi)來(lái)發(fā)起,而且通過(guò)該類(lèi)請(qǐng)求得到的頁(yè)面不能被瀏覽器所記錄下,從而進(jìn)行前進(jìn),后退,刷新,收藏等操作,給用戶(hù)帶來(lái)不便。另外,對(duì)于沒(méi)有進(jìn)行 CSRF 防護(hù)的遺留系統(tǒng)來(lái)說(shuō),要采用這種方法來(lái)進(jìn)行防護(hù),要把所有請(qǐng)求都改為 XMLHttpRequest 請(qǐng)求,這樣幾乎是要重寫(xiě)整個(gè)網(wǎng)站,這代價(jià)無(wú)疑是不能接受的

      4-CC攻擊

      4-1 CC攻擊的原理:

       CC攻擊的原理就是攻擊者控制某些主機(jī)不停地發(fā)大量數(shù)據(jù)包給對(duì)方服務(wù)器造成服務(wù)器資源耗盡,一直到宕機(jī)崩潰。CC主要是用來(lái)消耗服務(wù)器資源的,每個(gè)人都有這樣的體驗(yàn):當(dāng)一個(gè)網(wǎng)頁(yè)訪問(wèn)的人數(shù)特別多的時(shí)候,打開(kāi)網(wǎng)頁(yè)就慢了,CC就是模擬多個(gè)用戶(hù)(多少線程就是多少用戶(hù))不停地進(jìn)行訪問(wèn)那些需要大量數(shù)據(jù)操作(就是需要大量CPU時(shí)間)的頁(yè)面,造成服務(wù)器資源的浪費(fèi),CPU長(zhǎng)時(shí)間處于100%,永遠(yuǎn)都有處理不完的連接直至就網(wǎng)絡(luò)擁塞,正常的訪問(wèn)被中止。  

      4-2 CC攻擊的種類(lèi):

      CC攻擊的種類(lèi)有三種,

      • 直接攻擊
      • 代理攻擊
      • 僵尸網(wǎng)絡(luò)攻擊

      直接攻擊主要針對(duì)有重要缺陷的WEB應(yīng)用程序,一般說(shuō)來(lái)是程序?qū)懙挠袉?wèn)題的時(shí)候才會(huì)出現(xiàn)這種情況,比較少見(jiàn)。僵尸網(wǎng)絡(luò)攻擊有點(diǎn)類(lèi)似于 DDOS 攻擊了,從 WEB 應(yīng)用程序?qū)用嫔弦呀?jīng)無(wú)法防御,所以代理攻擊是CC 攻擊者一般會(huì)操作一批代理服務(wù)器,比方說(shuō) 100 個(gè)代理,然后每個(gè)代理同時(shí)發(fā)出 10 個(gè)請(qǐng)求,這樣 WEB 服務(wù)器同時(shí)收到 1000 個(gè)并發(fā)請(qǐng)求的,并且在發(fā)出請(qǐng)求后,立刻斷掉與代理的連接,避免代理返回的數(shù)據(jù)將本身的帶寬堵死,而不能發(fā)動(dòng)再次請(qǐng)求,這時(shí) WEB 服務(wù)器會(huì)將響應(yīng)這些請(qǐng)求的進(jìn)程進(jìn)行隊(duì)列,數(shù)據(jù)庫(kù)服務(wù)器也同樣如此,這樣一來(lái),正常請(qǐng)求將會(huì)被排在很后被處理,就象本來(lái)你去食堂吃飯時(shí),一般只有不到十個(gè)人在排隊(duì),今天前面卻插了一千個(gè)人,那么輪到你的機(jī)會(huì)就很小很小了,這時(shí)就出現(xiàn)頁(yè)面打開(kāi)極其緩慢或者白屏。

      4-3 CC攻擊與DDOS的區(qū)別

      DDoS是針對(duì)IP的攻擊,而CC攻擊的是服務(wù)器資源。

      5-DOS攻擊

      DOS:中文名稱(chēng)是拒絕服務(wù),一切能引起DOS行為的攻擊都被稱(chēng)為DOS攻擊。該攻擊的效果是使得計(jì)算機(jī)或網(wǎng)絡(luò)無(wú)法提供正常的服務(wù)。常見(jiàn)的DOS攻擊有針對(duì)計(jì)算機(jī)網(wǎng)絡(luò)帶寬和連通性的攻擊。 DOS是單機(jī)于單機(jī)之間的攻擊。

      DOS攻擊的原理:首先攻擊者向被攻擊的服務(wù)器發(fā)送大量的虛假I(mǎi)P請(qǐng)求,被攻擊者在收到請(qǐng)求后返回確認(rèn)信息,等待攻擊者進(jìn)行確認(rèn),(此處需要擁有HTTP協(xié)議工作方式和TCP三次握手的基本知識(shí))該過(guò)程需要TCP的三次握手,由于攻擊者發(fā)送的請(qǐng)求信息是虛假的,所以服務(wù)器接收不到返回的確認(rèn)信息,在一段時(shí)間內(nèi)服務(wù)器會(huì)處與等待狀態(tài),而分配給這次請(qǐng)求的資源卻沒(méi)有被釋放。當(dāng)被攻擊者等待一定的時(shí)間后,會(huì)因連接超時(shí)而斷開(kāi),這時(shí)攻擊者在次發(fā)送新的虛假信息請(qǐng)求,這樣最終服務(wù)器資源被耗盡,直到癱瘓。

      6-DDOS攻擊

      DDoS攻擊就是分布式的拒絕服務(wù)攻擊,DDoS攻擊手段是在傳統(tǒng)的DoS攻擊基礎(chǔ)之上產(chǎn)生的一類(lèi)攻擊方式。單一的DoS攻擊一般是采用一對(duì)一方式的,隨著計(jì)算機(jī)與網(wǎng)絡(luò)技術(shù)的發(fā)展,DoS攻擊的困難程度加大了。于是就產(chǎn)生了DDoS攻擊,它的原理就很簡(jiǎn)單:計(jì)算機(jī)與網(wǎng)絡(luò)的處理能力加大了10倍,用一臺(tái)攻擊機(jī)來(lái)攻擊不再能起作用,那么DDoS就是利用

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)