999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

網站注入式攻擊的原理與防范

2013-04-29 00:44:03黃碧玲
計算機時代 2013年8期
關鍵詞:網絡安全

黃碧玲

摘 要: 網站注入式攻擊成為Web應用系統的嚴重安全隱患。通過該類型攻擊,攻擊者能非法獲得對Web應用程序數據庫無限制的訪問權限,進而得到企業和網絡用戶的機密信息,如銀行賬號、交易數據等,給網絡用戶和企業造成了巨大損失。通過對注入式攻擊途徑、動機、流程及原理的分析,結合目前普遍采用的攻擊測試方法,提出一些防范方法和措施。采用這些方法和措施可極大限度地減少網站注入攻擊的可能性,保護數據庫的安全。

關鍵詞: 注入式攻擊; 攻擊原理; 攻擊防范; 網絡安全

中圖分類號:TP309.2 文獻標志碼:A 文章編號:1006-8228(2013)08-22-03

0 引言

網站注入是動態網頁經常存在的一種漏洞(這些漏洞并非Window、IIS、SQL Server或者其他底層代碼的漏洞,而是在這些平臺上運行的由程序員自行編寫的代碼中的漏洞),攻擊者利用這種漏洞可以通過SQL語句直接訪問數據庫,因而對系統的安全產生很大隱患。隨著B/S模式應用開發的發展,相當一部分程序員在編寫代碼的時候,沒有對用戶輸入數據的合法性進行判斷,使應用程序存在著安全隱患。本文通過對注入式攻擊途徑、動機、流程及原理的分析,結合目前普遍采用的攻擊測試方法,提出一些防范方法和措施。這些防范方法可極大程度地減少網站注入攻擊的可能性,保護數據庫的安全。

1 網站注入攻擊途徑、流程及原理分析

1.1 SQL注入攻擊的途徑

用戶通過一定的途徑將自己的輸入提交給Web應用程序,因而SQL注入也就有其相應的攻擊途徑。惡意用戶一般通過客戶端輸入、Server變量以及Cookie三種[1]基本的方式進行畸形SQL語句查詢的提交,從而達到進行SQL注入的最終目的。

通過用戶輸入注入 在客戶端頁面上的輸入是用戶和Web應用程序最主要的交互方式,用戶輸入主要通過HTTP的GET和POST請求提交。Web應用程序通過訪問這些請求變量并引用包含在這些變量中的用戶輸入值(變量值),然后使用這些用戶輸入值,動態地生成SQL查詢語句,提交給后臺數據庫。惡意用戶則通過精心構造用戶輸入值進行SQL注入。

通過Server變量注入 Server變量是包含在HTTP、網絡header和環境變量中的變量。瀏覽器請求和服務端的響應都包含headers。Headers提供有關請求和響應的附加信息,包括瀏覽器生成請求和服務端響應過程的信息。惡意用戶就可能通過偽造HTTP和headers的值操縱數據庫,生成攻擊。

通過Cookie注入 Cookie是Web應用程序產生的包含狀態信息的文件,存儲在客戶端并由客戶端完全控制。因此惡意用戶可以任意處理Cookie內容,若Web應用程序用Cookie的內容動態構造SQL查詢,那么惡意用戶就可以使用Cookie的內容構造SQL查詢,并將攻擊嵌入Cookie提交。

1.2 網站注入攻擊的分類

使用注釋符(- -,#) 使用注釋通常可以使攻擊者繞過驗證。SQL在查詢中支持注釋,如,- -、#等。通過注入注釋符,惡意用戶或者攻擊者可以毫不費力的截斷SQL查詢語句。

重言式攻擊 該類型攻擊是為繞過驗證、識別可注入的參數或者提取數據。這種攻擊的目的是在條件句中注入代碼,使該條件句恒真。攻擊者利用查詢條件中的可注入字段,將條件轉換為重言式,使數據庫返回所有相關行。這類攻擊的結果依賴于攻擊對象在應用程序中的作用,最常見的是繞過驗證和提取數據。

不合法/邏輯錯誤查詢(SQL注入攻擊發現技術) 其攻擊動機是識別可攻擊參數、識別數據庫的類型和版本等信息或提取數據等。該類型的攻擊其實是攻擊的一個預備步驟,用于為其他類型的攻擊收集信息,包括數據庫的類型和結構。語法錯誤可以識別可注入參數,類型轉換錯誤可以推導某列的數據類型或者取得數據,邏輯錯誤可以返回導致錯誤的表和列的名字。從這些錯誤信息中得到的信息為其他攻擊方法收集了必要的攻擊信息。

Union查詢攻擊 Union查詢動機是繞過驗證或者提取數據。攻擊者在查詢語句中注入Union SELECT語句,并且因為用戶控制“SELECT語句”的內容,攻擊者可以得到想要的信息。

附帶查詢攻擊 該類型攻擊是為提取數據、添加和修改數據、實現拒絕服務或者執行遠程命令。該類型的攻擊并不改變原有查詢,而是在原有查詢后插入新的查詢語句。數據庫配置如果允許執行多個查詢語句,那么攻擊者將能在原有查詢后插入任何SQL命令,包括存儲過程(系統或用戶自定義的),因而這種攻擊能造成巨大危害。

利用存儲過程攻擊 數據庫廠商用一些標準存儲過程來擴展數據庫的功能并允許其與系統交互,或者用戶會自定義一些存儲過程。通過其他類型攻擊搜集到數據庫的相關信息(數據庫類型)后,就可以構造執行存儲過程的命令。而人們以為用存儲過程寫程序就能避免注入攻擊漏洞,這樣的說法是錯誤的。

推斷 可以識別可注入參數、提取數據或確定數據庫模式。該種類型的攻擊利用網站對用戶輸入的返回信息,推導數據庫模式和可注入參數。該類型的攻擊所構造的查詢執行后得到的答案有兩種:真或假。

替換編碼 該種攻擊主要是為逃避檢測。通過替換編碼修改注入文本,以達到逃避系統已有檢測機制(如編碼防御或自動防御技術)的目的,經常與其他類型攻擊結合使用。

1.3 網站注入攻擊的流程

網站注入攻擊主要是通過構建特殊的輸入,這些輸入往往是網站語法的一些組合。這些輸入將作為參數傳入Web應用程序。通過執行網站語句而執行攻擊者想要的操作。其主要步驟分為:識別可注入參數→識別數據庫類型和版本→確定數據庫模式→提取數據→添加和修改數據→實現拒絕服務→逃避檢測→繞過驗證→執行命令[2]。

一般流程都可歸納如下。

⑴ 尋找SQL注入點:在含有傳遞參數的動態網頁中,判斷是否存在SQL注入漏洞。

⑵ 判斷數據庫的類型:對于不同的數據庫管理系統其攻擊方式也不同。

⑶ 如果是Access數據庫:通過探測數據庫表名和列名,并探測列值(字段值)了解數據庫的相關信息。該攻擊實施的動機是確定數據庫的模式,主要通過不合法/邏輯錯誤查詢和推斷的攻擊方法實現。在得到數據庫的相關信息(確定數據庫模式)之后,就可以擴張權限。

⑷ 如果是MS SQL Server數據庫系統:首先要判斷存在注入點的數據庫是否支持多句查詢、子查詢、數據庫用戶賬號、數據庫用戶權限等。如果用戶權限為sh,且數據庫中存在xp--cmdshll存儲過程,則可以直接轉⑹。如果用戶權限不是sh,則接下來可以有兩種方法擴張權限:一種是步驟⑶中給出的確定數據庫相關信息;另一種是利用系統表Sysobjeets得到數據庫表名和列名,通過不合法/邏輯錯誤查詢和推斷方法確定字段值。

⑸ 擴張權限:通過步驟⑶、⑷確定了數據庫模式之后就可以擴張權限。

⑹ 實施真正的攻擊:擁有相應的權限,就可以實施攻擊。攻擊包括添加管理員賬號、開放3389遠程終端服務、通過后臺的上傳功能上傳網頁木馬實施對服務器的控制等。

1.4 網站注入的實現原理

根據網站注入的原理不同,網站注入方式分為三類:常規注入、字典猜解注入和盲注入[3]。

常規注入 常規注入方法是根據攻擊者惡意構造的SQL語句返回的錯誤信息的內容獲取有用的信息。在實施真正的攻擊之前需要收集數據庫的相關信息,并以文字的形式分類對這些攻擊的依據和所能得到的信息等方面進行分析。通過攻擊者惡意構造的SQL語句返回的錯誤信息的內容獲取了數據庫用戶的名字。運用同樣的原理,可以判斷網站是否存在漏洞,以及數據庫的類型、用戶權限、表名、列名和字段名。

字典猜解注入 當前管理員和多數網絡用戶的安全意識不強,字段名稱都遵循某種特定方式,字典猜解將常用的字段名稱生成一部字典,用該字典中的數據探測數據庫的相關信息。

盲注入 盲注入方法是基于推理的。通過問服務器“真/假”問題,查看客戶端頁面反應獲取信息。也就是說,在提交的數據中注入猜測的數據,提交到數據庫中,如果正確返回結果,則該數據即為所要猜測的值,如果返回錯誤,則繼續問是否為其他數據。

2 防御網站注入攻擊方法

2.1 數據庫管理員角度

⑴ 數據庫管理員從數據庫服務器上移除所有數據庫的示例腳本,以便減少冗余腳本數據量。

⑵ 移除不需要用到的存儲過程,尤其是訪問注冊表的存儲過程。

⑶ 為每一個網站單獨分配一個專門的操作賬戶,盡可能減少使用sa等默認賬戶登錄數據庫及系統。

2.2 應用程序設計員角度

大部分Web應用常見漏洞,均是由于在Web應用開發中,開發者沒有對用戶輸入的參數進行檢測或檢測不嚴格造成的。所以,Web應用開發者應該樹立強烈的安全意識,在開發中編寫安全代碼;對用戶提交的URL、查詢關鍵字、HTTP頭、POSE數據等進行嚴格的檢測和限制,只接受一定長度范圍內、采用適當格式及編碼的字符,阻塞、過濾或者忽略其他的任何字符。

⑴ 對異常處理錯誤頁面跳轉到指定頁面,杜絕將異常處理信息過多的暴露給用戶。

⑵ 對于動態構造SQL 查詢的場合,強烈建議使用以下技術以減少注入漏洞:

A. 替換單引號,即把所有單獨出現的單引號改成兩個單引號,防止攻擊者修改SQL命令的含義[4];

B. 刪除用戶輸入內容中的所有連字符,防止攻擊者構造出類似“select*from tbuser where userName='admin1'-and passWord=''”之類的查詢,因為這類查詢的后半部分已經被注釋掉,不再有效,攻擊者只要知道一個合法的用戶登錄名稱,根本不需要知道用戶的密碼就可以順利獲得訪問權限。對于用來執行查詢的數據庫帳戶,限制其權限。用不同的帳戶執行查詢、插入、更新、刪除操作。由于隔離了不同帳戶可執行的操作,因而也就防止了原本用于執行SELECT命令的地方卻被用于執行INSERT、UPDATE或DELETE命令。

⑶ 限制表單或查詢字符串輸入的長度。如果用戶的登錄名字最多只有10個字符,那么不要認可表單中輸入的10個以上的字符,這將大大增加攻擊者在SQL命令中插入有害代碼的難度。

⑷ 將用戶登錄名稱、密碼等數據加密保存。加密用戶輸入的數據,然后再將它與數據庫中保存的數據作比較,用戶輸入的數據不再對數據庫有任何特殊的意義,從而也就防止了攻擊者注入SQL命令。

2.3 系統管理員角度

作為負責網站日常維護管理工作的Web管理員,必須及時跟蹤并安裝最新的、支撐Web網站運行的各種軟件的安全補丁,確保攻擊者無法通過軟件漏洞對網站進行攻擊。除了軟件本身的漏洞外,Web服務器、數據庫等不正確的配置也可能導致Web應用安全問題。Web網站管理員應該對網站各種軟件配置進行仔細檢測,降低出現安全問題的概率。

此外,Web管理員還應該定期審查Web服務器日志,檢測是否存在異常訪問,及早發現潛在的安全問題。

3 結束語

本文深入介紹并討論了SQL注入攻擊的途徑、分類和注入的流程、原理等,結合目前普遍采用的攻擊測試方法,提出了針對數據庫管理員、應用程序設計員和系統管理員對防范注入攻擊方法,極大限度地減少網站注入攻擊的可能性,保護數據庫的安全。然而,通過人工的方法對網站存在的SQL注入式漏洞進行檢測,容易出現遺漏,因此,下一步將重點研究注入式漏洞的自動檢測技術及其應用。

參考文獻:

[1] Anley C. Advanced SQL injection in SQL server applications[J].White paper, Next Generation Security Software Ltd,2002.

[2] Halfond W G, Viegas J, Orso A. A classification of SQL-injection attacks and countermeasures[C]//Proceedings of the IEEE International Symposium on Secure Software Engineering,Arlington,VA,USA,2006:13-15

[3] 張卓.SQL注入技術與防范措施研究[D].上海交通大學,2007:50-51

[4] Yuki Kosuga, Kenji Kono, Miyuki Hanaoka, Miho Hishiyama, Yu Takahama. Sania:Syntactic and Semantic Analysis for Automated Testing against SQL injection. IEEE Computer Society 2007. Miami Beach,Florida,USA.2007.USA.,IEEE 2007:107-117

猜你喜歡
網絡安全
網絡安全(上)
網絡安全知多少?
工會博覽(2023年27期)2023-10-24 11:51:28
新量子通信線路保障網絡安全
網絡安全
網絡安全人才培養應“實戰化”
上網時如何注意網絡安全?
網絡安全與執法專業人才培養探索與思考
設立網絡安全專項基金 促進人才培養
網絡安全監測數據分析——2015年11月
互聯網天地(2016年1期)2016-05-04 04:03:20
打造信息網絡安全的銅墻鐵壁
主站蜘蛛池模板: 午夜视频免费一区二区在线看| 国产精品久久自在自2021| 亚洲欧美综合在线观看| 国产免费久久精品99re丫丫一| 欧美在线国产| 真实国产乱子伦高清| 国产成人久久777777| 亚洲无线视频| 成年人久久黄色网站| 暴力调教一区二区三区| 韩国福利一区| 国产精品黄色片| 久久香蕉国产线看观| 就去色综合| 精品少妇人妻av无码久久| 欧美一区国产| 真实国产乱子伦视频| 亚洲欧美日韩另类在线一| 免费在线成人网| 456亚洲人成高清在线| 久久香蕉欧美精品| 国产综合网站| 国产午夜精品鲁丝片| 午夜色综合| 久久青草视频| 国产在线91在线电影| 欧美区一区| 色综合国产| 欧美第一页在线| 亚洲福利片无码最新在线播放| 久久精品国产在热久久2019| 无码在线激情片| 欧美精品在线免费| 婷婷99视频精品全部在线观看| 国产精品男人的天堂| 成年人免费国产视频| 日韩精品无码免费专网站| 亚洲一区色| 婷婷在线网站| 亚洲浓毛av| 911亚洲精品| 国产一区二区三区在线观看视频| 精品一区二区三区视频免费观看| 蜜臀av性久久久久蜜臀aⅴ麻豆| 日韩高清一区 | 四虎AV麻豆| 欧美激情视频一区| 制服丝袜一区| 一级做a爰片久久免费| 国产成人喷潮在线观看| 激情综合婷婷丁香五月尤物| 东京热av无码电影一区二区| 国产精品福利在线观看无码卡| 一级毛片免费不卡在线视频| 毛片基地视频| 无码AV日韩一二三区| 熟妇人妻无乱码中文字幕真矢织江 | 国内精品视频在线| 日韩第一页在线| 欧美国产三级| 狠狠色丁香婷婷| 高清无码一本到东京热| 一级不卡毛片| 欧洲在线免费视频| 成色7777精品在线| 国产成人免费手机在线观看视频| 中文字幕天无码久久精品视频免费 | 免费在线视频a| 亚洲欧美日韩中文字幕在线| 极品av一区二区| 综合色在线| 亚洲欧美日韩中文字幕在线| av无码一区二区三区在线| 久久国产亚洲偷自| 精品欧美一区二区三区在线| 国产精品网址在线观看你懂的| 四虎影视8848永久精品| 亚洲AV无码乱码在线观看代蜜桃 | 青青草91视频| 欧美综合在线观看| 伊伊人成亚洲综合人网7777| 亚洲三级成人|