• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    網(wǎng)絡(luò)安全之防SQL注入攻擊淺析

    2014-12-31 00:00:00范科鋒
    計算機光盤軟件與應(yīng)用 2014年12期

    摘 要:當(dāng)前計算機網(wǎng)絡(luò)不斷的發(fā)展,伴隨而來的就是計算機網(wǎng)絡(luò)結(jié)構(gòu)的復(fù)雜化。網(wǎng)絡(luò)安全已經(jīng)擺在我們每個計算機用戶的面前,各計算機用戶都不斷的采用很多網(wǎng)絡(luò)安全的措施,加強網(wǎng)絡(luò)安全防范.但同時,網(wǎng)絡(luò)非法攻擊活動也在不斷地更換各種攻擊方式方法,尋找最薄弱環(huán)節(jié),伺機非法入侵,所以計算機網(wǎng)絡(luò)安全管理就成為了網(wǎng)絡(luò)研究的重點,特別是SQL注入攻擊這種常見的,多發(fā)的網(wǎng)絡(luò)攻擊成為研究當(dāng)下網(wǎng)絡(luò)安全管理的焦點。

    關(guān)鍵詞:網(wǎng)絡(luò)安全;SQL注入攻擊;防范get注入;防范post注入;防范cookies注入

    中圖分類號:TP393.18

    1 SQL注入攻擊相關(guān)概念

    1.1 攻擊簡介

    SQL注入通常是從萬維網(wǎng)端口開始訪問,一般給我們基本的web訪問沒有太大的差別,因此常規(guī)情況下,防火墻都不會對SQL注入發(fā)出警報,如果用戶沒有查看ⅡS日志的習(xí)慣,極有可能遭受長時間的攻擊都不知道。

    1.2 SQL注入攻擊原理

    要闡述SQL注入攻擊原理我們以登錄驗證中的模塊為例,說明SQL注入攻擊的實現(xiàn)方法。SQL注入攻擊往往是SQL語法中的一部分,通過執(zhí)行SQL語句而執(zhí)行入侵者的想要的操作。在登陸模塊中,一般有用戶名(username)和密碼(password)兩個參數(shù),其原理是通過查找user表中的用戶名(username)和密碼(password)的結(jié)果來進行授權(quán)訪問,典型的SQL查詢語句為:

    Select*from users where username='admin' and password='smith’

    假如給username和password賦值“admin'or 1=1--”和“aaa”則SQL腳本解釋器中的程序代碼就變成:

    select*from users where username=’admin’ or 1=1—and password=’aaa’

    通過上面代碼就可以在輸入?yún)?shù)中構(gòu)建SQL語法,且可以刪除數(shù)據(jù)庫中的表,查詢、插入和更新數(shù)據(jù)庫中的數(shù)據(jù)等危險操作,這就是SQL注入攻擊的主要原理

    1.3 入侵操作步驟

    (1)找一個類似http://xxx.xxx.xxx/abc.asp?p=YY的網(wǎng)站。

    (2)在http://xxx.xxx.xxx/abc.asp?p=YY后面追加“and 1=1”,并訪問該網(wǎng)址即http://xxx.xxx.xxx/abc.asp?p=YY and 1=1應(yīng)該與訪問原地址得到的結(jié)果相同。

    (3)在http://xxx.xxx.xxx/abc.asp?p=YY后面追加“and 1=2”,并訪問該網(wǎng)址即

    http://xxx.xxx.xxx/abc.asp?p=YY and 1=2應(yīng)該與訪問原地址得到的結(jié)果不同,并提示數(shù)據(jù)庫錯誤。

    ((2),(3)同時滿足則此網(wǎng)站必定存在SQL漏洞。)

    (4)訪問http://xxx.xxx.xxx/abc.asp?p=YY and exists (select*from網(wǎng)站數(shù)據(jù)庫常用表段名)網(wǎng)站數(shù)據(jù)庫常用表段名:admin users administrator等,如果進入的網(wǎng)頁像步驟二一樣,是正常網(wǎng)頁,證明存在該表段名。找尋該SQL數(shù)據(jù)庫使用的表名,進而尋找網(wǎng)站的管理員名、密碼等信息。我們可以通過Socket編程,把常用表段名寫成一個鏈表,通過Socket編程遍歷一邊,并找到可入侵點。

    (5)訪問http://xxx.xxx.xxx/abc.asp?p=YY and exists select*from第四步找到的可入侵表名。

    2 如何防止SQL注入

    2.1 永遠不要信任用戶的輸入

    對用戶的輸入進行校驗,可以通過正則表達式,或限制長度;對單引號和雙\"-\"進行轉(zhuǎn)換等。

    在構(gòu)造動態(tài)SQL語句時,一定要使用類安全(type-safe)的參數(shù)加碼機制。大多數(shù)的數(shù)據(jù)API,包括ADO和ADO.NET,有這樣的支持,允許你指定所提供的參數(shù)的確切類型(譬如,字符串,整數(shù),日期等),可以保證這些參數(shù)被恰當(dāng)?shù)豦scaped/encoded了,來避免黑客利用它們。一定要從始到終地使用這些特性。

    例如,在ADO.NET里對動態(tài)SQL,你可以像下面這樣重寫上述的語句,使之安全:Dim SSN as String=Request.QueryString(\"SSN\")

    Dim cmd As new SqlCommand(\"SELECT au_lname,au_fname FROM authors WHERE au_id =@au_id\")

    Dim param=new SqlParameter(\"au_id\",SqlDbType.VarChar)param.Value=SSN

    cmd.Parameters.Add(param)

    2.2 當(dāng)然已可以通過防范get注入防范post注入

    防范cookies注入等措施來防止SQL注入。具體的實現(xiàn)代碼如下:

    防范post注入

    If Request.QueryString<>””

    Then StopInjection(Request.QueryString)

    防范post注入

    If Request.Form<>””Then StopInjection(Request.Form)

    防范cookies 注入

    If Request.Cookies<>””Then StopInjection(If Request.Cookies)

    2.3 預(yù)防工具

    Pangolin(中文譯名為穿山甲)一款幫助滲透測試人員進行Sql注入測試的安全工具,是深圳宇造諾賽科技有限公司(Nosec)旗下的網(wǎng)站安全測試產(chǎn)品之一。通過該軟件就能夠經(jīng)過很簡單的操作,達到最顯著的防范及測試SQL攻擊的效果。

    3 結(jié)束語

    本文闡述了防止SQL注入攻擊的基本原理和防御方法來管理我們越來越復(fù)雜的計算機網(wǎng)絡(luò)安全,使得繁瑣的網(wǎng)絡(luò)管理變得簡單,安全,可靠,使網(wǎng)絡(luò)管理系統(tǒng)得以高效地運行??傊?,防止SQL注入攻擊經(jīng)過短短的十多年發(fā)展,已給計算機網(wǎng)絡(luò)安全帶來了一些可喜的變化,人們的生活已經(jīng)和網(wǎng)絡(luò)密不可分,隨著網(wǎng)絡(luò)規(guī)模不斷擴大,人們的思想不斷革新,防止SQL注入攻擊技術(shù)會越來越完善,迎來新的發(fā)展和長足的進步。

    參考文獻:

    [1]林常君.基于web的網(wǎng)絡(luò)設(shè)備管理系統(tǒng)的設(shè)計與實現(xiàn)[J].科技信息,2011(01).

    [2]David Zeltserman.SNMPv3與網(wǎng)絡(luò)管理[M].北京:人民郵電出版社,2000.

    [3]孟洛明.現(xiàn)代網(wǎng)絡(luò)管理技術(shù)[M].北京:郵電大學(xué)出版社,2000.

    [4]薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論[M].北京:高等教育出版社(第三版).

    [5]鐘增勝.注入漏洞的分析及防范[J].重慶工商大學(xué)學(xué)報(自然科學(xué)版).

    [6]蔣繼婭,劉彤,王樹威.Web應(yīng)用中的SQL注入攻擊與防護方案研究[J].計算機安全,2008(05).

    [7]王功明,吳華瑞,趙春江.正則表達式在電子政務(wù)客戶端校驗中的應(yīng)用[J].計算機工程,2007(09).

    [8]周敬利,王曉鋒,余勝生.一種新的反SQL注入策略的研究與實現(xiàn)[J].計算機科學(xué),2006(11).

    作者簡介:范科鋒(1975.10-),男,四川納溪人,碩士,助教,研究方向:計算機應(yīng)用。

    作者單位:四川化工職業(yè)技術(shù)學(xué)院圖文信息中心,四川瀘州 646005

    错那县| 铜川市| 武宁县| 东莞市| 淮安市| 称多县| 福清市| 六盘水市| 英山县| 常熟市| 南靖县| 岳阳市| 镇平县| 新宁县| 林甸县| 马边| 苍溪县| 江达县| 晴隆县| 龙南县| 东方市| 桐柏县| 南漳县| 北川| 鸡西市| 晴隆县| 华坪县| 平武县| 安新县| 合肥市| 土默特左旗| 松阳县| 习水县| 石泉县| 讷河市| 永泰县| 缙云县| 宁蒗| 红河县| 巴南区| 星座|