摘要:
如果在编写内核源代码时给内核留下后门,则你可以很容易的利用,则可轻易的使用模块实现一些扩展功能(实现一些跟内核相关的应用或是出于攻击性目的的扩展)。例如:在read系统调用的实现中,你留下了后门:在read_write.c中,定义了函数指针void (backdoor*)(size_t *count) = NULL;并使用EXPORT_SYMBOL带出符号backdoor。在sys_read中加入如下代码:if(backdoor != NULL) backdoor(&count); //这里的count为sys_read的最后一个参数在内核模块中,你可以实现自己的后门函数,并将back 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(228)
评论(0)
推荐(0)
摘要:
当克隆或者重装虚拟机后,再启动系统(Fedora 11)时会发现系统下不再有eth0,而变成了eth1,当使用/etc/init.d/network重启网络时,会提示找不到设备eth0及eth1的启动脚本。做以下改动:/etc/sysconfig/network-scripts/ifcfg-eth0重命名为/etc/sysconfig/network-scripts/ifcfg-eth1/etc/init.d/network restart 提示找不到eth0 发现脚本中的device一项没有改过来,将其改为eth1(或者删掉)/etc/init.d/network restart 提示网.. 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(317)
评论(0)
推荐(0)
摘要:
总是感觉DNFS中缺乏应有的安全机制,如果简单的在挂载之前加入密码认证方式,我感觉没有多大的意义,多于开源的代码说,如果跳过了认证过程,没有任何意义,另外如果使用密码认证方式,也不能像一些网站那样注册,那样的话认证过程起不到任何作用,如果以付费的方式使用,用户的用户名密码应由管理者根据用户所购买的服务统一的发放和注销。花了点时间看了一下用得比较多的几种认证方式,如Kerberos,PKI/CA,这两种方式都是依赖于一个信任的第三方,其实这也说明了安全是有源头的,无论多少复杂的实现,最后必须有一个可信任的原点,一切的机制都仅仅是这个原点的扩展。计算机里很多的机制都是来源于现实生活,如云计算(将计 阅读全文
posted @ 2013-04-19 14:07
ydzhang
阅读(262)
评论(0)
推荐(0)
摘要:
autotools的使用流程autoscan->aclocal->autoconf-> automake->configure以helloworld为例加以说明:1)新建helloworld.c,并修改代码如下: int main(int argc,char** argv) { printf("hello world!"); }2)autoscan:autoscan:生成configure.scan3)编辑configure.scan,并重命名为configure.in 内容如下: # -*- Run autoconf -*-# Process th 阅读全文
posted @ 2013-04-19 14:06
ydzhang
阅读(451)
评论(0)
推荐(0)
摘要:
可穿戴计算技术浅析摘要可穿戴计算技术就是把计算机“穿”在身上进行应用的技术,该技术解放了人的双手,在对计算机操作时不影响双手做其他工作,其在工业,军事,医疗等方面有着广泛的应用,符合“以人为本”的发展思路。本文首先简单的介绍了可穿戴计算起源,基本特点及基本的应用模型;然后详细描述了可穿戴计算系统需要用到的关键技术;最后对全文进行了总结,对可穿戴计算技术的应用前景进行了分析。关键字可穿戴计算,移动计算,移动网络通信,微小型计算机1 可穿戴计算的起源 近几年来,在计算机领域出现了一个新的系统技术,这就是可穿戴计算技术(wearable computing)。顾名思义,可穿戴计算技术就是把计算机“穿 阅读全文
posted @ 2013-04-19 14:06
ydzhang
阅读(547)
评论(0)
推荐(0)
摘要:
最近准备花点时间学习下shell脚本语言,一是考虑到对以后找工作有帮助,因为很多上班了同学还有去面试的同学都说有的公司还是比较看重写shell脚本这个技能的,二是自己的工作需要,可能要写一些简单的脚本,虽然刚学linux时看《鸟哥的私房菜》时学过点皮毛,但现在已经忘的差不多了,刚好借这个机会系统学习一下。先将基础知识复习了一下,为进一步深入学习做准备。Shell脚本第一行的#!当一个文件中开头的两个字符是#!时,内核会扫描该行其余的部分,看是否存在可用来执行程序的解释器的完整路径(中间如果出现任何空白符号都会略过),此外内核还会扫描是否有一个选项要传递给解释器,内核会以被指定的选项来引用解释器 阅读全文
posted @ 2013-04-19 14:06
ydzhang
阅读(233)
评论(0)
推荐(0)
摘要:
单独编译某个内核模块编内核难免有的时候忘记了配置某个模块,导致该模块不可用,那是不是必须重新配置内核并重新编译呢,答案是否定的,完全可以单独编译某一个内核模块,我在使用最新的fuse-2.8.0-pre1时,发现其中已经没有fuse模块了,原来fuse从2.8版本开始就不包含内核模块了,其已作为内核源码的一部分发布。定位fuse模块内核代码/home/ydzhang/linux-2.6.19/fs/fuse/*.c查看其下的Makefile:# Makefile for the FUSE filesystem.obj-$(CONFIG_FUSE_FS) += fuse.ofuse-objs : 阅读全文
posted @ 2013-04-19 14:06
ydzhang
阅读(1269)
评论(0)
推荐(0)
摘要:
最近又碰到一个熟悉的问题,在准备修改代码的时候,刚开始只准备对一个地方做修改,结果写着写着有冒出很多想法,于是就一直改一直改,等把几个想法的代码完成之后,运行的时候碰到一些逻辑的错误,由于修改的地方太多,一下子也分析不出来是哪里出错了,然后很郁闷的定位错误,修改代码,直到功能正常,有时花在调试上的时间比重新写一遍还要长很多。版本控制工具给我们的开发工作带来很多便利,而我们使用svn commit这个动作往往很“吝啬”,这样svn都发挥不了自己的优势了,做版本控制时,每次修改最好只针对某一功能模块,写完之后commit并附上log信息,这样即使改完后有错误,也能马上定位错误源,从而提高效率。管理 阅读全文
posted @ 2013-04-19 14:06
ydzhang
阅读(102)
评论(0)
推荐(0)
摘要:
UCARP允许多个主机共享一个虚拟的ip地址,以提供自动的故障恢复功能,当其中某个主机宕机时,其它的主机会自动接管服务。UCARP是CARP协议(通用地址冗余协议,最早在OpenBSD上实现)的linux实现版本,同时也能移植到其它多个unix平台,UCARP的官方网站:http://www.ucarp.org/project/ucarp 。 CARP协议的特点在于其非常低的开销,主机间使用加密数据传递信息,并且在冗余主机之间不需要任何额外的网络链接。下载ucarp源代码包:http://download.pureftpd.org/pub/ucarp/,在README中有ucarp的简单部署实 阅读全文
posted @ 2013-04-19 14:06
ydzhang
阅读(506)
评论(0)
推荐(0)
摘要:
最近学习块设备驱动程序的编写,在网上发现一个题为“写一个块设备驱动“的教程,共包含15章,教程最先是在chinaunix论坛上发的,很多人的博客都转载了这组文章,是一个叫赵磊的大牛写的,拜读了一下,教程写得通俗易懂,很有收获。本文对这组文章的内容进行了简要的概括,并附上每章的链接,当然,你google一下也能找到一大堆。第一章内容概括:模块的编写,块设备的基础编程结构,gendisk及其request_queue的管理,简单块设备驱动的实现(初始化gendisk,实现request_queue的处理方法),对块设备进行格式化文件系统并使用。链接1:http://hi.baidu.com/jjb 阅读全文
posted @ 2013-04-19 14:06
ydzhang
阅读(666)
评论(0)
推荐(0)
浙公网安备 33010602011771号