- 1、常見的網絡攻擊技術有哪些
- 2、如何防止跨站點腳本攻擊
- 3、xss是什麼意思 xss的意思介紹
- 4、跨站腳本攻擊是什麼意思?
- 5、跨站腳本攻擊有哪些類型
常見的網絡攻擊技術有:
1,跨站腳本攻擊。
跨站腳本攻擊可以將代碼注入到用戶瀏覽的網頁上,這種代碼包括HTML和JavaScript。
2,跨站請求偽造攻擊。
跨站請求偽造攻擊是攻擊者通過一些技術手段欺騙用戶的瀏覽器去訪問一個自己曾經認證過的網站並執行一些操作(如發郵件,發消息,甚至財產操作如轉賬和購買商品)。由於瀏覽器曾經認證過,所以被訪問的網站會認為是真正的用戶操作而去執行。
3,SQL注入攻擊。
這種攻擊的原理是服務器上的數據庫運行非法的SQL語句,主要通過拼接來完成。
更多關於常見的網絡攻擊技術有哪些,進入:查看更多內容
你好~
XSS漏洞產生的原因:
跨站點腳本的主要原因是程序猿對用戶的信任。開發人員輕鬆地認為用戶永遠不會試圖執行什麼出格的事情,所以他們創建應用程序,卻沒有使用任何額外的代碼來過濾用戶輸入以阻止任何惡意活動。另一個原因是,這種攻擊有許多變體,用製造出一種行之有效的XSS過濾器是一件比較困難的事情。
但是這只是相對的,對用戶輸入數據的」編碼」和」過濾」在任何時候都是很重要的,我們必須採取一些針對性的手段對其進行防禦。
如何創造一個良好的XSS過濾器來阻止大多數XSS攻擊代碼
1 .需要重點」編碼」和」過濾」的對象
The URL
HTTP referrer objects
GET parameters from a form
POST parameters from a form
Window.location
Document.referrer
document.location
document.URL
document.URLUnencoded
cookie data
headers data
database data
防禦XSS有一個原則:
以當前的應用系統為中心,所有的進入應用系統的數據都看成是輸入數據(包括從FORM表單或者從數據庫獲取到的數據),所有從當前應用系統流出的數據都看作是輸出(包括輸出到用戶瀏覽器或向數據庫寫入數據)
對輸入的數據進行」過濾」,對輸出數據進行」編碼」。這裡的」編碼」也要注意,必須針對數據具體的上下文語境進行針對性的編碼。例如數據是輸出到HTML中的那就要進行HtmlEncode,如果數據是輸出到javascript代碼中進行拼接的,那就要進行javascriptEncode。
如果不搞清楚數據具體輸出的語境,就有可能因為HtmlParser()和javascriptParser()兩種解析引擎的執行先後問題導致看似嚴密的」編碼」形同虛設。
2. HtmlEncode HTML編碼
它的作用是將字符轉換成HTMLEntities,對應的標準是ISO-8859-1
為了對抗XSS,在HtmlEncode中要求至少轉換以下字符:
—
—
—
” — “
‘ — ‘
/ — /
在PHP中:
htmlentities
htmlspecialchars
3. javascriptEncode javascript」編碼」
javascriptEncode與HtmlEncode的編碼方法不同,HtmlEncode是去編碼,而javascriptEncode更多的像轉義,它需要使用」\」對特殊字符進行轉義。從原理上來講,這都符合編碼函數的一個大原則: 將數據和代碼區分開,因為對於HTML Tag來說,我們對其進行」可視化(轉換成可以見字符)」的編碼可以將數據和HTML的界限分開。而對於javascript來說,我們除了要進行編碼之外,還需要對特殊字符進行轉義,這樣攻擊輸入的用於」閉合」的特殊字符就無法發揮作用,從而避免XSS攻擊,除此之外,在對抗XSS時,還要求輸出的變量必須在引號內部,以避免造成安全問題。
escape()
該方法不會對 ASCII 字母和數字進行編碼,也不會對下面這些 ASCII 標點符號進行編碼: * @ – _ + . / 。其他所有的字符都會被轉義序列(十六進制\xHH)替換。
利用這個編碼函數,不僅能防禦XSS攻擊,還可以防禦一些command注入。
一些開源的防禦XSS攻擊的代碼庫:
PHP AntiXSS
這是一個不錯的PHP庫,可以幫助開發人員增加一層保護,防止跨站腳本漏洞。
xss_clean.php filter
HTML Purifier
xssprotect
XSS HTML Filter
原文地址:
希望可以幫助到你~望採納哦~謝謝~
跨站腳本,英文全稱為Cross-Site Scripting,也被稱為XSS或跨站腳本或跨站腳本攻擊,是一種針對網站應用程序的安全漏洞攻擊技術,是代碼注入的一種。它允許惡意用戶將代碼注入網頁,其他用戶在瀏覽網頁時就會收到影響。惡意用戶利用XSS代碼攻擊成功後,可能得到很高的權限(如執行一些操作)、私密網頁內容、會話和cookie等各種內容。
XSS攻擊可以分為三種:反射型、存儲型和DOM型。
反射型XSS:
又稱非持久型XSS,這種攻擊方式往往具有一次性。
攻擊方式:攻擊者通過電子郵件等方式將包含XSS代碼的惡意鏈接發送給目標用戶。當目標用戶訪問該鏈接時,服務器接收該目標用戶的請求並進行處理,然後服務器把帶有XSS代碼的數據發送給目標用戶的瀏覽器,瀏覽器解析這段帶有XSS代碼的惡意腳本後,就會觸發XSS漏洞。
存儲型XSS:
存儲型XSS又稱持久型XSS,攻擊腳本將被永久地存放在目標服務器的數據庫或文件中,具有很高的隱蔽性。
攻擊方式:這種攻擊多見於論壇、博客和留言板,攻擊者在發帖的過程中,將惡意腳本連同正常信息一起注入帖子的內容中。隨着帖子被服務器保存下來,惡意腳本也永久地被存放在服務器的後端存儲器中。當其他用戶瀏覽這個被注入了惡意腳本的帖子時,惡意腳本會在他們的瀏覽器中得到執行。
DOM型XSS
DOM全稱Document Object Model,使用DOM可以使程序和腳本能夠動態訪問和更新文檔內容、結構及樣式。
DOM型XSS其實是一種特殊類型的反射型XSS,它是基於DOM文檔對象模型的一種漏洞。
HTML的標籤都是節點,而這些節點組成了DOM的整體結構——節點樹。通過HTML DOM,樹中所有節點均可通過JavaScript進行訪問。所有HTML(節點)均可被修改,也可以創建或刪除節點。
跨站腳本攻擊(也稱為XSS)指利用網站漏洞從用戶那裡惡意盜取信息。用戶在瀏覽網站、使用即時通訊軟件、甚至在閱讀電子郵件時,通常會點擊其中的鏈接。攻擊者通過在鏈接中插入惡意代碼,就能夠盜取用戶信息。攻擊者通常會用十六進制(或其他編碼方式)將鏈接編碼,以免用戶懷疑它的合法性。網站在接收到包含惡意代碼的請求之後會產成一個包含惡意代碼的頁面,而這個頁面看起來就像是那個網站應當生成的合法頁面一樣。許多流行的留言本和論壇程序允許用戶發表包含HTML和javascript的帖子。假設用戶甲發表了一篇包含惡意腳本的帖子,那麼用戶乙在瀏覽這篇帖子時,惡意腳本就會執行,盜取用戶乙的session信息。有關攻擊方法的詳細情況將在下面闡述。
1、持久型跨站:最直接的危害類型,跨站代碼存儲在服務器(數據庫)。
2、非持久型跨站:反射型跨站腳本漏洞,最普遍的類型。用戶訪問服務器-跨站鏈接-返回跨站代碼。
3、DOM跨站(DOM XSS):DOM(document object model文檔對象模型),客戶端腳本處理邏輯導致的安全問題。
擴展資料:
跨站腳本攻擊產生的原因是網站過於相信用戶的輸入,那麼解決的辦法也很直接,就是從根本上不相信用戶的任何輸入。一個安全的網站應當對任何用戶的任何輸入都要進行檢查,特別是對用戶提交到服務器中保存的數據,更要做篩選。
這種攻擊與反射型攻擊不同的是,它會把自己的攻擊代碼保存在網站的服務器上,這樣,任何訪問了這個頁面的用戶,都會受到這個攻擊。
參考資料來源:
百度百科-跨站腳本攻擊
原創文章,作者:BOETI,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/126398.html