测试的服务器:redhat7.0,redhat7.1,mandrake7.1
本文主要讨论linux服务器的伪装,对于Sun、hp等可以查找相关资料,本文只提供思路。
前言:为什么要伪装?
动物伪装,为了逃避天敌,或为了更好的获取猎物。
人伪装,使你不知他的底细。
服务器伪装,目的是要使攻击者很难搜集到服务器真正的信息,使他的进一步攻击造成难度,进而起到一定的保护作用,当然还有更深的用法,等着你去发现。
声明:
本文只是本人研究的总结,是为了大家的学习研讨,请不要用到非法用途。
本人才疏学浅,不足及错误的地方请指出,mail地址:yuky@freemail.sx.cn。">yuky@freemail.sx.cn">yuky@freemail.sx.cn。
正文:
1. Telnet信息伪装
首先看一次telnet过程:
yxg@localhost yxg]$ telnet xx.xx.xx.xx
Trying xx.xx.xx.xx...
Connected to xxxx.
Escape character is '^]'.
Red Hat linux release 7.1 (Seawolf)
Kernel 2.4.2-2 on an i686
login:
从中可以看到操作系统为Red Hat linux release 7.1,内核版本2.4.2-2,计算机为:intel686。攻击者得到这些信息就可以用相应的攻击程序。所以我们不能告诉他们真正的情况。
telnet信息存放于/etc/issue.net
root@database /etc]# cat issue.net
Red Hat linux release 7.1 (Seawolf)
Kernel 2.4.2-2 on an i686
修改它成为你想要的任何字符,甚至什么也不要。
我的改为Sun的提示:
yxg@localhost yxg]$ cat /etc/issue.net
SunOS 8.0
要注意必要的空行,改完和伪装的对象比较,直到一模一样才行。
对于本机的用户,提示信息在/etc/issue,改不改随你。
注意:如果你想重启后issue.net内容不变,修改/etc/rc.local,在这些行前加#
# This will overwrite /etc/issue at every boot. So, make any changes you
# want to make to /etc/issue here or you will lose them when you reboot.
# echo "" > /etc/issue
# echo "$R" >> /etc/issue
# echo "Kernel $(uname -r) on $a $SMP$(uname -m)" >> /etc/issue
# cp -f /etc/issue /etc/issue.net
# echo >> /etc/issue
2. ftp信息伪装
现在有很多对于wu-ftp的攻击程序,所以我就拿wu-ftp作例子。
先看一下ftp的过程:
yxg@localhost yxg]$ ftp xx.xx.xx.xx
Connected to xxxx.
220 database FTP server (Version wu-2.6.1-16) ready.
如果想要不显示出wu-ftp,可以有多种方法。
其一:
察看in.ftpd就能发现版本号写在了程序中
root@database /root]# strings /usr/sbin/in.ftpd
………………….
/var/log/lastlog
Could not write %.100s: %.100s
Version wu-2.6.1-16
你可以用16进制编辑器修改版本的字符串,改为proftp什么的,保准有人会上当。
其二:
/etc/ftpaccess里有两个参数
指示参数:greeting full | brief | terse
greeting text
允许控制远程用户登陆进来以后,给用户多少信息及信息内容。
banner
banner消息是在用户名和密码以前显示给用户的。
本文来源:武林网[http://www.VeVB.com]
新闻热点
疑难解答