攻擊者可以發送大量的數據,去覆蓋指向下一個存儲區域的指針

攻擊者可以發送大量的數據,去覆蓋指向下一個存儲區域的指針

緩衝區溢出攻擊的執行依靠向操作系統發送數據,而這些數據太多,以至於處理它們的相關緩衝區無法容納。一些數據寫進了分配給緩衝區的空間,而剩下的數據則覆蓋了緩衝區存儲區域的禁令區域。

攻擊者可以發送大量的數據,去覆蓋指向下一個存儲區域的指針

操作系統的緩衝區是和其他關鍵存儲區域一起協同分配的,包括指向下一個存儲區域指針的存儲區域,這下一個存儲區域是操作系統在程序使用完緩衝區之後將要到達的區域。

攻擊者可以發送大量的數據,去覆蓋指向下一個存儲區域的指針

因此,一些重要的信息就被覆蓋了。攻擊者可以發送大量的數據,這些數據被構造成用來指向攻擊者想要執行的代碼所在的存儲區域的指針,去覆蓋指向下一個存儲區域的指針。

攻擊者可以發送大量的數據,去覆蓋指向下一個存儲區域的指針

攻擊可以讓攻擊者獲取對該系統的更多權限,或者只是簡單地讓系統完全崩潰。這裡描述的只是緩衝區溢出的一種簡單形式,也被稱為smashing the stack。還有更多高級的攻擊已經被黑客所利用。


分享到:


相關文章: