安華金和全面適配國產(chǎn)化操作系統(tǒng)及芯片CPU
數(shù)據(jù)安全治理關(guān)鍵技術(shù)之數(shù)據(jù)庫脫敏技術(shù)詳解
數(shù)據(jù)安全治理之API監(jiān)測系統(tǒng) ,解決API接口安全問題【安華金和】
新一代數(shù)據(jù)庫脫敏技術(shù),為敏感數(shù)據(jù)建立保護盾!
數(shù)據(jù)庫脫敏系統(tǒng)與金融行業(yè)案例解讀
數(shù)據(jù)安全治理建設(shè)思路的著力點——數(shù)據(jù)安全咨詢服務【安華金和】
數(shù)據(jù)庫防火墻功能有哪些?-數(shù)據(jù)安全-安華金和
數(shù)據(jù)安全關(guān)鍵技術(shù)之數(shù)據(jù)庫脫敏技術(shù)詳解【安華金和】
黑客滲透時使用的攻擊腳本,結(jié)構(gòu)為:腳本名稱、腳本功能詳細描述、腳本危害程度、漏洞攻擊代碼程序等部分。
微軟每個月第二周的星期二發(fā)布補?。ò琈SSQL),這一天被稱為Black Tuesday。很多黑客會通宵達旦去研究微軟發(fā)布的補丁,通過補丁對比尋找微軟修復的漏洞。由于客戶不一定能馬上及時更新微軟的最新補丁,所以黑客可能 會利用這些從補丁中尋找到的漏洞對目標軟件進行攻擊。
黑客用于對軟件進行攻擊的一段含有惡意代碼的輸入。它可能是一段攻擊性的網(wǎng)絡(luò)數(shù)據(jù)包,也可能是一段帶有攻擊性的畸形串。它是黑客用于發(fā)動緩沖區(qū)溢出攻擊的具體代碼。
Shellcode實際是一段代碼(也可以是填充數(shù)據(jù)),是用來發(fā)送到服務器利用特定漏洞的代碼,一般可以獲取權(quán)限。exploit中的一部分,是 緩沖區(qū)溢出攻擊中植入進程的代碼。當緩沖區(qū)溢出成功劫持到函數(shù)返回地址之后,則進入shellcode的流程,執(zhí)行shellcode部分的代碼。
緩沖區(qū)溢是指源緩沖區(qū)的數(shù)據(jù)向小于自身位數(shù)的緩沖區(qū)復制數(shù)據(jù)時,超越目標緩沖區(qū)的位數(shù)邊界,并且數(shù)據(jù)庫未對存入數(shù)據(jù)進行邊界判斷,最終導致目標緩沖 區(qū)爆滿。目標緩沖區(qū)內(nèi)存改變程序控制流、奪取操作系統(tǒng)、禁止訪問等多種結(jié)果。緩沖區(qū)溢出主要可以分成三種:靜態(tài)數(shù)據(jù)溢出、棧溢出和堆溢出。
緩沖區(qū)溢出,簡單的說就是計算機對接收的輸入數(shù)據(jù)沒有進行有效的檢測(理想的情況是程序檢查數(shù)據(jù)長度并不允許輸入超過緩沖區(qū)長度的字符),向緩沖區(qū)內(nèi)填充數(shù)據(jù)時超過了緩沖區(qū)本身的容量,而導致數(shù)據(jù)溢出到被分配空間之外的內(nèi)存空間,使得溢出的數(shù)據(jù)覆蓋了其他內(nèi)存空間的數(shù)據(jù)。
棧溢出就是緩沖區(qū)溢出的一種。 由于緩沖區(qū)溢出而使得有用的存儲單元被改寫,往往會引發(fā)不可預料的后果。緩沖區(qū)溢出的一種主要是通過利用截取函數(shù)返回值來進行棧溢出。方式主要分為2 種,1.通過緩沖區(qū)溢出改變函數(shù)邏輯流程。2通過緩沖區(qū)溢出改變函數(shù)返回地址。其中比較常見的為第二種。
堆溢出是緩沖區(qū)溢出的一種,利用原理類似棧溢出,但由于堆中地址是動態(tài)分配的無法準確定位,所以黑客要利用堆溢出需要通過DWORD SHOOT技術(shù)來對堆進行掃描。獲取堆溢出中可利用的地址。
這種技術(shù)是緩沖區(qū)堆溢出的主要核心技術(shù),由于堆中地址不是固定的是動態(tài)分配的所以需要通過散射的方式向內(nèi)存堆中任意位置寫入exploit,進而劫持進程,運行shellcode,已到達黑客對軟件控制的目標。
靜態(tài)數(shù)據(jù)區(qū)域存放連續(xù)的全局變量和未初始化的靜態(tài)變量,緩沖區(qū)在這發(fā)生溢出稱為靜態(tài)數(shù)據(jù)區(qū)溢出
"緩沖區(qū)溢出的一種主要由于整數(shù)在內(nèi)存里面保存在一個固定長度
(在本章中使用32位)的空間內(nèi),它能存儲的最大值就是固定的,當嘗試去存儲一個數(shù),而這個數(shù)又大于這個固定的最大值時,將會導致整數(shù)溢出。例如A ,
B兩個數(shù)都是32位長,首先賦值給A 一個32位整數(shù)的最大值,B被賦值為1。然后讓A和B相加,然后存儲結(jié)果到第3個無符號32位的整數(shù)C,代碼如下:
A = 0xFFFFFFFF;
B = 0x00000001;
C = A + B;
很顯然,A的值是:11111111 11111111 11111111 11111111;
B的值是:00000000 00000000 00000000 00000001;
兩者相加,得到結(jié)果為:00000000 00000000 00000000 00000000。因此,C中的值是0,發(fā)生了整數(shù)溢出 當C是用來描述緩沖區(qū)大小或數(shù)組索引的時候,就可能被黑客利用,用來改變程序邏輯,繞過一些防御機制,已達到入侵的目的。"
"格式化串漏洞最顯著的例子,就是在*printf()系列函數(shù)中按照一定的格式對數(shù)據(jù)進行輸出,可以輸出
到標準輸出,即printf(),也可以輸出到文件句柄,字符串等,對應的函數(shù)有fprintf,sprintf,
snprintf,vprintf,vfprintf,vsprintf,vsnprintf等。能被黑客利用的地方也就出在這一系列
的*printf()函數(shù)中,黑客主要是利用printf()系列函數(shù)有三條特殊的性質(zhì),首先第一個可以被利用的性質(zhì)是:*printf()系列函數(shù)的參
數(shù)的個數(shù)是不固定的。2.利用*printf()的一個特殊的格式符%n,我們就向內(nèi)存中寫入exploit。3.利用附加格式符控制跳轉(zhuǎn)地址的值。"
當黑客通過網(wǎng)絡(luò)對數(shù)據(jù)庫進行攻擊。利用緩沖區(qū)漏洞的攻擊會通過劫持被入侵函數(shù)中的棧中的函數(shù)返回值,來奪取函數(shù)控制,跳轉(zhuǎn)到黑客編寫的shellcode。當shellcode打開CMD(windows)即可通過數(shù)據(jù)庫賬號來操控操作系統(tǒng)。從而奪取整個操作系統(tǒng)的過程。
windows 早期的異常處理機制?;钴S于WINDOWS SP3以前(包含SP3)的版本。后被VEH取代默認異常處理機制地位。SHE是一個單向鏈表,每當操作系統(tǒng)發(fā)生異常的時候,系統(tǒng)會檢測進程的PEB結(jié) 構(gòu),當PEB符合要求的時候,系統(tǒng)將會遍歷SHE異常鏈表,SHE異常處理函數(shù)會得到執(zhí)行。
VEH windows XP SP3后出現(xiàn)的新的異常處理機制,優(yōu)先級高于SHE。VES是一個雙向鏈表,每當操作系統(tǒng)發(fā)生異常的時候,系統(tǒng)會檢測進程的PEB結(jié)構(gòu)中的 EnvironmentUpdateCount元素,當PEB. EnvironmentUpdateCount符合要求的時候,系統(tǒng)將會遍歷VEH異常鏈表,VEH異常處理函數(shù)會得到執(zhí)行。
系統(tǒng)默認異常處理函數(shù),VEH/SHE 最后一環(huán)。當發(fā)生異常處理后一旦中間所以異常處理機制都無法處理的時候,最終會跳入系統(tǒng)異常處理。系統(tǒng)異常處理會采取強制關(guān)閉軟件,并且跳出彈窗發(fā)出異常信息。
一種加強shellcode穩(wěn)定運行的方法。Heap Spray是在shellcode的前面加上大量的slide code(滑板指令),組成一個注入代碼段。然后向系統(tǒng)申請大量內(nèi)存,并且反復用注入代碼段來填充。這樣就使得進程的地址空間被大量的注入代碼所占據(jù)。然 后結(jié)合其他的漏洞攻擊技術(shù)控制程序流,使得程序執(zhí)行到堆上,最終將導致shellcode的執(zhí)行。
微軟在VS2005后提供的一種安全機制,GS編譯選項可以檢查堆棧中是否有溢出。檢查的方法是在函數(shù)棧的返回地址的前面加入一個隨機生成的 cookie驗證串。如果函數(shù)棧遭到緩沖區(qū)溢出,改變了函數(shù)返回值,那在改變函數(shù)返回值之前一定會改變cookie串。在調(diào)用返回地址之前對隨機的 cookie進行檢查發(fā)現(xiàn)被修改,則不執(zhí)行返回地址,直接跳入異常處理。
是一個在棧中的隨機cookie串,用于檢驗棧是否被溢出。它屬于微軟在VS2005后提供的一種安全機制,GS編譯選項中的一部分
是一個在堆中的隨機cookie串,用于檢驗堆是否被溢出。它屬于微軟在VS2005后提供的一種安全機制,GS編譯選項中的一部分
SQL命令注入漏洞源于PHP、asp等腳本語言對用戶輸入數(shù)據(jù)解析的缺陷。SQL注入攻擊是黑客對數(shù)據(jù)庫進行攻擊的常用手段之一。缺乏對用戶輸入數(shù)據(jù)的合法性進行判斷,使應用程序存在安全隱患。最終導致黑客可以通過WEB應用獲取后臺數(shù)據(jù)庫中的敏感信息。
當黑客向web應用發(fā)送注入點測試語句的時候,WEN應用把后臺的數(shù)據(jù)庫報錯信息隱藏掉后,黑客通過響應時間等因素來判斷后臺數(shù)據(jù)庫類型,此處是否為注入點的一種技術(shù)。
sql注入的一種,他的特點是在原有SQL語句中加入一些黑客需要查詢的內(nèi)容。雖然注入一些黑客要執(zhí)行的SQL代碼后,但原來的SQL語句依然會執(zhí)行。
sql注入的一種,他的特點是在原有SQL語句中加入一些黑客需要查詢的內(nèi)容。利用注釋符徹底改變原SQL語句的含義,使整個SQL語句返回的結(jié)果完全被黑客所用。
XSS是一種經(jīng)常出現(xiàn)在web應用中的計算機安全漏洞,它允許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。比如這些代碼包括HTML代 碼和客戶端腳本。攻擊者利用XSS漏洞旁路掉訪問控制——例如同源策略(same origin policy).現(xiàn)在跨站腳本攻擊是web應用新型的“緩沖區(qū)溢出攻擊“,而JavaScript是新型的“ShellCode”。當然這種攻擊手段攻擊 者的目標不再是是WEB應用,而是通過web應用來入侵其他客戶端使用者。
游標注入是指利用游標進行sql注入。游標分為3類,其中游標注入使用的是顯式游標。發(fā)生游標注入有3種場景:1.缺乏異常處理,掛起的游標被低權(quán)限用戶惡意利用2. oracle游標漏洞提權(quán)3. oracle游標設(shè)計本身的安全隱患。
數(shù)據(jù)庫系統(tǒng)級的函數(shù)、系統(tǒng)級的包和一些安全缺陷,進行的通過SQL語句中的畸形字符串或者其他方式,進行越權(quán)或提權(quán)操作。往往最終可以把一個低權(quán)限賬號提升到DBA權(quán)限
在已有的SQL語句中插入新的SQL語句,一般需要數(shù)據(jù)庫支持多條語句一起執(zhí)行。
針對數(shù)據(jù)庫中某函數(shù)的參數(shù)已有的漏洞進行SQL串的注入。
依靠對WHERE子句的修改使SQL語句返回不同的結(jié)果集
通常認為容易被別人猜測到或被破解工具破解的口令均為弱口令,其中很大一部分是數(shù)據(jù)庫默認口令
缺省密碼是指數(shù)據(jù)庫在創(chuàng)建過程中會產(chǎn)生默認用戶名和默認密碼。數(shù)據(jù)庫提示用戶修改密碼,但用戶未進行修改,產(chǎn)生缺省密碼漏洞。例如:mssql中管理員用戶sa/sa。
拒絕服務攻擊即攻擊者強制目標數(shù)據(jù)庫停止提供服務,是黑客常用的攻擊手段之一。其中數(shù)據(jù)庫端口進行的消耗性攻擊只是拒絕服務攻擊的一小部分,凡是使數(shù)據(jù)庫服務被暫停甚至所處主機死機,都屬于拒絕服務攻擊。
數(shù)據(jù)庫中用戶根據(jù)權(quán)限劃分,一些用戶本身并不具備某些操作權(quán)限。黑客獲得了這個數(shù)據(jù)庫用戶后通過一些畸形的sql語法串,對含有漏洞的函數(shù)進行注入。導致低權(quán)限用戶獲得高權(quán)限用戶才有的操作權(quán)限,執(zhí)行原本自身權(quán)限無法執(zhí)行的語句,獲取敏感數(shù)據(jù)。
數(shù)據(jù)庫中用戶根據(jù)權(quán)限劃分,一些用戶本身并不具備某些操作權(quán)限。黑客獲取該數(shù)據(jù)庫用戶后通過一些畸形的sql語法串,對含有漏洞的函數(shù)進行注入。導致低權(quán)限用戶獲得高權(quán)限用戶才有的操作權(quán)限,執(zhí)行提權(quán)語句,獲取敏感數(shù)據(jù)。
是一種利用社會工程學來進行的攻擊。常見的短信詐騙、電話詐騙都屬于社會工程學攻擊范疇。
通過數(shù)據(jù)字典(密碼庫)對數(shù)據(jù)庫的用戶名進行碰撞,最終碰出可以用于訪問數(shù)據(jù)庫的用戶和密碼組合。