亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        SQL注入攻擊與防范研究

        2011-08-15 00:48:29天津市信息中心應(yīng)用處劉云志
        河南科技 2011年8期
        關(guān)鍵詞:程序員攻擊者漏洞

        天津市信息中心應(yīng)用處 劉云志

        SQL注入攻擊與防范研究

        天津市信息中心應(yīng)用處 劉云志

        SQL注入攻擊是指攻擊者利用提交專門設(shè)計(jì)的數(shù)據(jù)庫(kù)查詢代碼,欺騙服務(wù)器執(zhí)行惡意的SQL命令,從而獲取用戶密碼等保密信息,甚至獲取主機(jī)控制權(quán)限的行為。SQL注入攻擊利用的是SQL語(yǔ)法,由于其廣泛性、易學(xué)性和難以捕獲性已經(jīng)逐漸成為互聯(lián)網(wǎng)上的主流黑客攻擊方式。目前,互聯(lián)網(wǎng)上的多種Web應(yīng)用程序都面臨SQL注入的危險(xiǎn),多家網(wǎng)站都曾經(jīng)或正在被SQL注入攻擊,這種攻擊目前正在加速泛濫。統(tǒng)計(jì)表明,在互聯(lián)網(wǎng)上的Web服務(wù)器遭受的各類應(yīng)用層攻擊中,SQL注入占有極大的比例。

        由于多數(shù)程序員不了解SQL注入漏洞的知識(shí),目前互聯(lián)網(wǎng)上網(wǎng)站經(jīng)常遭受SQL注入攻擊。本文,筆者針對(duì)PHP+MySQL型和ASP+SQLServer型Web程序的SQL注入攻擊防范措施進(jìn)行了詳細(xì)闡述,并給出了預(yù)防SQL注入漏洞的方法,有助于提高Web應(yīng)用程序員的安全意識(shí)和Web程序的安全性。

        一、SQL注入原理

        1. SQL注入原理。SQL注入攻擊是指黑客在用戶交互端精心編寫一些SQL語(yǔ)句,把特殊的SQL指令語(yǔ)句插入到系統(tǒng)實(shí)際SQL語(yǔ)句中并執(zhí)行它,從而獲取主機(jī)控制權(quán)限的攻擊方法。SQL注入是從正常的WWW端口訪問(wèn),而且表面看起來(lái)跟一般的Web頁(yè)面訪問(wèn)沒(méi)什么區(qū)別,所以目前市面上的防火墻不會(huì)對(duì)SQL注入發(fā)出警報(bào)。以PHP語(yǔ)言為例,如果用戶的輸入能夠影響腳本中SQL命令的生成,那么很可能在添加了單引號(hào)、#號(hào)等轉(zhuǎn)義命令字符后,能夠改變最終生成的SQL命令。

        2. 舉例說(shuō)明。如果程序員在編程時(shí)沒(méi)有對(duì)用戶輸入的變量$U和$P進(jìn)行合理的限制,當(dāng)攻擊者把用戶名輸入為admin’#的時(shí)候,輸入字符串中的單引號(hào)和腳本中的單引號(hào)形成配對(duì),而輸入字符串中的“#”號(hào)對(duì)于mysql語(yǔ)言來(lái)說(shuō)是行注釋符,后邊的語(yǔ)句將被當(dāng)做注釋處理掉。這使攻擊者可以輕易繞過(guò)身份驗(yàn)證機(jī)制,因此,沒(méi)有正確密碼也能看到管理員的信息。對(duì)于SQL注入攻擊,很多程序員對(duì)它仍然沒(méi)有足夠的重視,編寫的網(wǎng)站中遺留了大量SQL注入攻擊漏洞。加上許多專門的SQL注入軟件(如NBSI)的“蓬勃發(fā)展”,使得一個(gè)既不懂編程又不懂SQL的人,只要知道如何操作這個(gè)軟件就可以輕而易舉地入侵一家網(wǎng)站。

        二、SQL注入攻擊的特點(diǎn)

        1.廣泛性。SQL注入攻擊利用的是簡(jiǎn)單的SQL語(yǔ)法,因此所有基于SQL語(yǔ)言標(biāo)準(zhǔn)的Web應(yīng)用程序都可能成為SQL注入攻擊的目標(biāo)。如果沒(méi)有對(duì)輸入的SQL語(yǔ)句做嚴(yán)格的技術(shù)處理,理論上都會(huì)存在SQL注入漏洞安全隱患。市場(chǎng)上主流的Web應(yīng)用程序均發(fā)現(xiàn)存在SQL注入漏洞的問(wèn)題。

        2.危害大。通過(guò)SQL注入攻擊可以控制整個(gè)Web應(yīng)用系統(tǒng),在不經(jīng)授權(quán)的情況下對(duì)數(shù)據(jù)做任意地修改,甚至惡意篡改網(wǎng)頁(yè)的內(nèi)容,破壞性極大。

        3.技術(shù)要求低。目前互聯(lián)網(wǎng)上出現(xiàn)了許多SQL注入攻擊工具,如明小子、桂林老兵等都是非常出名的攻擊工具。攻擊者無(wú)需專業(yè)知識(shí),直接利用此類工具軟件便可隨意地對(duì)存在SQL注入攻擊漏洞的網(wǎng)站實(shí)施攻擊。

        三、SQL注入攻擊檢測(cè)與防范

        目前針對(duì)Web服務(wù)器的SQL注入攻擊技術(shù)層出不窮,但其內(nèi)部機(jī)理都是利用畸形的SQL語(yǔ)句通過(guò)客戶端瀏覽器與服務(wù)器之間的共享連接來(lái)實(shí)現(xiàn)繞過(guò)認(rèn)證獲取敏感信息。如何讓系統(tǒng)管理者采取有效的防范措施阻止內(nèi)部信息的泄露,將整個(gè)系統(tǒng)的威脅降至最低,是目前服務(wù)器防守的關(guān)鍵。

        1. SQL注入攻擊檢測(cè)方法。SQL注入攻擊檢測(cè)分為入侵前的檢測(cè)和入侵后的檢測(cè),入侵前檢測(cè)可以手工測(cè)試也可以通過(guò)軟件檢測(cè),入侵后檢測(cè)主要是針對(duì)日志的檢測(cè)。

        (1)數(shù)據(jù)庫(kù)檢查。使用HDSI、NBSI和Domain等SQL注入攻擊軟件工具進(jìn)行SQL注入攻擊后,都會(huì)在數(shù)據(jù)庫(kù)中生成一些臨時(shí)表。通過(guò)查看數(shù)據(jù)庫(kù)中最近新建表的結(jié)構(gòu)和內(nèi)容,就可以判斷是否曾經(jīng)發(fā)生過(guò)SQL注入攻擊。

        (2)IIS日志檢查。在Web服務(wù)器中如果啟用了日志記錄,則IIS日志會(huì)記錄訪問(wèn)者的IP地址、訪問(wèn)文件等信息,SQL注入攻擊往往會(huì)大量訪問(wèn)某一個(gè)頁(yè)面文件(存在SQL注入點(diǎn)的動(dòng)態(tài)網(wǎng)頁(yè)),且日志文件也會(huì)急劇增加。

        2. 一般SQL注入攻擊的防范方法。

        (1)IIS服務(wù)器安全設(shè)置。攻擊者常用錯(cuò)誤信息判斷SQL漏洞是否存在,可以修改IIS的返回信息,使得所有錯(cuò)誤返回一樣的信息,攻擊者無(wú)從獲取網(wǎng)站信息??梢孕薷腃:WINDOWSHelp iisHelpcommon目錄下的500-100.asp文件為統(tǒng)一格式的500.htm。對(duì)于靜態(tài)網(wǎng)站,一般不設(shè)置腳本可執(zhí)行權(quán)限,動(dòng)態(tài)網(wǎng)站也只設(shè)置純腳本權(quán)限。對(duì)于用戶上傳的文件設(shè)置為無(wú)可執(zhí)行權(quán)限,上傳文件夾不放置系統(tǒng)配置文件。IIS如無(wú)匿名登錄需求,則可取消該項(xiàng)服務(wù)。

        (2)功能代碼端設(shè)置。程序員要習(xí)慣將應(yīng)用系統(tǒng)中的密碼字段進(jìn)行加密(如最常見(jiàn)的MD5加密),這不僅僅是為了隱藏用戶信息,尊重用戶隱私,更重要的是提高系統(tǒng)的安全性。也就是在程序中要對(duì)用戶輸入的信息進(jìn)行檢驗(yàn),以達(dá)到SQL攻擊的防御效果。目前這種檢驗(yàn)方法一般有2種:替換或刪除敏感字符串,在服務(wù)器正式處理前對(duì)提交數(shù)據(jù)進(jìn)行檢驗(yàn)。

        (3)SQL Server安全配置。用于程序連接數(shù)據(jù)庫(kù)的用戶不應(yīng)使用服務(wù)器角色組,而應(yīng)使用數(shù)據(jù)庫(kù)用戶角色組成員。SA級(jí)別的權(quán)限是不能隨便配置的,黑客SQL注入得手后調(diào)用xp_cmdshell命令就可以得到系統(tǒng)的最高權(quán)限。最好的方法是只給予db_Reader和db_ Writer權(quán)限,遇到有需要備份的用戶最好另行新建用戶。SQL Server可以精確地設(shè)置某一數(shù)據(jù)庫(kù)中各個(gè)表的select、update、delete等操作的權(quán)限,開發(fā)人員應(yīng)根據(jù)應(yīng)用系統(tǒng)的不同功能要求,合理地配置好這些權(quán)限。

        (4)對(duì)系統(tǒng)一級(jí)的設(shè)置。例如,使用防火墻關(guān)閉TCP1433和UDP1434端口對(duì)外的連接,給系統(tǒng)和SQL Sevrer甚至IIS打上最新的補(bǔ)丁,及時(shí)檢查系統(tǒng)是否出現(xiàn)弱口令用戶,一旦發(fā)現(xiàn)要及時(shí)修改密碼等。

        猜你喜歡
        程序員攻擊者漏洞
        為了讓媽媽看懂地圖,一位“野生程序員”做了個(gè)小程序
        漏洞
        基于微分博弈的追逃問(wèn)題最優(yōu)策略設(shè)計(jì)
        怎樣成為一名優(yōu)秀程序員
        幼兒100(2020年29期)2020-10-21 06:17:58
        正面迎接批判
        愛(ài)你(2018年16期)2018-06-21 03:28:44
        程序員之子
        意林(2017年24期)2018-01-02 22:49:14
        三明:“兩票制”堵住加價(jià)漏洞
        漏洞在哪兒
        加班
        三月三(2016年6期)2016-06-21 10:25:33
        高鐵急救應(yīng)補(bǔ)齊三漏洞
        色婷婷五月综合激情中文字幕| 看黄色亚洲看黄色亚洲| 好看的国内自拍三级网站| 一区在线视频免费播放| 亚洲国产精品毛片av不卡在线| 丰满少妇人妻无码专区| 日韩精品视频在线一二三| 国产tv不卡免费在线观看| 99久久超碰中文字幕伊人| 国产亚洲精品aaaa片app| 一区二区av日韩免费| 亚洲国产av一区二区四季| 久久久久亚洲av成人网人人网站| 久久免费视频国产| 热热久久超碰精品中文字幕| 国内精品少妇高潮视频| 国产午夜精品一区二区三区嫩草| 无遮挡网站| 日本高清在线一区二区三区 | 成人无码av免费网站| 野花在线无码视频在线播放| 777久久| 一区二区在线观看日本视频| 乱色精品无码一区二区国产盗| 亚洲男人av香蕉爽爽爽爽| 国产美女久久久亚洲综合| 国产让女高潮的av毛片| 欧美人和黑人牲交网站上线| 国产在线无码免费视频2021 | 成人无码网www在线观看| 久久一区二区av毛片国产| 国产伦人人人人人人性| 欧美激情在线不卡视频网站| 在线日韩中文字幕乱码视频| 久久成人国产精品一区二区| 搡老熟女老女人一区二区| 99在线无码精品秘 人口| 蜜桃臀av一区二区三区| 免费人成视频在线| 国产精品98视频全部国产| 国产精品一区二区三区四区亚洲|