Return-to-libc攻擊

Return - to - libc攻擊 （ 縮寫 ： ） ， 即 “ 返回至C標準庫攻擊 ” ， 是一種電腦安全攻擊 。 這種攻擊方式一般應用於緩衝區溢出中 ， 其堆棧中的返回地址被替換爲另一條指令的地址 ， 並且堆棧的一部分被覆蓋以提供其參數 。 這允許攻擊者調用現有函數而無需注入惡意代碼到程序中 。 縮寫爲libc的共享庫是C標準函數庫 ， 提供了類UNIX操作系統中的C運行時支持 。 儘管攻擊者可以讓代碼返回到任意位置 ， 但絕大多數情況下的目標都是libc 。 這是因爲libc總是會被鏈接到程序中 ， 並且它提供了對攻擊者而言一些相當有用的函數 （ 如system 調用可以只附加一個參數即執行外部程序 ） 。 這即是儘管返回地址可以指向另一個完全不同的區域 ， 但這種攻擊仍被稱爲return - to - libc的原因 。