主题:一篇讲memory overflow导致被攻击的文章 -- yueyu
比如说吧,我知道某些windows的代码段是没有写保护的,这就是一个可以很好的攻击的地方。
这练武的人都知道,行气是练武的基础,把气运的好了,才能开始练。
这行气最简单的就是呼吸,把气移动到另外一个地方。就好像这个指令:
mov EAX [0x12345678]
谁知道这口气从开始吸,到最后呼出去,机器里面发生了多少事情么?
可怎么放到起总考试里面了
本来想在气宗里面偷学点东西的,居然被看出来了。还是继续偷鸡去算了。
比如LINUX,因为代码公开,没有统一的补丁。
逆向工程是干嘛使的呢?---拿到汇编代码就可以干坏事儿了
而且很多地方可以猜测到大概什么地方可以有漏洞。
linux么,最少从我用起来的经验,补丁更新非常快。上游到下游各个版本的应用,通常在一个礼拜就搞定。而windows。。。
你不说这条指令在什么模式下执行,没有答案。
比如实模式,保护模式?保护模式下内存是平坦模式,还是分页模式?
自认也就一会用蛮力的劍宗放浪不肖弟子,以后要经常和前辈讨口酒喝喝
以后兄弟相称,不说什么前辈了
//暗笑,我这易容术练到一定层次咧!
貌似问题不是特别隐蔽,不太难发现。
要不,为了减轻题目的难度,把f1()写详细点,给点hint,便于考生发现问题所在。
那咱们讨论这么些都白讨论了
人家就知道XXXX公司招人原来有这个题目,嘿嘿
面试的时候问比较合适。
关键看解决问题的思路。这可比标准答案更能看出一个人的全貌,比如对问题的领悟,沟通能力,对任务压力的反应,......
所谓的面试,就是在交谈中“挖坑”。
我那道调息的题,就是在讨论中,看能从对方发掘出多少东西来。一般我可以看出对方在汇编,计算机体系结构以及操作系统上面的功力。重点考察对缓存,内存管理,中断处理以及外设端口到内存映射这几个地方的理解。
所以我那道题不是无解,而是没有固定的解法,具体的结果,跟当时执行的内存/CPU环境,特权层次还有具体的程序都有关系。
但是该考题中回答不出内存管理的问题,基本就可以考虑叫下一位考生进场了。
不过在地址[0x12345678]中映射外设的比较少见,OS中大家都有个约定大概放在什么位置吧?