2015年9月7日
摘要: 上一章,我们获取了系统调用表的地址,这里我们来搞点所谓“截获”的事情。所谓“截获”即是将系统调用表里的地址指向我们自己写的一个函数,系统调用先执行我们自己写的函数,处理完后,再返回原来系统调用的执行函数。还是先贴代码吧。modu.c#include#include#include#include#i... 阅读全文
posted @ 2015-09-07 10:50 守望丶麦田 阅读(2803) 评论(0) 推荐(0) 编辑
  2015年8月31日
摘要: 那么在Linux内核2.6之后,不能直接导出sys_call_table的地址后,我们要如何获得系统调用表的地址,从而实现系统调用的截获呢。先贴上我实现好的代码,然后再来讲解吧。modu.c#include#include#include#include#include#include#includ... 阅读全文
posted @ 2015-08-31 15:04 守望丶麦田 阅读(1584) 评论(1) 推荐(0) 编辑
摘要: 有时候我们希望虚拟机和主机之间进行通信,例如传一些文件。那么设置共享文件夹就是一种很好的方式。这里我的主机是win7系统,vbox里面的虚拟机是Ubuntu。1、首先安装vbox的VBOXGuestAddition.iso。在vbox中点击“设备”->“安装增强功能”。Ubuntu中会弹出安装界面,... 阅读全文
posted @ 2015-08-31 11:32 守望丶麦田 阅读(5288) 评论(1) 推荐(1) 编辑
  2015年8月24日
摘要: 最近做了一个关于Linux内核编程的项目,主要实现的功能是对文件系统的监控。我采用的方式是将监控的功能做成一个可加载模块(LKM)的形式,动态加载到Linux内核中。在这个内核层的“监控模块”中,我实现了对open系统调用的截获,因为在操作文件之前,都是先调用open系统调用获得文件描述符fd。在截... 阅读全文
posted @ 2015-08-24 10:14 守望丶麦田 阅读(694) 评论(0) 推荐(0) 编辑
  2015年7月1日
摘要: 在上面一篇中介绍到,监控模块要做成一个驱动模块(或者说是可加载模块,LKM),动态的加载到Linux内核中。那么这篇就简单的介绍一下怎样做一个这样的驱动模块。以简单的hello world程序为例,我们如何把它写成一个驱动模块,并加载到Linux内核里面呢?一开始,你要保证你的Linux系统有内核源... 阅读全文
posted @ 2015-07-01 19:25 守望丶麦田 阅读(1936) 评论(0) 推荐(0) 编辑
  2015年1月16日
摘要: 使用windows自带的“画图”工具就可以。1.用“画图”打开图片。2.点击“重新调整大小”弹出如下窗口修改这里的“水平”和“垂直”,如都从100改为30。改完之后,点击确定,最后再“保存”或者“另存为”就ok了。 阅读全文
posted @ 2015-01-16 22:19 守望丶麦田 阅读(733) 评论(0) 推荐(0) 编辑