<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>

    緩沖區溢出攻擊的預防措施


    發現錯別字 1年前 提問
    回答
    1
    瀏覽
    2367
    請勿發布不友善或者負能量的內容。與人為善,比聰明更重要!
    回答數量: 1
    信息安全等級高級測評師 CISP-PTE

    由于緩沖區溢出攻擊可能帶來嚴重的后果,所以要采取措施對緩沖區溢出攻擊進行防御。目前有如下幾種措施可以保護緩沖區免受緩沖區溢出的攻擊和影響。

    關閉不必要的端口或服務

    管理員應該知道自己的系統上安裝了什么,并且哪些服務正在運行。

    及時更新漏洞補丁

    安裝軟件廠商的補丁,漏洞一公布,大的廠商就會及時提供補丁。

    過濾特殊的流量

    在防火墻上過濾特殊的流量,無法阻止內部人員的溢出攻擊。

    編寫正確的代碼

    編寫正確的代碼是一件非常有意義但耗時的工作,特別像編寫C語言那種具有容易出錯傾向的程序。盡管花了很長的時間使得人們知道了如何編寫安全的程序,具有安全漏洞的程序依舊出現。因此需要開發了一些工具和技術來幫助經驗不足的程序員編寫安全、正確的程序。

    非執行的緩沖區

    通過使被攻擊程序的數據段地址空間不可執行,從而使得攻擊者不可能執行植入被攻擊程序輸入緩沖區的代碼,這種技術被稱為非執行的緩沖區技術。但Windows系統為了實現更好的性能和功能,往往在數據段中動態地放入可執行的代碼。但為了保持程序的兼容性,不可能使所有程序的數據段不可執行,所以緩沖區漏洞還是存在的。

    數組邊界檢查

    該種方式和非執行緩沖區的不同在于:數組邊界檢查完全放置了緩沖區溢出的產生和攻擊。所以只要數組不溢出,溢出攻擊也就無從談起。為了實現數組邊界檢查,則所有的對數組的讀寫操作都應該進行檢查,以確保對數組的操作在正確的范圍內。最直接的方法是檢查所有的數組操作,但是通常可以采用一些優化的技術來減少檢查的次數。

    程序指針完整性檢查

    程序指針完整性檢查和邊界檢查略微不同:程序指針完整性檢查在程序指針被引用之前檢測到它的改變。即使一個攻擊者成功地改變了程序的指針,由于系統事先檢測到了指針的改變,所以這個指針將不會被使用。程序指針完整性檢查不能解決所有的緩沖區溢出問題,但是這種方法在性能上有很大的優勢,而且其兼容性也很好。

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

    1年前 / 評論
    亚洲 欧美 自拍 唯美 另类