发信人: netman.bbs@cs3.xmu.edu.cn (邂逅), 信区: cnhacker
标  题: 网络安全(20)
发信站: cs3 BBS (Mon Jun 16 13:51:04 1997)
转信站: Lilac!ustcnews!ustcnews!sjtunews!cs3
出  处: cs3.xmu.edu.cn

  (11)启动和setuid程序引起的问题
      考虑这样的情况:计算机因发生某种事件后重新启动.这时机内保存的所
  有密钥都被清除,如果采用的是DES鉴别系统,那么所有的进程都不能再利用网
  络服务.这时起关键作用的是根进程.如果根的密钥保存在机内同时没有人输
  入口令,对该密钥进行编码,那么根进程就将能够利用网络服务.对以上问题的
  答案就是将根的密钥存放在关键字服务器可读的某个文件中.这样的方式对有
  盘工作站来说是很好的,但对无盘工作站来说,即存在一个致命的问题:它的密
  钥必须通过网络存取.这样在无盘工作站启动时,如有人窃听网络传送内容,他
  就能发现编码后的密钥,尽管完成,但这一工作并不容易.
      众所周知有一种启动方式叫单用户启动,启动后根的登录shell出现在主
  终端上,这儿出现的问题是,如果安装了C2安全系统,从单用户启动仍需口令;
  当没有安装C2安全系统时,只要/etc/ttytab文件中的console项标记为secure,
  机器的启动就不需口令.
      另一个问题是无盘工作站启动不安全,因为有人可以冒充启动服务器,启
  动一个不正当的内核记录远程无盘工作站的密钥,因为仅仅在内核和关键字服
  务器运行之后,SUN系统才能对这一问题提供保护.在此以前没有任何方式可以
  鉴别回答是否来自正确的启动服务器.但我们不考虑这种情况,因为一个不知
  道源码的人,要想写这样的内核几乎是不可能的.另外犯罪者也极易留下证据,
  只要你对网络中的启动服务器进行检测,就能发现谁是服务器.
      并不是所有的setuid程序都会按我们希望的那样运行,比如一个由用户
  dave拥有的setuid程序,只要在机器启动后,dave没有进行登录,那么程序
  setuid就不能存取安全的网络服务(即采用DES鉴别系统的网络服务),好在绝
  大多数setuid程序都为root所拥有,而且根的密钥在系统忘却后总是存放在系
  统中,因而程序setuid在采用了DES系统之后,仍能象原来那样运行.

  (12)总结
      SUN的目标是要让网络系统象分时系统一样安全,这个目标已经达到.在分
  时系统中,用户被口令鉴别,有个DES鉴别系统,网络中的用户也由口令鉴别.在
  分时系统中,用户信任系统管理员,他的职业道德不允许他改变用户的口令以
  冒充该用户.在SUN系统中用户信息网络管理员,他不会改变用户在公共密钥数
  据库中的实体.很,SUN的系统从某种意义上说比系统更安全,因为在SUN的系统
  中旋转"窃听"装置来"窃听"网络中传送的口令和编码用的密钥是无用的(因为
  这些口令和密钥都已被编码).而大多数分时系统对来自终端的数据并不进行
  编码,用户必须相信,没有人在终端与主机的传送线上安装"窃听"装置.
      DES鉴别系统也许不是最终完善的鉴别系统,在将来,很可能有更好的算法
  和硬件来证明DES鉴别系统无用并放弃它.但至少可以说DES为将来的发展指出
  了一个方向.从理论上讲,协议从来规定会话密钥甚至公共密钥的编码要采用
  Diff3-Hellman方法.为了使DES鉴别系统更有力,我们要做的仅仅是使会话密
  钥的编码更有力,从理论上说这样会形成另一个协议,但是RPC的优点在于它可
  以采用任何鉴别系统而本身不会受到影响.
      至少在目前我们可以说DES鉴别系统满足了我们对网络服务的安全要求,
  在一个不友好的网络系统中建立起了一个足够安全的系统,而所付出的代价也
  不高.用户不需使用磁卡或记住上百位的数字,用户像往常一样使用口令鉴别
  自己,只是系统的性能略有降低.但是如果用户认为性能降低不可并且他的网
  络系统非常友好的话,他可以不采用DES鉴别系统.

--
※ 来源:·古庙钟声 cs3.xmu.edu.cn·[FROM: freedom@cs3.xmu.edu.]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.066毫秒