信息收集與系統(tǒng)攻擊之其他類型的溢出
2018-03-26 21:00:27 | 來源:中培企業(yè)IT培訓網(wǎng)
5)其他類型的溢出
溢出攻擊是一種是非常復雜的攻擊,除了緩沖區(qū)溢出,還有很多其他類型的溢出。例女口整數(shù)溢出、格式化字符串漏洞等。
整數(shù)溢出:計算機中整數(shù)都有一個寬度(例如Win7下VC6編譯器中int類型為32位),當試圖保存一個比它可以表示的最大值還大的數(shù)時,就會發(fā)生整數(shù)溢出。整數(shù)溢出將導致“不確定性行為”。比如完全忽略該溢出或終止進程。大多數(shù)編譯器都會忽略這種溢出,這可禽旨會導致不確定或錯誤的值保存在了整數(shù)變量中。
格式化字符串:格式化字符串漏洞同其他許多安全漏洞一樣是由于程序員的疏忽大意造成的。例如程序員正在編寫代碼,他的任務(wù)是:打印輸出一個字符串或者把這個串拷貝到某緩沖區(qū)內(nèi)。為了節(jié)約時間和提高效率,他可能將代碼:printf(”%s”,str);省略為printf(str):。系統(tǒng)在編譯時自動指定格式,而如果攻擊者傳人的參數(shù)包含特殊的格式字符比如”%d”,函數(shù)會認為這是一個格式化字符,從而按照這個格式化字符要求來打印輸出。這使得攻擊者可以查看特定的內(nèi)存地址數(shù)據(jù)并利用特定格式化字符向內(nèi)存中寫入任意值,從而控制程序的執(zhí)行。
標簽:
溢出攻擊