1. 程式人生 > >隱藏openssh 的版本號 (驗證發現sshd服務重啟報錯,本篇暫時用作參考)

隱藏openssh 的版本號 (驗證發現sshd服務重啟報錯,本篇暫時用作參考)

我們經常用telnet來驗證伺服器的埠是否有開,但是某些埠會透露程式的版本等相關資訊,

像ssh就會列出版本號,這個問題在漏洞掃描裡面還歸到漏洞去了,編號:CVE-1999-0634

版本資訊:openssh7.5p1


先查出sshd檔案位置:

whereis sshd

備份sshd檔案:
cd /usr/sbin
cp sshd sshd.bak

修改資訊

sed -i 's/OpenSSH_7.5p1/hellowork/g' sshd    
###  sed -i 's/a/b/g' sshd  這裡的sed -i 是替換的作用,a為原來的值,b為替換的值,
###  但是這裡我替換為hellowork  再次用telnet連線發現不顯示資訊了,修改為別的版本可以顯示,
###  這裡就不深究了,有興趣的可以看看


還有一種修改是修改ssh -V 所顯示的版本資訊

一樣先獲取檔案位置

whereis ssh
備份檔案
cd /usr/bin/
cp ssh ssh.bak


原來的版本資訊:


修改:

sed -i 's/OpenSSH_7.5p1/OpenSSH_7.7p1/g' sshd



可以看到版本資訊改變了,不過目前不知道有什麼作用哈,只是在處理上面的問題時查的資料大多是說的這個方法。

至於網上說的其他修改 version.h 檔案然後重新編譯,我試了不行,可能是版本問題或者操作有誤吧。