扫描器

时间:2006-10-12 来源: 作者: 点击:
⒈扫描器 在Internet安全领域,扫描器是最出名的破解工具。据说一个好的TCP端口扫描器相 当于一千个用户口令的价值,在深入讨论扫描器之前,行熟悉一下扫描器。 ⑴什么是扫描器 扫描器是自动检测远程或本地主机安全性弱点的程序。通过使用一个扫描器,洛杉矶 的用户可
  
  ⒈扫描器
   在Internet安全领域,扫描器是最出名的破解工具。据说一个好的TCP端口扫描器相
  当于一千个用户口令的价值,在深入讨论扫描器之前,行熟悉一下扫描器。
  ⑴什么是扫描器
   扫描器是自动检测远程或本地主机安全性弱点的程序。通过使用一个扫描器,洛杉矶
  的用户可以不留痕迹地发现远在日本的一台服务器的安全性弱点。
  ⑵扫描器如何工作
   真正的扫描器是TCP端口扫描器,这种程序可以选通TCP/IP端口和服务(比如,Telnet
  或FTP),并记录目标的回答。通过这种方法,可以搜集到关于目标主机的有用信息(比
  如,一个匿旬用户是否可以登录等等)。而其他所谓的扫描器仅仅是UNIX网络应用程序,
  这些程序一般用于观察某一服务是否正在一台远程机器上正常工作,它们不是真正的扫描
  器,但也可以用于收集目标主机的信息(UNIX平台上通用的rusers和host命令就是这类程
  序的很好的例子)。
  ⑶扫描器在什么平台上可用?
   尽管扫描器程序一般是为UNIX工作站编写的,但现在已有了用于任何操作系统的扫描器。
  ⑷运行扫描器需要什么系统要求?
   系统要求取决于扫描器、操作系统以及与Internet的连接。某些扫描器是专为UNIX编
  写的,所以需要UNIX系统。
  ⑸创建一个扫描器难吗?
   不困难。但你需要具备TCP/IP例行测试以及C语言、Perl语言,一种或多种外壳语言的
  丰富知识。开发扫描器是一项带劲的工作,它能带给编程者很大的满足感。虽然如此,仍
  有许多扫描器(免费的和商品化的)无法作为有益的工具被选择使用。
   你还需要了解一下Socket编程的知识,它用于开发客户/服务器应用程序。
   有许多在线资源可以帮助你了解Socket编程。第一个由Western Ontario大学的Reg
  Quinton所写:
  http://tecstar.cv.com/~dan/tec/primer/socket:programming.html
   另一个有关资料由Quarterdeck办公系统提供,它是一个在线编程资源,它拥有所有
  支持BSD 4.3的Socket例行程序,并且非常全面:
  http://149.17.36.24/prog/sockets.html
  ⑹扫描器能告诉我什么?
   扫描器能够发现目标主机某些内在的弱点,这些弱点可能是破坏目标主机安全性的关
  键性因素。但是,要做到这一点,你必须了解如何识别漏洞。许多扫描器没有提供多少指
  南手册和指令,因此,数据的解释非常重要。
  ⑺扫描器无法告诉用户什么?
   扫描器无法告诉你下列内容:
  ■扫描器工具具体步骤
  ■你的扫描活动已进行到了什么程度
  ⑻扫描器合法吗?
   合法。安全工作人员和开发人员经常设计、编写、公布扫描器。这些工具通常在公共
  范围内公布,以便系统管理员能够检查自己系统的弱点。然而,尽管拥有和使用扫描器不
  违法,但如果你不是一个系统的管理员,却使用扫描器检查目标主机,你将遇到目标主机
  管理员的严厉反对。而且,某些扫描器在调查远程服务时具有侵略性,未经授权使用这些
  扫描器违反联邦或州法令,被认为是非法进入计算机网络。这个问题引起了一些法律方面
  的争论,并且至今仍未得到解决。
  ⑼为什么扫描器对于Internet安全性很重要?
   扫描器对于Internet安全性之所以重要,是因为它们能发现网络的弱点。
  
  ⒉历史背景
  ⒊扫描器属性
   扫描器的主要属性有
  ■寻找一台机器或一个网络
  ■一旦发现一台机器,可以找出机器正在运行的服务
  ■测试具有漏洞的那些服务
  ⑴找出潜在目标
   Internet非常庞大,在“太空”中有许多的潜在目标。现代“入侵者”面临的问题是
  如何快速高效地找出那些目标。扫描器无疑非常适合这一用途。
  ⑵发现漏洞
  ⑶寻找目标
  ⑷利用扫描器发现目标
  ⒋网络应用程序
   有时人们错误地把网络应用程序称为扫描器。这是一个易犯的错误。实际上,有许多
  网络应用程序的功能或多或少地与真正的扫描执行的功能相同。
  ⑴host
  ⑵Traceroute
   简而言之,就是跟踪两台机器间的路由。
   注意,运行Traceroute不一定要在UNIX(或类UNIX)环境中。在Internet上到处都有
  Traceroute网关;并且,尽管这些网关只跟踪Traqceroute网关与目标之间的路由,但它们
  至少可以用于探测一个IP地址的本机主机。
  试一下下面这个Traceroute网关:
  http://www.beach.net/traceroute.html
  ⑶rusers finger
   通过观察登录活动,你可以有效地识别出机器间的信任关系;你还可以可靠地确定本地
  用户的特性,所有这些事实都具有重要的价值。
  ⑷show mount
   Show mount可以发现远程主机的一些非常有用的信息。最重要的是,通过加入 -e
  命令选项,Show mount可以提供指定目标上所有对外目录的清单。这些目录可能在
  Internet的任何地方都是可安装的。
  ⑸其他平台上的网络应用程序
  ①Windows 95上的应用程序
  ㈠NetScan工具
  NetScan工具箱包含一系列由UNIX移植到Windows 95上的应用程序,包含WHOIS、finger、
  ping和Traceroute程序。该工具箱是共享软件,参见地址:
  http://www.eskimo.com/-nwps/index.html
  ㈡Network工具箱
  同NetScan工具箱类似,速度更快,可在下面地址中找到。
  http://www.uriver.com/netbox.html
  ㈢TCP/IP检测程序
  这个工具不仅收集有关网络和机器的信息,而且把它们用图形描述出来,图形中包括路由
  器、工作站和服务器。可在下面找到:
  ftp://wuarchive.wustl.edu/systems/ibmpc/win95/netutil/wssrv32n.zip
  ②Macintosh上的应用程序
  ㈠MacTCP观察程序
  这个程序提供了Ping、DNS查询、以及监视由TCP/IP协议套中协议启动的连接。参考:
  http://www.share.com/share/peterlewis/mtcpw
  ㈡Query It!
  http://www.cyberatl.net/~mphillip/index.html#Query It!
  ㈢What Route
  这程序是UNIX常用程序Traceroute的移植版本。参见:
  http://homepages.ihug.co.nz/~bryanc
  
  ③AS/400上的应用程序
  有兴趣者可阅读下面这篇文章:
  http://204.56.55.10/education/whitepapers/tcpip/tcp/ip.htm
  ⒌扫描器
  ⑴NSS(网络安全扫描器)
  NSS由Perl语言编成,它最根本的价值在于它的速度,它运行速度非常快,它可以执行下
  列常规检查:
  ■Sendmail
  ■匿名FTP
  ■NFS出口
  ■TFTP
  ■Hosts.equiv
  ■Xhost
  注:除非你拥有最高特权,否则NSS不允许你执行Hosts.equiv。
  利用NSS,用户可以增加更强大的功能,其中包括:
  ■AppleTalk扫描
  ■Novell扫描
  ■LAN管理员扫描
  ■可扫描子网
  简单地说,NSS执行的进程包括:
  ■取得指定域的列表或报告,该域原本不存在这类列表
  ■用Ping命令确定指定主机是否是活性的
  ■扫描目标主机的端口
  ■报告指定地址的漏洞
  尽管没有详尽讨论NSS,但我在这里要说明一些次要的问题:
  ■在对NSS进行解压缩后,不能立即运行NSS,需要对它进行一些修改,必须设置一些环境
  变量,以适应你的机器配置。主要变量包括:
  ■$TmpDir_NSS使用的临时目录
  ■$YPX-ypx应用程序的目录
  ■$PING_可执行的ping命令的目录
  ■$XWININFO_xwininfo的目录
  提示:如果你隐藏了Perl include目录(目录中有Perl include文件),并且在PATH环境
  变量中没有包含该目录,你需要加上这个目录;同时,用户应该注意NSS需要ftplib.pl库
  函数。NSS具有并行能力,可以在许多工作站之间进行分布式扫描。而且,它可以使进程
  分支。在资源有限的机器上运行NSS(或未经允许运行NSS)应该避免这种情况,在代码中
  有这方面的选项设置。
  你可在下面地址找到NSS拷贝。
  http://www.giga.or.at/pub/hacker/unix
  
  ⑵Strobe(超级优化TCP端口检测程序)
  strobe是一个TCP端口扫描器,它可以记录指定机器的所有开放端口。strobe运行速度快
  (其作者声称在适中的时间内,便可扫描整个一个国家的机器)。
  strobe的主要特点是,它能快速识别指定机器上正在运行什么服务。strobe的主要不足
  是这类信息是很有限的,一次strobe攻击充其量可以提供给“入侵者”一个粗略的指南,
  告诉什么服务可以被攻击。但是,strobe用扩展的行命令选项弥补了这个不足。比如,
  在用大量指定端口扫描主机时,你可以禁止所有重复的端口描述。(仅打印首次端口定义)
  其他选项包括:
  ■定义起始和终止端口
  ■定义在多长时间内接收不到端口或主机响应,便终止这次扫描。
  ■定义使用的socket号码
  ■定义strobe要捕捉的目标主机的文件
  在如下地址可以找到strobe的拷贝:
  http://sunsite.kth.se/linux/system/network/admin/
  提示:在你获得strobe的同时,必然获得手册页面,这对于Solaris 2.3是一个明显的问
  题,为了防止发生问题,你必须禁止使用getpeername()。在行命令中加入-g 标志就可以
  实现这一目的。
   同时,尽管strobe没有对远程主机进行广泛测试,但它留下的痕迹与早期的ISS一样
  明显,被strobe扫描过的主机会知道这一切(这非常象在/var/adm/messages文件中执行
  连接请求)。
  ⑶SA
------分隔线----------------------------
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容