XSS全名:Cross-Site-Scripting, 理論上縮小應(yīng)該為 CSS 但為了和 CSS(層疊樣式表)進(jìn)行區(qū)分,改了個(gè)名字叫XSS.
XSS攻擊通常指的是通過利用網(wǎng)頁開發(fā)時(shí)留下的漏洞,通過巧妙的方法注入惡意指令代碼到網(wǎng)頁,使用戶加載并執(zhí)行攻擊者惡意制造的網(wǎng)頁程序。這些惡意網(wǎng)頁程序通常是JavaScript,但實(shí)際上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。攻擊成功后,攻擊者可能得到包括但不限于更高的權(quán)限(如執(zhí)行一些操作)、私密網(wǎng)頁內(nèi)容、會(huì)話和cookie等各種內(nèi)容
HTML是一種超文本標(biāo)記語言,通過將一些字符特殊地對待來區(qū)別文本和標(biāo)記,例如,小于符號(<)被看作是HTML標(biāo)簽的開始,<title>與</title>之間的字符是頁面的標(biāo)題等等。當(dāng)動(dòng)態(tài)頁面中插入的內(nèi)容含有這些特殊字符(如<)時(shí),用戶瀏覽器會(huì)將其誤認(rèn)為是插入了HTML標(biāo)簽,當(dāng)這些HTML標(biāo)簽引入了一段JavaScript腳本時(shí),這些腳本程序就將會(huì)在用戶瀏覽器中執(zhí)行。所以,當(dāng)這些特殊字符不能被動(dòng)態(tài)頁面檢查或檢查出現(xiàn)失誤時(shí),就將會(huì)產(chǎn)生XSS漏洞。
與釣魚攻擊相比,XSS攻擊所帶來的危害更大,通常具有如下特點(diǎn):
①由于XSS攻擊在用戶當(dāng)前使用的應(yīng)用程序中執(zhí)行,用戶將會(huì)看到與其有關(guān)的個(gè)性化信息,如賬戶信息或“歡迎回來”消息,克隆的Web站點(diǎn)不會(huì)顯示個(gè)性化信息。
②通常,在釣魚攻擊中使用的克隆Web站點(diǎn)一經(jīng)發(fā)現(xiàn),就會(huì)立即被關(guān)閉。
③許多瀏覽器與安全防護(hù)軟件產(chǎn)品都內(nèi)置釣魚攻
若我們在評論里輸入了一段可執(zhí)行的javascr,讓他彈出 OK,當(dāng)把評論提交后,如果沒有網(wǎng)站沒有做字符的過濾處理的話,那么我們提交的腳本就會(huì)加載到頁面里,但是別忘了他是一個(gè)JS的alert方法,然后大家一打開評論頁面就會(huì)彈出 OK.
可能的幾種XSS注入方式
XSS腳本攻擊防御方式:
G版本通用外掛開發(fā) UG Open/Grip 教程
$$ 注釋
$$ Grip啟動(dòng)和編譯:先找到UG的安裝路徑,如C:\Program Files\EDS\Unigraphics NX。
$$ 進(jìn)入該路徑下的UGOPEN目錄,找到grade.bat文件,打開它,將環(huán)境變量base_dir
$$ 設(shè)置成set base_dir=C:\Program Files\EDS\Unigraphics NX,保存并運(yùn)行。
$$ Grip程序的編寫和編譯:在Grip的運(yùn)行程序中,鍵入4,將你編寫的Grip程序所在的目
$$ 錄寫入并回車。在Grip的運(yùn)行程序中,鍵入1,寫入新建Grip程序的文件名并回車,此時(shí)
$$ Grip會(huì)打開寫字板,你可以在其中寫入你的程序。在Grip的運(yùn)行程序中,鍵入2,寫入
$$ 所編譯的文件名,編譯無錯(cuò)后,鍵入3,寫入所鏈接的文件名,鏈接無錯(cuò)后完成。
$$ 你所編寫的Grip程序保存成*.grs文件,編譯后Grip會(huì)生成*.gri文件,鏈接后Grip會(huì)
$$ 生成*.grx文件,此文件為Grip的運(yùn)行文件。
$$ Grip程序的運(yùn)行:打開UG,點(diǎn)擊File->Execute->Grip,選擇*.grx文件,就可運(yùn)行它。
$$ 編譯時(shí)應(yīng)先編譯子函數(shù)文件,生成*.gri,子函數(shù)文件不需要鏈接,此時(shí)再編譯主函數(shù)
$$ 文件,生成*.gri,最后鏈接成*.grx。
$$ Grip主函數(shù)文件必須以HALT結(jié)束,Grip子函數(shù)文件必須以RETURN結(jié)束。
$$ 定義的變量不能超過6個(gè)字符,Grip會(huì)認(rèn)為Point_1和Point_2是同一個(gè)變量。
$$ 一行不能超過80個(gè)字符,若超過,可用$符號來換行。
$$ Grip不區(qū)分大小寫,也就是Grip會(huì)認(rèn)為POINT和point都是畫點(diǎn)函數(shù),但是我建議Grip
$$ 的函數(shù)名和關(guān)鍵字用大寫,用戶定義的變量用小寫。但是用戶定義的變量不能和Grip的
$$ 函數(shù)名和關(guān)鍵字重名。
$$ Grip的幫助文件在C:\EDS\Unigraphics NX\UGDOC\html_files\mainlibrary.chm\
$$ Open\GRIP Reference Guide下。一個(gè)簡便的Grip函數(shù)查找方法:打開...\Word &
$$ Symbol Lists\Major Word List,根據(jù)首字母來查函數(shù)。
HALT $$ 結(jié)束語
ideo標(biāo)簽
作用: 播放視頻
格式1:
video標(biāo)簽的屬性
src: 告訴video標(biāo)簽需要播放的視頻地址
autoplay: 告訴video標(biāo)簽是否需要自動(dòng)播放視頻
controls: 告訴video標(biāo)簽是否需要顯示控制條
poster: 告訴video標(biāo)簽視頻沒有播放之前顯示的占位圖片
loop: 告訴video標(biāo)簽循環(huán)播放視頻. 一般用于做廣告視頻
preload: 告訴video標(biāo)簽預(yù)加載視頻, 但是需要注意preload和autoplay相沖, 如果設(shè)置了autoplay屬性, 那么preload屬性就會(huì)失效
muted:告訴video標(biāo)簽視頻靜音
width/height: 和img標(biāo)簽中的一模一樣
格式2
第二種格式存在的意義
由于視頻數(shù)據(jù)非常非常的重要, 所以五大瀏覽器廠商都不愿意支持別人的視頻格式, 所以導(dǎo)致了沒有一種視頻格式是所有瀏覽器都支持的這個(gè)時(shí)候W3C為了解決這個(gè)問題, 所以推出了第二個(gè)video標(biāo)簽的格式
ideo標(biāo)簽的第二種格式存在的意義就是為了解決瀏覽器適配問題. video 元素支持三種視頻格式, 我們可以把這三種格式都通過source標(biāo)簽指定給video標(biāo)簽, 那么以后當(dāng)瀏覽器播放視頻時(shí)它就會(huì)從這三種中選擇一種自己支持的格式來播放
注意點(diǎn):
當(dāng)前通過video標(biāo)簽的第二種格式雖然能夠指定所有瀏覽器都支持的視頻格式, 但是想讓所有瀏覽器都通過video標(biāo)簽播放視頻還有一個(gè)前提條件, 就是瀏覽器必須支持HTML5標(biāo)簽, 否則同樣無法播放
在過去的一些瀏覽器是不支持HTML5標(biāo)簽的, 所以為了讓過去的一些瀏覽器也能夠通過video標(biāo)簽來播放視頻, 那么我們以后可以通過一個(gè)JS的框架叫做html5media來實(shí)現(xiàn)
audio標(biāo)簽
作用: 播放音頻
格式:
注意點(diǎn):
audio標(biāo)簽的使用和video標(biāo)簽的使用基本一樣, video中能夠使用的屬性在audio標(biāo)簽中大部分都能夠使用, 并且功能都一樣. 只不過有3個(gè)屬性不能用, height/width/poster
詳情和概要標(biāo)簽
作用:利用summary標(biāo)簽來描述概要信息, 利用details標(biāo)簽來描述詳情信息
默認(rèn)情況下是折疊展示, 想看見詳情必須點(diǎn)擊
格式:
marquee標(biāo)簽
作用: 跑馬燈效果
格式:
屬性:
direction: 設(shè)置滾動(dòng)方向 left/right/up/down
scrollamount: 設(shè)置滾動(dòng)速度, 值越大就越快
loop: 設(shè)置滾動(dòng)次數(shù), 默認(rèn)是-1, 也就是無限滾動(dòng)
behavior: 設(shè)置滾動(dòng)類型 slide滾動(dòng)到邊界就停止, alternate滾動(dòng)到邊界就彈回
注意點(diǎn):
marquee標(biāo)簽不是W3C推薦的標(biāo)簽, 在W3C官方文檔中也無法查詢這個(gè)標(biāo)簽, 但是各大瀏覽器對這個(gè)標(biāo)簽的支持非常好
HTML中被廢棄的標(biāo)簽
— 由于HTML現(xiàn)在只負(fù)責(zé)語義而不負(fù)責(zé)樣式.但是HTML一開始有一部分標(biāo)簽連樣式也包攬了, 所以這部分標(biāo)簽都被廢棄了
b(Bold)作用: 將文本字體加粗
格式:<b>將文本字體加粗</b>
u(Underlined)作用: 為文本添加下劃線
格式:<u>為文本添加下劃線</u>
i(Italic)作用: 顯示斜體文本效果
格式:<i>顯示斜體文本效果</i>
s(Strikethrough)作用: 為文本添加刪除線
格式:<s>為文本添加刪除線</s>
為了彌補(bǔ) b、u、i、s標(biāo)簽的不足, W3C又推出了一組新的標(biāo)簽, 這些標(biāo)簽在顯示上
看似和buis沒什么區(qū)別
, 但是在語義上卻有重大區(qū)別
格式:<del>已刪除的文本</del>
格式:<em>強(qiáng)調(diào)內(nèi)容</em>
格式:<ins>新插入的文本</ins>
格式:<strong>著重內(nèi)容</strong>
strong作用: 著重內(nèi)容
ins(Inserted)作用: 新插入的文本
em(Emphasized)作用:強(qiáng)調(diào)內(nèi)容
del(Deleted)作用: 已刪除的文本
其它更多詳見維基百科
HTML實(shí)體
我們想在頁面上輸出<h1>
這些字符,但是HTML認(rèn)為這是一個(gè)標(biāo)簽, 所以如果需要輸出一些特殊的字符需要通過字符實(shí)體來實(shí)現(xiàn)
lt是英語less than 小于的意思, ‹
可以在頁面上輸出一個(gè)小于符號
gt是英語greater than 大于的意思, >
可以在頁面上輸出一個(gè)大于符號
html中對空格,縮進(jìn),換行不敏感,如果同時(shí)出現(xiàn)多個(gè)空格縮進(jìn)或者執(zhí)行,頁面只會(huì)把它們當(dāng)作一個(gè)空格來解析。所以想要在html中輸出空格必須使用
來實(shí)現(xiàn), 一個(gè)
就代表一個(gè)空格
html對中文空格敏感, 也就是說可以顯示中文空格, 但是不推薦這樣使用
是英語non-breaking spacing, 翻譯為不打斷空格的意思
*請認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。