百科知識(shí)
溢出是什么意思啊?
1.溢出是黑客利用操作系統(tǒng)的漏洞,專門開(kāi)發(fā)了一種程序,加相應(yīng)的參數(shù)運(yùn)行后,就可以得到你電腦具有管理員資格的控制權(quán),你在你自己電腦上能夠運(yùn)行的東西他可以全部做到,等于你的電腦就是他的了。在黑客頻頻攻擊、在系統(tǒng)漏洞層出不窮的今天,作為網(wǎng)絡(luò)管理員、系統(tǒng)管理員的我們雖然在服務(wù)器的安全上都下了不少功夫:諸如,及時(shí)的打上系統(tǒng)安全補(bǔ)丁、進(jìn)行一些常規(guī)的安全配置,但是仍然不太可能每臺(tái)服務(wù)器都會(huì)在靠前時(shí)間內(nèi)給系統(tǒng)打上全新補(bǔ)丁。因此我們必需要在還未被入侵之前,通過(guò)一些系列安全設(shè)置,來(lái)將入侵者們擋在“安全門”之外。
2.溢出是程序設(shè)計(jì)者設(shè)計(jì)時(shí)的不足所帶來(lái)的錯(cuò)誤.
溢出是程序設(shè)計(jì)者設(shè)計(jì)時(shí)的不足所帶來(lái)的錯(cuò)誤。溢出是黑客利用操作系統(tǒng)的漏洞,專門開(kāi)發(fā)了一種程序,加相應(yīng)的參數(shù)運(yùn)行后,就可以得到用戶電腦具有管理員資格的控制權(quán),用戶在自己電腦上能夠運(yùn)行的東西他可以全部做到,等于用戶的電腦就是他的了。溢出可分為緩沖區(qū)溢出、內(nèi)存溢出、數(shù)據(jù)溢出等多類,使緩沖區(qū)溢出的任何嘗試通常都會(huì)被該語(yǔ)言本身自動(dòng)檢測(cè)并阻止。
數(shù)據(jù)溢出
在計(jì)算機(jī)中,當(dāng)要表示的數(shù)據(jù)超出計(jì)算機(jī)所使用的數(shù)據(jù)的表示范圍時(shí),則產(chǎn)生數(shù)據(jù)的溢出。
溢出原因
數(shù)據(jù)類型超過(guò)了計(jì)算機(jī)字長(zhǎng)的界限就會(huì)出現(xiàn)數(shù)據(jù)溢出的情況。導(dǎo)致內(nèi)存溢出問(wèn)題的原因有很多,比如:
(1) 使用非類型安全(non-type-safe)的語(yǔ)言如 C/C++ 等。
(2) 以不可靠的方式存取或者復(fù)制內(nèi)存緩沖區(qū)。
(3)編譯器設(shè)置的內(nèi)存緩沖區(qū)太靠近關(guān)鍵數(shù)據(jù)結(jié)構(gòu)。
因素分析
1.內(nèi)存溢出問(wèn)題是 C 語(yǔ)言或者 C++ 語(yǔ)言所固有的缺陷,它們既不檢查數(shù)組邊界,又不檢查類型可靠性(type-safety)。眾所周知,用 C/C++ 語(yǔ)言開(kāi)發(fā)的程序由于目標(biāo)代碼非常接近機(jī)器內(nèi)核,因而能夠直接訪問(wèn)內(nèi)存和寄存器,這種特性大大提升了 C/C++ 語(yǔ)言代碼的性能。只要合理編碼,C/C++應(yīng)用程序在執(zhí)行效率上必然優(yōu)于其它高級(jí)語(yǔ)言。然而,C/C++ 語(yǔ)言導(dǎo)致內(nèi)存溢出問(wèn)題的可能性也要大許多。其他語(yǔ)言也存在內(nèi)存溢出問(wèn)題,但它往往不是程序員的失誤,而是應(yīng)用程序的運(yùn)行時(shí)環(huán)境出錯(cuò)所致。
2. 當(dāng)應(yīng)用程序讀取用戶(也可能是惡意攻擊者)數(shù)據(jù),試圖復(fù)制到應(yīng)用程序開(kāi)辟的內(nèi)存緩沖區(qū)中,卻無(wú)法保證緩沖區(qū)的空間足夠時(shí)(換言之,假設(shè)代碼申請(qǐng)了 N 字節(jié)大小的內(nèi)存緩沖區(qū),隨后又向其中復(fù)制超過(guò) N 字節(jié)的數(shù)據(jù))。內(nèi)存緩沖區(qū)就可能會(huì)溢出。想一想,如果你向 12 盎司的玻璃杯中倒入 16 盎司水,那么多出來(lái)的 4 盎司水怎么辦?當(dāng)然會(huì)滿到玻璃杯外面了!
3. 最重要的是,C/C++編譯器開(kāi)辟的內(nèi)存緩沖區(qū)常常鄰近重要的數(shù)據(jù)結(jié)構(gòu)。假設(shè)某個(gè)函數(shù)的堆棧緊接在在內(nèi)存緩沖區(qū)后面時(shí),其中保存的函數(shù)返回地址就會(huì)與內(nèi)存緩沖區(qū)相鄰。此時(shí),惡意攻擊者就可以向內(nèi)存緩沖區(qū)復(fù)制大量數(shù)據(jù),從而使得內(nèi)存緩沖區(qū)溢出并覆蓋原先保存于堆棧中的函數(shù)返回地址。這樣,函數(shù)的返回地址就被攻擊者換成了他指定的數(shù)值;一旦函數(shù)調(diào)用完畢,就會(huì)繼續(xù)執(zhí)行“函數(shù)返回地址”處的代碼。非但如此,C++ 的某些其它數(shù)據(jù)結(jié)構(gòu),比如 v-table 、例外事件處理程序、函數(shù)指針等,也可能受到類似的攻擊。
其他文章
- 廣州靠譜代辦營(yíng)業(yè)執(zhí)照窗口
- 辦營(yíng)業(yè)執(zhí)照需要到哪里辦手續(xù)
- 上海無(wú)地址公司執(zhí)照注冊(cè)代辦機(jī)構(gòu)
- 網(wǎng)絡(luò)科技公司經(jīng)營(yíng)范圍怎么選
- 實(shí)業(yè)公司經(jīng)營(yíng)范圍5大類怎么寫
- 衛(wèi)生許可證網(wǎng)上申請(qǐng)教程
- 石家莊早餐車怎么辦理營(yíng)業(yè)執(zhí)照
- 沒(méi)有實(shí)體店辦理營(yíng)業(yè)執(zhí)照怎么辦
- 個(gè)人網(wǎng)店如何辦理營(yíng)業(yè)執(zhí)照
- 秀米海外怎么注冊(cè)公司的
- 個(gè)人注冊(cè)一家公司要多少錢
- 重慶云上注冊(cè)公司可靠嗎,重慶云上注冊(cè)公司靠譜嗎?
- 網(wǎng)上營(yíng)業(yè)執(zhí)照辦理網(wǎng)站是什么
- 代辦營(yíng)業(yè)執(zhí)照給3萬(wàn)5
- 有了中介怎么注冊(cè)公司
- 網(wǎng)上注冊(cè)企業(yè)工商執(zhí)照流程
- 企業(yè)生產(chǎn)經(jīng)營(yíng)許可證號(hào)怎么找
- 醫(yī)藥企業(yè)注冊(cè)公司條件要求
- 青島公司注冊(cè)怎么做
- 天津注冊(cè)滴滴公司