※ 引述《gsj.bbs@bbs.nchu.edu.tw (國王的新衣)》之銘言:
: ※ 引述《sealoe@kkcity.com.tw》之銘言:
: > 我不太清楚你的界定 就純C而言 如果是讀寫記憶體
: > 是"可以的" 說句實話 應該是語言無關才對 你爽 用shell都行
: > (win32 linux都是OK~~)
: > 另外 我不太清楚你說的啥layout的意思?
: 對不起我的用字不夠精準,讓您誤會了
: 如果改說是在程式內部中的Layout 位置,程式(Code and Data )的總尺寸大小
: 程式中 (Code在那裡,Data在那一個位置)
: 這樣子會不會清楚一點
: 如果有人要寫病毒程式,那他就要對執行檔內部的Layout 格式要很熟才是
: 註:
: Layout:實體配置、Map的意思
現在最新的CPU 很多應該都有防止執行Data區裡的東西的功能
也就是說 只要這個功能一打開 那些什麼加殼軟體全部變成廢物
除非它輸出成檔案再執行 就我所知 加殼軟體好像只是把程式碼解壓縮到Data區
再把執行的指標指向那個開頭
同樣的 緩衝區溢滿的攻擊也應該會減少 理論上應該是不能
所以說 只要這種功能整個市面上的CPU都有時
不管你C C++ Jave C# VB @#$@$什麼的
都一樣無法執行Data裡的Code
至於其它方法 我就不知道了
--
VICTOR工作室
URL : http://www.kinmen.info/vic/
C/C++
Visual Basic 6.0
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.116.64.30