您的位置:網(wǎng)站首頁 > 電器維修資料網(wǎng) > 正文 >
如何發(fā)現(xiàn)系統(tǒng)安全漏洞
★★★★★【文章導(dǎo)讀】:如何發(fā)現(xiàn)系統(tǒng)安全漏洞具體內(nèi)容是:漏洞的共同特點是什么?心理學(xué)上問題當你寫軟件的正常部分的時候,如果用戶的*作是正確的,那你的目的是完成這件事。當你寫軟件的安全敏感部分的時候,你一定要使得任何沒有被信任的用戶都不可能完成*作。這意味著你…
來源: 日期:2013-12-24 21:10:34 人氣:標簽:
漏洞的共同特點是什么?
心理學(xué)上問題
當你寫軟件的正常部分的時候,如果用戶的*作是正確的,那你的目的是完成這件事。當你寫軟件的安全敏感部分的時候,你一定要使得任何沒有被信任的用戶都不可能完成*作。這意味著你的程序的很大部分必須在很多情況下功能正常。
編制加密和實時程序的程序員精于此道。而 其程序員則由于他們的通常的工作習慣使得他們的于使他們的軟件從未考慮安全的因素,換而言之,他們的軟件是不安全的。
變換角色漏洞
很多漏洞是從不同的運行著的程序中發(fā)現(xiàn)的。有時是一個極小的錯誤或者及其普通的錯誤也會造成安全漏洞。
例如,假設(shè)你有本來打算讓你在打印你的文檔之前想通過PostScript解釋器預(yù)覽它。這個解釋器不是安全敏感的程序;如果你不用它,它一點也不會成為你的麻煩。但是一旦你用它來處理從別人那里得到的文件,而那個人你并不知道也不值得信任。這樣你就可能招致很多麻煩。他人可以向你發(fā)送能刪除你所有文件或者復(fù)制你所有文件到他人可以得到的地方的文檔。
這是大部分Unix TCP/IP棧的脆弱性的根源-它是在網(wǎng)絡(luò)上的每個人都值得信任的基礎(chǔ)上開發(fā)的,而被應(yīng)用在這個并不如當初所想象安全的環(huán)境中。
這也是SenDMAil所發(fā)生的問題的根源。直到它通過審查,它一直是很多是漏洞的根源。
再更進一步講,當函數(shù)在合理的范圍內(nèi)使用時是安全的,如果不這樣的話,他們將造成無法想象的災(zāi)難。
一個 好的例子就是gets()。如果你在你控制輸入使用gets()函數(shù),而你正好輸入比你預(yù)定輸入大得多的緩沖區(qū),這樣,你就達到了你的目的。對付這個得 好的補丁就是不要做類似這樣的事或者設(shè)定比原先大的多的緩沖區(qū),然后重新編譯。
但是,當數(shù)據(jù)是來自非信任的數(shù)據(jù)源的時候,gets()能使緩沖器溢出,從而使程序能做任何事情。崩潰是 普通的結(jié)果,但是,你通常能地精巧地介紹使得數(shù)據(jù)能象代碼一樣執(zhí)行。
這就是它所帶給我們的...
緩沖區(qū)溢出漏洞
當你往數(shù)組寫入一個字符串,并且越過了數(shù)組邊界的時候,會發(fā)生緩沖器溢出。
幾個能引起安全問題的緩沖器溢出情況:
1.讀*作直接輸入到緩沖區(qū);
2.從一個大的緩沖區(qū)復(fù)制到一個小的緩沖區(qū);
3.對輸入的緩沖區(qū)做其他的*作。
如果輸入是可信的,則不成為安全漏洞,但也是潛在的安全隱患。這個問題在大部分的Unix環(huán)境中很突出;如果數(shù)組是一些函數(shù)的局部變量,那么它的返回地址很有可能就在這些局部變量的堆棧中。這樣就使得實現(xiàn)這種漏洞變得十分容易,在過去的幾年中,有無數(shù)漏洞是由此造成的。
有時甚至在其他的地方的緩沖區(qū)都會產(chǎn)生安全漏洞——尤其是他們在函數(shù)指針附近。
需要尋找的東西:
沒有任何邊界檢查的危險的函數(shù):strcpy,strlen,strcat,sprintf,gets;
- 1
- 2
- 3
- 4
- 下一頁
【看看這篇文章在百度的收錄情況】
相關(guān)文章
- 上一篇: 有效的電腦防黑方法
- 下一篇: 怎樣關(guān)閉沒用的端口