介绍
近几年,在一些网络日志中出现了大量的基于SSH的恶意登录的攻击记录。本文将利用蜜罐(honeypot)陷阱对这类攻击进行分析,最后,本文提供了一些关于如何防范这类攻击的建议。
蜜罐的使用方法研究
位于新西兰的Honeynet联盟的分支机构:新西兰Honeynet联盟,主要致力于通过蜜罐技术来研究黑客的行为,攻击方法以及他们所使用的工具,从而改善网络和计算机系统的安全。蜜罐本身也是计算机系统,但和其它的计算机系统不同的是蜜罐是专门用于引诱黑客进行攻击的计算机系统。蜜罐通过装扮成其它有价值的计算机系统来使黑客对其进行攻击,以使这些攻击记录保存下来。有了这些攻击记录,我们可以对其进行分析,也可利用蜜罐来保护真正的计算机系统不受到攻击,也就是说让黑客去攻击蜜罐计算机系统,而不是真正的计算机系统,这就相当于计算机系统“影子”。
为了研究发生在新西兰大学的网络攻击行为,我们已经在惠灵顿的维多利亚大学安装了一个蜜罐系统。这个蜜罐系统具有高度可交互性,这个系统在网络上就象其它正常的机器一样,黑客完全不会察觉他们所攻击的是蜜罐还是真正的计算机系统。我们可以通过这个蜜罐系统来监视所有从这个系统流出和流入的数据。另外,所有的系统事件都会被这个系统的日志所记录。
这个系统运行在一个标准的RedHat 9 Linux的SSH服务器上,而且这个服务器可以通过Internet访问到。SSH可以使用户以加密的方式登录到另外一台计算机上。在发现遭遇到SSH恶意登录攻击后,我们通过安装蜜罐系统来防止这一切。我们使用这个系统将所有登录的用户名和密码记录了下来。这个系统在2006-7-11上线,在2006-8-1日停止使用。在这22天中,蜜罐系统被攻击了多次。我们通过对黑客的攻击记录进行分析,并推荐了一些可以改善SSH安全性的解决方案。
SSH恶意登录分析
我们在这部分将分析在7月11日至8月1日被蜜罐捕捉到的数据。这些数据完全来源于蜜罐的日志系统。这个日志系统截获了很多向服务器的登录请求信息,这其中包括日期、时间、IP地址、请求的结果(成功或失败)以及用于登录请求的帐户名和密码。下面是一个简单的登录请求日志。
以下是引用片段:
Jul 13 09:37:59 basta sshd[22308]: PW-ATTEMPT: fritz
Jul 13 09:37:59 basta sshd[22308]: Failed password for root from 10.0.160.14
port 39529 ssh2
Jul 13 09:38:02 basta sshd[22310]: Illegal user fatacunike from 10.0.160.14
Jul 13 09:38:02 basta sshd[22310]: PW-ATTEMPT: fatacunike
Jul 13 09:38:02 basta sshd[22310]: Failed password for illegal user fatacunike
from 10.0.160.14 port 40444 ssh2 |
首先,我们来分析用于登录的帐户名。上面的日志只是攻击记录的一小部分,其中在这期间共有2741次不同的攻击尝试。这其中他们使用了一般的用户名、系统用户名以及按字母顺序进行排序的用户名。但我们发现,有15个帐户使用非常频繁。这些帐启如表1所示。这个表显示的帐户在一般的系统上大部分都存在,如root、admin、guest等。在图1将显示本系统中存在和不存在的帐户比例。
|
帐户名 |
尝试登录的次数 |
|
root |
1049 |
|
admin |
97 |
|
test |
87 |
|
guest |
40 |
|
mysql |
31 |
|
info |
30 |
|
oracle |
27 |
|
postgres |
27 |
|
testing |
27 |
|
webmaster |
27 |
|
paul |
25 |
|
web |
24 |
|
user |
23 |
|
tester |
22 |
|
pgsql |
21 |
表1 频率最高的15个帐户
图1 存在和不存在的帐户的比例
接下来,让我们看看他们进行恶意登录所使用的密码。攻击者使用的大多数密码都和帐户名有关。在这些数据中攻击者使用了3649个不同的密码。并不是每个用户都使用了这些密码。这些密码有的是连续的数字或字母,有的是按键盘顺序的字符(如’asdfg’)。还有一些更复杂的密码,如r00t或c@t@lin。表2显示了使用频率最高的15个密码。