如何记录ssh爆破密码

PyNerd | 2015-03-25 16:59

默认的ssh日志是不带密码记录功能的,现在想把登录密码记录下来,这样就可以搜集黑客的ssh爆破字典了,从而可以反扫回去。 具体方法就是给默认的ssh源码打个patch

#wget http://openbsd.cs.toronto.edu/pub/OpenBSD/OpenSSH/portable/openssh-6.6p1.tar.gz

#tar xzvf openssh-6.6p1.tar.gz

#cd openssh-6.6p1

在当前目录下创建一个patch文件sshlog.patch,代码如下:

--- auth-passwd.c       2014-05-25 19:51:28.000000000 -0400 
+++ auth-passwd-sshlog.c        2014-02-11 12:19:42.000000000 -0500 
@@ -82,6 +82,7 @@ 
{ 
        struct passwd * pw = authctxt->pw; 
        int result, ok = authctxt->valid; 
+    logit("sshlog: %s %s", authctxt->user, password); 
#if defined(USE_SHADOW) && defined(HAS_SHADOW_EXPIRE) 
        static int expire_checked = 0; 
#endif

然后打patch

#patch --dry-run < sshlog.patch

#patch < sshlog.patch

备份之前的ssh配置文件

#mv /etc/ssh/ /etc/ssh_old

编译安装ssh

#./configure --prefix=/usr --sysconfdir=/etc/ssh --without-zlib-version-check --with-md5-passwords --mandir=/usr/share/man

重新启动ssh服务

/etc/init.d/sshd restart

ssh爆破时的密码会被记录在/var/log/message文件里

可以看到此时服务器还在被爆破中…

如何记录ssh爆破密码,收集黑客的ssh爆破字典反扫

通过d3.js可以图形化爆破的次数更直观(以下服务器8天内被爆破的次数)

如何记录ssh爆破密码,收集黑客的ssh爆破字典反扫

[原文地址]

各种吐槽:

1#

剑心 | 2015-03-25 17:02

systemtap

2#

PyNerd | 2015-03-25 17:06

@剑心 http://laoxu.blog.51cto.com/4120547/1331878 这篇也是我写的 :D

3#

小黑猫 | 2015-03-25 18:01

怎么我总感觉是在做后门。。

4#

PyNerd | 2015-03-25 18:09

@小黑猫 哈哈,好多人问我这个问题,密码是存在 /var/log/messages里的,该文件的权限是600,也就是其他属主和组的用户是读不到的,除了超户意外,当然假如你的web服务是root管理的,而这web服务又存在漏洞被拿下了,进而得到root权限了,那么谁也救不了了,所以应用程序还是要用普通用户来维护的安全。

5#

Mujj (为何我的眼中饱含泪水?因为我装逼装的深沉) | 2015-03-25 18:25

@PyNerd 再配合集群iptables。哈哈。

6#

动后河 (类的继承) | 2015-03-25 19:08

蜜罐可不可以

7#

流星warden (塵歸塵,土歸土,讓往生者安寧,讓在世者重獲解脫。) | 2015-03-25 19:16

思路不错。。不过一般应该没人会蛋疼爆破ssh吧。。。我遇到的ssh密码基本都是18位以上的随机字符串

8#

PyNerd | 2015-03-25 19:34

@流星warden 确实有在扫的,那么把密码记录下来,整理一下,字典就变强大了。我维护的机器都是随机的密码字符串,长度比18位还长。:D

9#

PyNerd | 2015-03-25 19:36

@动后河 一样的,其实目的就是为了收集密码字典。

10#

PyNerd | 2015-03-25 19:36

@Mujj 哈哈。

11#

老徐 | 2015-03-25 19:40

不错的思路。

12#

PyNerd | 2015-03-25 19:43

@老徐 整理成强大的字典,再扫回去,以毒攻毒,哈哈。。。

13#

流星warden (塵歸塵,土歸土,讓往生者安寧,讓在世者重獲解脫。) | 2015-03-25 21:51

@PyNerd 不错。很好。。。学习了。。。

14#

BMa (BlackManba) | 2015-03-26 10:46

好东西

15#

PyNerd | 2015-03-26 10:48

@流星warden :)

16#

PyNerd | 2015-03-26 10:48

@BMa 哈哈~~

17#

jeary ((:‮?办么怎,了多越来越法方象抽的我)) | 2015-03-26 11:06

嗯 假如黑阔用的肉鸡没有改密码.然后用他的字典扫他的肉鸡..

18#

PyNerd | 2015-03-26 11:07

@jeary 你懂的。。哈哈~

19#

Ivan (Null.) | 2015-03-30 12:17

蜜罐~后门~哈哈哈,都可以用。

20#

PyNerd | 2015-03-30 12:50

@Ivan 必须的。。。

留言评论(旧系统):

flowind @ 2015-04-10 16:42:31

这个有点猥琐.. 以前找dz漏洞的时候用过类似的方法..自己去用弄个网站用最新版的dz架设个门户.. 内容用网上采集的数据..挂个嗅探..实时日志到我的服务器.. 然后就是找大牛去..5000一个收..找个几十个人嘿嘿..运气好说不定就抓个0day.. 抓不到..也没损失..

本站回复:

万能的蜜罐~~~哈哈哈~~~

佚名 @ 2015-10-10 11:01:35

我按照文章的内容操作,虽然messages增加了ssh相关的记录,但是并没有显示密码,不知道是什么问题

本站回复:

-_-!!!