1.背景介紹
幾乎每一個玩滲透的人都會接觸到metasploit framework,簡稱msf。這是一個滲透測試框架,用ruby語言編寫的,該框架集成了很多可用的exploit,比如著名的ms08_067等。你可以在這個框架下進行一系列的滲透測試,利用現(xiàn)有的payload,如meterpreter等進一步拿取對方的shell。
本次教程的主題內容是使用msf滲透測試框架進行SSH服務掃描,SSH服務通常在22端口開啟,SSH服務掃描的意義何在呢?舉例來講,當我們掃描目標的22端口得知它開啟了SSH服務,那么我們就可以嘗試進行SSH弱口令破解。大部分掃描對于攻擊方而言,是為了信息收集,制定網絡攻擊方案。
2.資源裝備
2.1 兩臺安裝好kali linux系統(tǒng)的虛擬機
2.2 整裝待發(fā)的小白一個
3.具體步驟
3.1兩種掃描方法
第一種,在kali linux系統(tǒng)直接使用nmap或進入msf滲透測試框架調用nmap針對目標的22端口進行掃描,效果是一樣的。
第二種,使用msf滲透測試框架配備的SSH相關模塊進行掃描,推薦大家使用這種方法,掃描顯示的內容更加詳細和豐富。
我們在msf5命令行下搜索SSH相關模塊,輸入“search ssh_version”,顯示可用的模塊寥寥可數(shù),我們就用編號為3的模塊為大家演示吧。
輸入use空一格加上“模塊名”,回車使用該模塊,再輸入“show options”查看該模塊需要設置的參數(shù),從下圖可以看到需要我們設置的參數(shù)只有rhosts一個,其它的參數(shù)都已經有默認的設置了。
rhosts參數(shù)其實就是設置目標的IP地址,我們另一臺kali linux虛擬機的IP是192.168.78.161,所以“set rhosts 192.168.78.161”,如下圖所示。
設置好后,輸入run回車即可掃描。掃描顯示對方的22端口并沒有開啟SSH服務,兩種方法的結果都一樣。

3.2開啟22端口SSH服務
雖然被掃描的另一臺虛擬機沒有開啟22端口的SSH服務,但是為了配合本次演示,那么我們就手動將其開啟吧,小白也可以順帶學習一下如何在kali linux系統(tǒng)中開啟SSH服務。
我們切換到另外一臺kali虛擬機,在終端輸入“vi /etc/ssh/sshd_config”回車,修改這個文件的幾處內容。第一處,找到“# Port 22”,把#號刪掉。
第二處,找到“#PermitRootLogin prohibit-password”,刪掉#號和prohibit-password,加上yes,修改后的代碼“PermitRootLogin yes”。
第三處,找到“#PasswordAuthentication yes”,刪掉#號。
總共就這三處內容需要修改,修改完后保存文件退出。
僅僅只是修改了配置文件還沒能夠開啟SSH服務,最后還要用到一條既關鍵又簡單的命令“service ssh start”,輸入這條命令回車執(zhí)行,再輸入“service ssh status”查看服務是否開啟成功,看下圖中綠色的active(running),意味著SSH服務開啟了。
3.3再次使用msf模塊進行SSH服務掃描
切換回負責掃描的kali linux虛擬機,由于之前通通設置好了,模塊已經準備就緒,輸入run回車,就可以開始掃描,讓我們來看看它的掃描結果是不是和剛剛的不一樣。

掃描結果顯示目標主機22端口開啟了SSH服務,SSH服務版本是SSH-2.0-OpenSSH_7.9p1 Debian-10等詳細信息。