提問者:頭像不好看了 2020-10-15
他怎么防止緩沖區(qū)溢出的,?假如說,,我地址跳轉(zhuǎn)或者覆蓋成了另一個函數(shù),,獲取到了shell,,這個cookie還有用嗎?還是說這個cannery保護是保護什么的,?
群里回復(fù)您了,,我把另一個同學(xué)的解釋發(fā)給你:這個是塞在返回地址前的,相當(dāng)于守衛(wèi),,只允許一種人過,,就是自己人,要想越過門衛(wèi)進入城內(nèi),,就必須先偽造成自己人,,才能進去。這個保護是針對變量的,,當(dāng)有寫入變量的時候這個保護才有用,。只有允許你寫數(shù)據(jù)的時候,這個保護才開啟,。為了防止你過多的寫數(shù)據(jù),,覆蓋它的返回地址,。它在返回地址前面的4(32位)字節(jié)里面填入隨機數(shù)據(jù),會在你向里面寫時候,,并且你已經(jīng)寫完的時候檢查。如果你數(shù)據(jù)寫過了,,或者已經(jīng)寫到返回地址處了,,這個隨機數(shù)就不正確,程序就會直接宕機報錯崩潰