欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>單片機(jī)>為什么要進(jìn)行棧的保護(hù)根據(jù)Windows和Linux的詳細(xì)資料講解

為什么要進(jìn)行棧的保護(hù)根據(jù)Windows和Linux的詳細(xì)資料講解

2019-07-17 | pdf | 0.09 MB | 次下載 | 1積分

資料介紹

  對于為何要保護(hù)堆棧,請以“緩沖區(qū)溢出”,“堆?!睘殛P(guān)鍵詞google一下,本文不再贅述。只要你的程序要調(diào)用函數(shù),那么就要使用堆棧,不進(jìn)行函數(shù)調(diào)用的程序已經(jīng)很少了吧,難道你能忍受通篇的jmp,jne.。。等等手工作坊的方法嗎?在linux和windows 上,保護(hù)棧的方式最重要的莫過于兩種, 一個是使用堆棧安全cookie;另一個是使棧不可執(zhí)行。

  上面提到的兩種方式中,安全cookie提供了更大的保護(hù),而不可執(zhí)行棧在遇到溢出代碼放到堆的時候就很難奏效了,先看看安全cookie是怎么一回事。 在傳統(tǒng)的函數(shù)調(diào)用時,棧自下而上是:參數(shù)--》返回地址--》老的棧底指針--》局部變量--》。。.如果局部變量發(fā)生向下溢 出,覆蓋了函數(shù)的返回地址,那么程序一點脾氣也沒有,乖乖聽任你的擺布,但是這種錯誤的行為是在被調(diào)函數(shù)返回的時候發(fā)生的,如果被調(diào)函數(shù)有漏洞,那么我們希望的是在它返回的時候,也就是出了它的控制范圍的時候主動地報出錯誤,而不是將錯就錯,那么就需要一種有效的方式來檢測到錯誤的發(fā)生,于是安全 cookie就臨危受命了,它實際上就是在參數(shù)--》返回地址--》老的棧底指針--》局部變量--》。。.中間插入了一個 cookie,使得這個結(jié)構(gòu)變?yōu)榱藚?shù)--》返回地址--》老的棧底指針--》cookie--》局部變量--》。。.這 個cookie是每個程序映像都有的一個數(shù)值,最好就是一個隨機(jī)值,當(dāng)函數(shù)調(diào)用的時候,編譯器自動插入(編譯的時候編譯器知道何時進(jìn)行函數(shù)調(diào)用,比如 call)一個cookie,這個cookie在程序啟動的時候被初始化為隨機(jī)值(如果不是隨機(jī)值,我們考慮最極端的情況,比如就是1,那么攻擊者就知道 把kookie的位置覆蓋為1就不會導(dǎo)致cookie 檢查失敗了),當(dāng)程序返回的時候系統(tǒng)會檢查堆棧的cookie和程序的cookie是否一致,如果不 一致,那么就報錯。

  以上的方式很不錯嗎?考慮一下以下的問題:如果攻擊者知道程序的cookie所存放的位置,那么他就會知道cookie的值,于是他就知道應(yīng)該將堆棧中 cookie位置的值覆蓋成什么,即使你將cookie的存放位置設(shè)為不可讀也不好,因為攻擊者總能通過各種淫亂的手段達(dá)到目的,試問你是保護(hù) cookie函數(shù)保護(hù)函數(shù)返回值?另外一個問題:當(dāng)cookie檢查失敗,該怎么辦?就算 cookie檢查失敗,緩沖區(qū)確實溢出,但是此時操作系統(tǒng)內(nèi)核并 不知道發(fā)生的一切(前提是只要別溢出到內(nèi)核空間),于是想讓系統(tǒng)在檢查失敗時就自動陷入內(nèi)核是不可能的,一切必須手動進(jìn)行,在用戶空間進(jìn)行,如果想讓內(nèi)核幫忙處理,就要手動進(jìn)行陷入(x86種int指令),如果不需要內(nèi)核處理就在用戶空間了斷,不管哪種方式,都要在檢查失敗后跳到一段代碼,我們姑且把它叫做異常處理代碼,那么問題來了,如果攻擊者將這段異常處理代碼攻擊了怎么辦,這不成了個怪圈了嗎?是的,這是個怪圈,緩沖區(qū)溢出錯誤既然發(fā)生,你就誰也別 怪,錯就錯在你的代碼寫的不嚴(yán)密有漏洞,指望緩沖區(qū)溢出檢查機(jī)制無論怎樣結(jié)果都是不可信的,記住,計算機(jī)系統(tǒng)中只有一種可信的軟件,就是操作系統(tǒng)內(nèi)核(存在內(nèi)核的前提下,當(dāng)然不包括裸奔的單片機(jī)),而用戶空間的緩沖區(qū)溢出又沒有嚴(yán)重到內(nèi)核必須接管的地步(它可沒有缺頁異常嚴(yán)重),既然用戶空間的任何機(jī)制都 不可信,那么你還指望所謂嚴(yán)密的緩沖區(qū)溢出檢查機(jī)制嗎?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 651單片機(jī)窗簾控制器仿真程序
  12. 1.93 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)大棚環(huán)境控制器仿真程序
  14. 1.10 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)