网站首页/网络技术列表/内容

网络安全讲座之9:审计结果(5)

网络技术2021-12-10阅读
网络技术是从1990年代中期发展起来的新技术,它把互联网上分散的资源融为有机整体,实现资源的全面共享和有机协作,使人们能够透明地使用资源的整体能力并按需获取信息。资源包括高性能计算机、存储资源、数据资源、信息资源、知识资源、专家资源、大型数据库、网络、传感器等。 当前的互联网只限于信息共享,网络则被认为是互联网发展的第三阶段。
资源限制

  对你的系统上所有的用户设置资源限制可以防止DoS类型攻击(denial of service attacks)如最大进程数,内存数量等。例如,对所有用户的限制象下面这样:

  编辑/etc/security/limits.con加入:

  * hard core 0
  * hard rss 5000
  * hard nproc 20

  你也必须编辑/etc/pam.d/login文件加/检查这一行的存在。

  session required /lib/security/pam_limits.so

  上面的命令禁止core files“core 0”,限制进程数为“nproc 50“,且限制内存使用为5M“rss 5000”。

  Samba 远程创建文件漏洞

  Samba是一个Unix/Linux下的免费的文件和打印共享服务程序。允许在Unix和Microsoft平台之间使用文件和打印共享。由于smb守护进程没有正确检查NetBIOS名字,一个本地用户可以从远程在Samba服务器上往任意文件中写入数据。如果用户可以在本地建立符号链接,用户可以提升自己的权限。

  远程用户也可能发动拒绝服务攻击。

  问题发生在smbd在创建SMB会话的日志文件(*.log)时。在受影响的平台上,缺省情况下,每个SMB会话被记录到/var/log/samba/.log文件中。如果攻击者的NetBIOS名字是'FOOBAR',日志文件将会是/var/log/samba/fooboar.log.然而,smbd没有检查NetBIOS名字是否包含"../",因此,如果攻击者将NetBIOS名字设置为"../../../nsfocus",那么将会创建/nsfocus.log文件。

  如果smb.conf文件中存在下列设置:

  log file = /var/log/samba/%m.log

  那么,这个系统就是受影响的。

  在某些平台下(例如FreeBSD)下,配置如下:

  log file = /usr/local/samba/var/log.%m

  这种配置将不受此问题影响。

  smbd在创建log文件时也忘记检查该文件是不是链接文件,因此攻击者可以利用符号链接将任意数据添加到任意文件中。如果将某些数据写到某些敏感文件中(例如/etc/passwd,rc启动脚本等等),本地用户就可能获取root权限。

  测试程序:

--------------------------------------------------------------------------------

$ ln -s /etc/passwd /tmp/x.log

$ smbclient //NIMUE/"`perl -e '{print "\ntoor::0:0::/:/bin/sh\n"}'`" \

-n ../../../tmp/x -N

$ su toor

#

--------------------------------------------------------------------------------

  建议:

  临时解决方法:

  修改smb.conf,将log file行改变成如下配置:

  log file = /usr/local/samba/var/log.%m

  或者将%m删除

  主机审计解决方案

  在审计主机时,你会发现由于每台主机都是针对不同的商业目的,所以你也需要提供不同的解决方案。你可以建议下列的审计方案。

  ·实施本机审计:虽然你希望能补充象last和时间查看器这样的本机审计工具,但本机审计程序通常是审计过程好的出发点。
  ·安装监视软件,例如Axent’s Enterprise Security Manager(ESM):这种软件通报中央控制系统那些系统低于规定策略的限度之下。例如,这种监视程序可以设置成提醒你哪些系统的密码有效期设置得过低。
  ·清除安装工作中的临时文件:自动安装程序通常在临时文件中留下重要的数据包括密码
  ·修复和清理被损坏的系统:你可以清除非法的服务像NetBus,Tribal Flood和BackOrifice。
  ·替代服务:例如,你可以用SSH服务来替代Telnet,SSH使用公钥加密来保证登录会话的安全。
  ·安装操作系统附件,例如个人防火墙和加密服务。

  清除“感染”

  反病毒软件可以扫描出众所周知的非法服务,木马,病毒和蠕虫。然而,你应当能够排除至今还未检测到的问题。为了检测和清除感染,你可以:

  ·使用TCP/IP排错的工具,例如netstat
  ·使用Telnet连接怀疑的端口
  ·升级和运行反病毒程序



网络的神奇作用吸引着越来越多的用户加入其中,正因如此,网络的承受能力也面临着越来越严峻的考验―从硬件上、软件上、所用标准上......,各项技术都需要适时应势,对应发展,这正是网络迅速走向进步的催化剂。

……

相关阅读