<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    普通用戶如何防范緩沖區溢出


    發現錯別字 7個月前 提問
    回答
    1
    瀏覽
    353
    請勿發布不友善或者負能量的內容。與人為善,比聰明更重要!
    等保中級測評師 CICSA
    最佳答案

    普通用戶防范緩沖區溢出攻擊的措施有以下這些:

    • 強制寫正確的代碼的方法。只要在所有拷貝數據的地方進行數據長度和有效性的檢查,確保目標緩沖旦中數據不越界并有效,則就可以避免緩沖區溢出,更不可能使程序跳轉到惡意代碼上。

    • 通過操作系統使得緩沖區不可執行,從而阻止攻擊者殖入攻擊代碼。通過使被攻擊程序的數據段地址空間不可執行,從商使得攻擊者不可能執行被植入被攻擊程序輸入緩沖區的代碼,這種技術被稱為緩沖區不可執行技術。

    • 改進C語言函數庫。C語言中存在緩沖區溢出攻擊隱患的系統匾數有很多。例如gets(),sprintf(),strcpy(),strcat(),fscanf(),scanf(),vsprintf()等。可以開發出更安全的封裝了若干己知易受堆棧溢出攻擊的岸函數。

    • 使堆棧向高地址方向增長。使用的機器堆棧壓入數據時向高地址方向前進,那么無論緩沖區如何溢出,都不可能覆蓋低地址處的函數返回地址指針,也就避免了緩沖區溢出攻擊。但是這種方法仍然無法防范利用堆和靜態數據段的緩沖區進行溢出的攻擊。

    • 在程序指針失效前進行完整性檢查。原理是在每次在程序指針被引用之前先檢測該指針是否己被惡意改動過,如果發現被改動,程序就拒絕執行。

    • 利用編譯器將靜態數據段中的函數地址指針存放地址和其他數據的存放地址分離。

    回答所涉及的環境:聯想天逸510S、Windows 10。

    7個月前 / 評論
    回答數量: 1
    亚洲 欧美 自拍 唯美 另类