不同服務都有一些具有各自服務特色弱口令,有一部分是安裝時的默認密碼。比如MySQL數據庫的默認密碼爲空;FTP根據其工具不同而具體機組默認賬號密碼,如“賬號:ftp 密碼 ftp”、“賬號 anonymous 密碼 anonymous/空”。
因此我們在檢測一個服務的弱口令時,也可以嘗試手工,用比較常見的賬號密碼進行服務登錄嘗試。比如:123456、abc123、111111等。
下面給出一份簡化的快速字典
1.弱口令是所有安全漏洞中形成原理最簡單的一類漏洞。
由於弱口令更多是因爲人們的安全意識淡薄、安全管理缺失造成的,那我們如何設置一個不弱的密碼呢?
(1)用戶密碼長度在8位以上、由字母、數字、特殊符號混合構成;
(2)不使用與個人資料相關信息。例如用戶名、姓名(拼音名稱、英文名稱)、生日、電話號、身份證號碼以及其他系統已使用的密碼等;
(3)避免使用連續或相同的數字字母組合;
(4)不使用字典中完整單詞。
2.對於口令攻擊,除了使用強密碼之外,還需要採取一些措施來防止受到密碼攻擊。一般來講,在應用層面的應對措施是在登錄的過程中使用驗證碼,如圖形驗證碼。
3.在系統層面最常用的方法就是登錄限制。因爲口令攻擊會造成大量的失敗登錄嘗試,因此我們只需要限制登錄此就可以在一定程度上限制口令攻擊。下面分別windows和linux兩個操作系統進行說明。
(1)windows
賬戶鎖定時間:
此安全設置確定鎖定帳戶在自動解鎖之前保持鎖定的分鐘數。 可用範圍從 0 到 99,999 分鐘。如果將帳戶鎖定時間設置爲 0, 帳戶將一直被鎖定直到管理員明確解除對它的鎖定。
賬戶鎖定閾值:
此安全設置確定導致用戶帳戶被鎖定的登錄嘗試失敗的次數。 在管理員重置鎖定帳戶或帳戶鎖定時間期滿之前, 無法使用該鎖定帳戶。 可以將登錄嘗試失敗次數設置爲介於 0 和 999之間的值。 如果將值設置爲 0, 則永遠不會鎖定帳戶。
重置賬戶鎖定計數器:
此安全設置確定在某次登錄嘗試失敗之後將登錄嘗試失敗計數器重置爲 0 次錯誤登錄嘗試之前需要的時間。 可用範圍是 1 到 99,999 分鐘。如果定義了帳戶鎖定閾值, 此重置時間必須小於或等於帳戶鎖定時間。
我們若把賬戶鎖定閾值設置爲5, 賬戶鎖定時間定爲10分鐘, 而重置賬戶鎖定計數器設置爲10分鐘。 這些設置則表示5次失敗登錄就會鎖定此賬戶10分鐘。
(2)Linux
將文件修改如下,失敗3次後鎖定登錄5分鐘
通過系統PAM的原理實現
4.其他防護措施
(1)禁止ROOT通過遠程登錄
vi/etc/ssh/sshd_config,找到PermitRootLogin,將後面yes改爲no,去掉註釋,root便不能遠程登錄。
(2)限制用戶ssh訪問
向sshd_config文件中添加,AllowUsers root user1 user2
(3)配置空閒超時退出時間間隔
向sshd_config文件 添加
ClientAliveInterval 600
(4)限制只有某一個IP才能遠程登錄服務器