自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

智匯華云:Web常見安全漏洞分享

云計(jì)算
互聯(lián)網(wǎng)時(shí)代數(shù)據(jù)信息瞬息萬變,隨之而來的是各種網(wǎng)絡(luò)威脅、病毒等各種危害網(wǎng)絡(luò)安全的行為,網(wǎng)絡(luò)安全越來越受到大家的關(guān)注。華云數(shù)據(jù)本期“智匯華云”專欄將解析Web常見安全漏洞,與大家共同探討數(shù)字時(shí)代的安全問題。

互聯(lián)網(wǎng)時(shí)代數(shù)據(jù)信息瞬息萬變,隨之而來的是各種網(wǎng)絡(luò)威脅、病毒等各種危害網(wǎng)絡(luò)安全的行為,網(wǎng)絡(luò)安全越來越受到大家的關(guān)注。華云數(shù)據(jù)本期“智匯華云”專欄將解析Web常見安全漏洞,與大家共同探討數(shù)字時(shí)代的安全問題。

SQL注入

1、什么是SQL注入?

SQL注入,就是通過把SQL命令插入到Web表單提交或輸入域名或頁面請(qǐng)求的查詢字符串,最終達(dá)到欺騙服務(wù)器執(zhí)行惡意的SQL命令。具體來說,它是利用現(xiàn)有應(yīng)用程序,將(惡意的)SQL命令注入到后臺(tái)數(shù)據(jù)庫引擎執(zhí)行的能力,它可以通過在Web表單中輸入(惡意)SQL語句得到一個(gè)存在安全漏洞的網(wǎng)站上的數(shù)據(jù)庫,而不是按照設(shè)計(jì)者意圖去執(zhí)行SQL語句。

2、如何注入?

例子: http://test.com/info?id=1

此URL返回?cái)?shù)據(jù)庫某表的1條數(shù)據(jù)。程序中可能這么寫的,ID為傳入變量:

  1. select * from user where id=‘”+id+“ ’; 

如上,那么查詢語句將是

  1. select * from user where id = ‘1’ 

如果 id= 1‘ or ’1‘=’1,那么查詢語句將是

  1. select * from user where id = ‘1’ or ‘1’=‘1’ 

3、SQL注入原因

①對(duì)提交的數(shù)據(jù)未過濾

②拼裝SQL語句

③不當(dāng)?shù)念愋吞幚?/p>

4、SQL注入防御

(1)字符串長度驗(yàn)證

僅接受指定長度范圍內(nèi)的變量值。sql注入腳本必然會(huì)大大增加輸入變量的長度,通過長度限制,比如用戶名長度為 8 到 20 個(gè)字符之間,超過就判定為無效值。

(2)對(duì)單引號(hào)和雙"-"、下劃線、百分號(hào)等sql注釋符號(hào)進(jìn)行轉(zhuǎn)義

(3)不使用動(dòng)態(tài)拼裝SQL,使用參數(shù)化的SQL進(jìn)行數(shù)據(jù)查詢存取

代碼示例:

  1. String sql = "select id, no from user where id=?"
  2. PreparedStatement ps  
  3. = conn.prepareStatement(sql); 
  4. ps.setInt(1, id); 
  5. ps.executeQuery(); 

(4)框架防御: mybatis

① # 符號(hào)作用為 將傳入的數(shù)據(jù)都當(dāng)成一個(gè)字符串,會(huì)對(duì)自動(dòng)傳入的數(shù)據(jù)加一個(gè)雙引號(hào)。

如:where user_id= #{id}

如果傳入的值是111,那么解析成sql時(shí)的值為 where id ="111"

如果傳入的值是 1’=or ’1’=‘1’ ,則解析成的sql為 whereid “1’=or ’1’=‘1’ “

②$ 符號(hào)則是將傳入的數(shù)據(jù)直接生成在sql中。

如:where user_id= ‘${id}’

如果傳入的值是111,那么解析成sql時(shí)的值為 where id =‘111’

如果傳入的值是 1’=or ’1’=‘1’,則解析成的sql為 where _id =‘1’or ’1’=1’

結(jié)論:# 符號(hào)能夠防止SQL注入, $符號(hào)無法防止SQL注入,$ 符號(hào)一般用于傳入數(shù)據(jù)庫對(duì)象,例如傳入表名

XSS

1、什么是XSS?

往Web頁面里插入惡意html代碼,當(dāng)用戶瀏覽該頁之時(shí),嵌入其中Web里面的html代碼會(huì)被執(zhí)行,從而達(dá)到實(shí)施威脅的特殊目的

2、XSS分類

(1)持久性的XSS(存儲(chǔ)在服務(wù)器端,威脅行為將伴隨著威脅數(shù)據(jù)一直存在)

(2)非持久性的XSS(一次性的,僅對(duì)當(dāng)次的頁面訪問產(chǎn)生影響)

例子:將參數(shù)傳遞至頁面輸出

參數(shù)寫法:

  1. index?value=<script>alert(document.cookie)</script> 

頁面和JS寫法:

  1. <div id=“xss”></div>     |    $(‘#xss’).html(value); 
 

 

3、XSS危害

執(zhí)行任意JS代碼。最常見的做法是獲取COOKIE認(rèn)證信息;其他的就是跳轉(zhuǎn)至惡意網(wǎng)址等,或者配合CSRF漏洞,進(jìn)行創(chuàng)建form表單,進(jìn)行提交,強(qiáng)制使當(dāng)前用戶操作,比如發(fā)帖,刪帖,甚至轉(zhuǎn)賬等。

4、 XSS防護(hù)

(1)過濾用戶輸入的內(nèi)容,常見的是過濾 ‘、”、;、< 、>

(2)在用戶提交數(shù)據(jù)時(shí),對(duì)數(shù)據(jù)進(jìn)行編碼處理。

(3)在輸出頁面時(shí),對(duì)數(shù)據(jù)進(jìn)行編碼處理。

CSRF

1、什么是CSRF?

偽造請(qǐng)求,冒充用戶在站內(nèi)的正常操作

2、CSRF原理

 

3、CSRF危害

威脅方盜用了用戶的身份,可以利用此身份進(jìn)行發(fā)送郵件、發(fā)消息、購買商品、銀行轉(zhuǎn)賬等等用戶可執(zhí)行的操作。

4、CSRF如何防護(hù)

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

此方法為基礎(chǔ)防御,目前Referer是可被改寫和偽造的,并非絕對(duì)安全。

(2)HTTP添加自定義參數(shù)驗(yàn)證

服務(wù)器生成token一份存放在session中,一份放在前端隱藏域中隨請(qǐng)求頭部提交。B不訪問A網(wǎng)站前端拿不到token,請(qǐng)求無法通過驗(yàn)證,達(dá)到防御目的。

URL跳轉(zhuǎn)漏洞

1、什么是URL跳轉(zhuǎn)漏洞?

程序中常會(huì)重定向頁面,在登錄系統(tǒng)中長會(huì)根據(jù)URL中的參數(shù)進(jìn)行重定向,便于用戶登錄之后,調(diào)轉(zhuǎn)到之前的頁面。

2、URL示例

比如: http://www.aa.com/account/login

?from=http://download.aa.com

對(duì)于跳轉(zhuǎn)頁是否是當(dāng)前站點(diǎn)的頁面,或者是否是允許的頁面地址沒有做判斷,當(dāng)?shù)刂犯臑椋?/p>

http://www/aa.com/account/login

?from=http://www.bb.com/

那么用戶登錄后會(huì)跳轉(zhuǎn)到www.bb.com,如果是惡意網(wǎng)址,那么用戶就成為受害者。

3、配合session在URL中傳遞的危害

跳轉(zhuǎn)到的頁面中很容易從HTTP請(qǐng)求頭中獲取到url中session的值,對(duì)于session中驗(yàn)證信息不綁定用戶客戶端信息的情況,發(fā)起威脅方可直接使用,成為之前用戶的身份。

4、URL跳轉(zhuǎn)漏洞防護(hù)

(1)可以確定的URL:配置對(duì)應(yīng)索引文件,通過索引找到對(duì)應(yīng)具體url再進(jìn)行跳轉(zhuǎn)

(2)無法確定的URL:增加規(guī)則校驗(yàn),先通過驗(yàn)證后在進(jìn)行跳轉(zhuǎn)

責(zé)任編輯:武曉燕 來源: 51CTO
相關(guān)推薦

2011-09-28 09:31:18

2009-01-08 19:06:00

服務(wù)器安全Web服務(wù)器

2014-06-03 09:23:41

2010-08-30 13:07:31

2014-06-03 11:36:18

2020-09-29 07:37:17

云計(jì)算安全漏洞配置錯(cuò)誤

2015-03-19 09:36:39

2010-03-16 09:27:31

2019-05-09 12:12:55

華云數(shù)據(jù)醫(yī)療

2010-08-30 09:50:34

2012-09-03 14:22:02

2015-07-09 09:35:37

2009-02-03 09:01:40

2019-02-27 15:46:10

數(shù)據(jù)泄露隱私安全

2010-07-26 15:37:12

telnet安全漏洞

2019-04-10 14:22:23

華云IOT物聯(lián)網(wǎng)

2012-03-20 16:31:13

2019-03-26 15:46:50

Kernel bypaCeph云計(jì)算

2020-04-10 10:31:14

云計(jì)算BYOD物聯(lián)網(wǎng)

2009-02-17 14:07:21

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)