Windows 2000中的NTLM安全性原則講解

來源:互聯網
上載者:User

  現在Win 2000 預設安裝了 Telnet 服務,但是並沒有預設啟動。通過“開始”“網路工具”“服務”(或運行tlntsvr.exe程式)就可啟動該服務。在用戶端單擊“開始”按鈕,在彈出的菜單中選擇“運行”命令,然後輸入以下命令建立串連:

  telnet[Remote-system][Port-number]

  這時候會在螢幕上顯示:

  正常情況下,服務啟動後,鍵入該命令後應該是遠端電腦回送Login和Password資訊,提示使用者輸入使用者名稱和口令。在Linux網路作業系統下就是這樣:

  telnet porky.math.ukans.edu

  Trying 129.237.128.11...

  Connected to porky.math.ukans.edu.

  Escape character is '^]'.

  SunOS UNIX(porky)

  login:wl

  password:xxxxxx

  可是仔細看看上面的顯示,根本沒有給你輸入使用者名稱和密碼的機會,直接中斷連線,這是什麼原因呢?原來是win2000中的telnet的一種驗證身份方式所致:即Windows NT LAN Manager (NTLM)。早期的SMB協議在網路上明文傳輸口令,後來出現了"LAN Manager Challenge/Response"驗證機制,簡稱LM,它十分簡單以至很容易被破解,微軟隨後提出了WindowsNT挑戰/響應驗證機制,即NTLM。現在已經有了更新的NTLMv2以及Kerberos驗證體系。NTLM工作流程是這樣的:

  1、用戶端首先在本地加密目前使用者的密碼成為密碼散列

  2、用戶端向伺服器發送自己的帳號,這個帳號是沒有經過加密的,明文直接傳輸

  3、伺服器產生一個16位的隨機數字發送給用戶端,作為一個 challenge(挑戰)

  4、用戶端再用加密後的密碼散列來加密這個 challenge ,然後把這個返回給伺服器。作為 response(響應)

  5、伺服器把使用者名稱、給用戶端的challenge 、用戶端返回的 response 這三個東西,發送網域控制站

  6、網域控制站用這個使用者名稱在 SAM密碼管理庫中找到這個使用者的密碼散列,然後使用這個密碼散列來加密 challenge。

  7、網域控制站比較兩次加密的 challenge ,如果一樣,那麼認證成功。

  從上面的過程我們可以看出,NTLM是以目前使用者的身份向Telnet伺服器發送登入請求的,而不是用你自己的帳戶和密碼登入,顯然,你的登入將會失敗。舉個例子來說,你家的機器名為A(本地機器),你登入的機器名為B(遠地機器),你在A上的帳戶是ABC,密碼是1234,你在B上的帳號是XYZ,密碼是5678,當你想Telnet到B時,NTLM將自動以目前使用者的帳號和密碼作為登入的憑據來進行上面的7項操作,即用ABC和1234,而並非用你要登入帳號XYZ和5678,且這些都是自動完成的,根本不給你動手的機會,因此你的登入操作將失敗。

  NTLM身分識別驗證選項有三個值。預設是2。可以有下面這些值:

  0: 不使用 NTLM 身分識別驗證。

  1: 先嘗試 NTLM 身分識別驗證,如果失敗,再使用使用者名稱和密碼。

  2: 只使用 NTLM 身分識別驗證。

  Telnet伺服器使用NTLM的有3選項之一時,客戶機會顯示下面情況中的一種:

  1)身分識別驗證選項=0時

  Microsoft (R) Windows (TM) Version 5.00 (Build 2195)

  Welcome to Microsoft Telnet Service

  Telnet Server Build 5.00.99201.1

  login:

  password:

  NTLM身分識別驗證選項為0時不使用NTML身分識別驗證,直接輸入使用者名稱和密碼,比如你可以輸入自己的登入帳號密碼XYZ和5678。

  2)身分識別驗證選項=1時

  NTLM Authentication failed due to insufficient credentials. Please login withclear text username and password

  Microsoft (R) Windows (TM) Version 5.00 (Build 2195)

  Welcome to Microsoft Telnet Service

  Telnet Server Build 5.00.99201.1

  login:

  password:

  這時先嘗試 NTLM 身分識別驗證,如果失敗,再使用使用者名稱和密碼,其實這種方式對於我們來說,與上一種方式沒什麼區別。

  3)身分識別驗證選項=2時,就是我們一開始遇到的現象。

  對NTLM身分識別驗證選項值的改變可以使用Win2000為我們提供Telnet伺服器管理程式tlntadmn.exe;其實Win2000同時為我們提供了Telnet客戶機和伺服器程式:Telnet.exe是客戶機程式(Client),tlntsvr.exe是伺服器程式(server),及Telnet伺服器管理程式tlntadmn.exe。若我們不需要NTLM身分識別驗證可以按以下步驟設定:

  1、單擊“開始”—>“運行“,鍵入tlntadmn,然後確定

  2、在彈出的選項中選擇 Display, 再選擇 Change Registry Settings.

  3、選擇 NTLM.

  4、改變 NTLM 值為0不使用NTML身分識別驗證

  5、重新啟動Telnet 伺服器。

  其實也可以使用tlntadmn.exe 對Telnet 服務的其他預設設定來進行配置,配置後需要重新啟動Telnet服務。如下圖 :

  AllowTrustedDomain:是否允許域使用者訪問。預設值是1,允許信任域使用者訪問。可以改為0: 不允許域使用者訪問(只允許本機使用者)。

  DefaultDomain:可以對與該電腦具有信任關係的任何網域設定。預設值是"."。

  DefaultShell:顯示 shell 安裝的路徑位置。預設值是: %systemroot%System32Cmd.exe /q /k

  MaxFailedLogins:在串連終止之前顯示嘗試登入失敗的最大次數。預設是3。

  LoginScript:顯示 Telnet 伺服器登入指令檔的路徑位置。預設的位置就是“%systemroot%System32login.cmd”,你可以變更指令碼內容,這樣登入進Telnet的歡迎畫面就不一樣了。

  TelnetPort:顯示 telnet 伺服器偵聽 telnet 請求的連接埠。預設是:23。你也可以更改為其他連接埠。

  因此NTLM也是Windows 2000的一種重要安全性原則,對於入侵者來說,NTLM就是橫在面前的一座大山,哪怕你獲得了管理員帳號和密碼,想簡單通過NTLM也並非易事,況且win2000中的telnet預設僅以NTLM方式驗證身份,當然道高一尺,魔高一丈,作為網路系統管理員,不是說有了NTLM保護,就可以高枕無憂了,對於網路高手或駭客來說,時刻在撲捉系統漏洞和管理員疏忽,要突破NTLM的封鎖,常見的有以下幾種方法:

  1、通過修改遠端登錄更改telnet伺服器配置,將驗證方式從2改為1或0;

  2、使用NTLM.exe,上傳後直接運行,可將telnet伺服器驗證方式從2改為1;

  3、在本地建立掃描到的使用者,以此使用者身份開啟telnet客戶機並進行遠程登入;

  4、使用軟體,比如opentelnet.exe(需要管理員權限且開啟IPC管道)

  5、使用指令碼,如RTCS,(需要管理員權限但不依賴IPC管道)

  基本上是以上的5種,其中後兩種是我們比較常用的開telnet的手法,而且使用方法十分簡單,命令如下:

  OpenTelnet.exe server username password NTLMAuthor telnetport

  OpenTelnet.exe 伺服器位址 管理使用者名 密碼 驗證方式(填0或1) telnet連接埠

  cscript RTCS.vbe targetIP username password NTLMAuthor telnetport

  cscript RTCS.vbe <目標IP> <管理使用者名> <密碼> <驗證方式>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.