官术网_书友最值得收藏!

2.1 粘滯鍵攻擊原理

粘滯鍵是Windows的一項功能,允許一個接一個地按鍵而不是一次性全部按下,這樣可以更容易地發出某些鍵盤命令,如按Ctrl-c進行復制或Ctrl-v進行粘貼。粘滯鍵的觸發方式是連續按下Shift鍵5次,你甚至可以在Windows登錄界面輸入用戶名或密碼之前就打開這個功能。

為了再現這次攻擊,我們將用另一個文件cmd.exe來替換粘滯鍵程序文件。這樣,按下Shift鍵5次將不會啟動通常的粘滯鍵助手,而是啟動命令提示符(Command prompt)。這是一個基于文本界面的程序,可以讓我們直接在窗口中輸入命令。通過在登錄界面上啟動一個命令提示符窗口(如圖2-1所示),就可以添加一個新的用戶名和密碼,獲得計算機管理員級訪問權限,這樣就可以隨意訪問計算機文件,而不需要知道計算機上的登錄信息!

圖2-1 粘滯鍵攻擊打開了命令提示窗口,而不是粘滯鍵助手

由于2019年或之后更新到更高版本的Windows 10計算機不會受到粘滯鍵攻擊的侵害,因此我們需要一臺比較舊的Windows計算機來試驗這次攻擊。另外還需要一張Windows 10安裝光盤或U盤。要創建一張Windows 10安裝光盤,請參考附錄A中的說明。

2.1.1 從Windows 10安裝盤啟動

若用命令提示符程序替換粘滯鍵程序,我們要用Windows 10安裝光盤或U盤來訪問包含這些程序文件的硬盤。按附錄A所述步驟創建安裝盤后,插入這張盤,然后重新啟動計算機。

我們需要告訴計算機從光盤或U盤加載操作系統,而不是從硬盤驅動器加載。為此,我們得先訪問啟動菜單或基本輸入/輸出系統(Basic Input/Output System,BIOS),它們包含了控制計算機啟動的基本設置。不同的計算機制造商和不同版本的Windows會導致實際情況和以下說明稍有不同,但按照以下步驟,再借助一點網絡搜索,就能讓你進入大多數比較舊的Windows計算機。

1.在Windows計算機上,你可以按下一個特殊的鍵來訪問啟動菜單或BIOS。如果在Windows啟動徽標出現之前,啟動屏幕上沒有顯示該按哪個鍵,那么請重新啟動計算機,并在計算機開始啟動時快速按Esc、Delete、F8、F9、F10、F11或F12等鍵。也可以在線搜索“啟動菜單”和計算機的具體品牌和型號,從而找到正確的按鍵。

2.如果出現了啟動菜單,請選擇“從DVD啟動”(Boot from DVD)或“從USB啟動”(Boot from USB)選項,即從插入的Windows安裝盤啟動,然后跳到步驟5繼續執行。

3.如果重啟幾次后啟動菜單依然沒有出現,可以嘗試進入BIOS菜單:關閉計算機,然后再次打開,按Delete、F2、F9、F10、F12或Esc鍵。在線搜索BIOS和你的計算機型號以找到正確的按鍵。

4.進入BIOS后,找到啟動選項并更改啟動設備的順序或優先級(通常使用箭頭鍵),使USB或DVD成為首選,然后保存更改并退出BIOS。

5.再次重啟。你應該會看到“按任意鍵從CD或DVD啟動”或“按任意鍵從USB設備啟動”的消息提示。立即按任意鍵(如空格鍵)從DVD或USB設備啟動。

6.當Windows安裝盤啟動后,依次單擊“下一步”(Next)→“維修計算機”(Repair your Computer)→“故障排除”(Troubleshoot)→“命令提示符”(Command Prompt),如圖2-2所示。菜單順序或選項名稱可能看起來不同,若不同可查找Windows命令提示符。

警告:不要選擇安裝Windows 10,否則可能會清除你試圖恢復的計算機中的所有文件!

圖2-2 使用Windows安裝盤訪問命令提示符

7.打開Windows命令提示符窗口(通常是一個黑色的文本窗口)后,鍵入c:,按回車鍵切換到C:驅動器,如下所示:

X:\> c:

8.輸入dir命令以查看C:驅動器上的文件和文件夾列表。查找名為Windows的文件夾,它將被標記為<DIR>,也就是目錄的簡稱。

C:\> dir
 Volume in drive C is Windows 10
 Volume Serial Number is B4EF-FAC7
 Directory of C:\
--略--
03/15/2018  02:51 AM    <DIR>        Users
05/19/2019  10:09 AM    <DIR>        Windows?
--略--

這個文件夾(?)里包含的是操作系統文件,包括命令提示符應用程序和粘滯鍵程序文件,我們要將它們進行交換以執行攻擊。

9.如果C:驅動器上沒有Windows目錄,請嘗試在D:驅動器上執行相同的過程,輸入d:后輸入dir。如果D:驅動器也沒有Windows目錄,請繼續按字母順序查找E:、F:、G:……直到找到列表中包含Windows目錄的驅動器。

2.1.2 獲得管理員級別的訪問權限

現在用命令提示符程序cmd.exe替換粘滯鍵程序sethc.exe。然后,我們將能夠在計算機上創建一個新的管理員賬號。

1.輸入以下3個命令:

C:\> cd \Windows\System32\
C:\Windows\System32\> copy sethc.exe sethc.bak
C:\Windows\System32\> copy cmd.exe sethc.exe

這些命令進入sethc.exe和cmd.exe所在的目錄,創建粘滯鍵程序的備份副本,并用命令提示符程序文件的副本替換原來的粘滯鍵程序文件。這樣,每當計算機運行sethc.exe,它就會打開一個命令提示窗口,而不是粘滯鍵程序。

2.在第3個命令之后,Windows會詢問你是否要覆蓋sethc.exe。輸入“Y”繼續。

3.取出Windows 10安裝DVD光盤或USB盤,重啟計算機。

4.當計算機啟動至登錄屏幕時,按Shift鍵5次。你看到的不再是通常的粘滯鍵程序,一個命令提示窗口將在登錄屏幕上彈出,如圖2-3所示。

圖2-3 命令提示符窗口彈出

5.在命令提示符窗口中輸入以下兩個命令:

C:\Windows\System32\> net user ironman Jarvis /add
C:\Windows\System32\> net localgroup administrators ironman /add

第1個命令將名為ironman的用戶賬號和密碼Jarvis添加到Windows計算機中。第2個命令將ironman用戶添加到本地管理員列表中。這意味著當我們以ironman的身份登錄時,將擁有管理員級權限,能夠訪問所有文件。

6.當你看到如圖2-4所示的成功消息時,關閉命令提示符。

圖2-4 成功添加了名為ironman的用戶作為計算機管理員

除了創建新用戶賬號之外,你還可以在命令提示符窗口中重置現有用戶的密碼,方法是輸入net user,后面跟上現有的用戶名和要設置的新密碼,例如net user bryson Thisisyournewpassword!。但是,如果沒有他人的許可或計算機所有者的許可,你千萬不要重置他人的密碼。

2.1.3 現在你是管理員了

恭喜!現在你可以用管理員身份訪問計算機了。輸入.\ironman作為用戶名(或者從賬號列表中選擇ironman,如圖2-5所示)登錄。ironman前面的點和反斜杠告訴了Windows該賬號是本地的,而不是存儲在網絡服務器上的。輸入用戶名后,輸入密碼Jarvis。

由于我們讓ironman用戶成為本地管理員組的成員,所以你對所有文件和文件夾都擁有管理員級訪問權限,包括C:\Users\中的所有用戶和文檔,如圖2-6所示。

圖2-5 現在可以用ironman用戶登錄這臺Windows PC

圖2-6 管理員可以看到所有用戶的文件

當你首次單擊進入另一個用戶的文件夾時,會看到一個彈出消息,提示你需要許可才能打開這個用戶的文件,如圖2-7所示。由于你現在是管理員,請點擊“繼續”(Continue)以授予自己永久訪問權限。

圖2-7 管理員可以授予自己超級權限,在同一臺計算機上訪問任何人的文件

粘滯鍵攻擊只適用于Windows機器,然而,運行macOS的計算機也容易受到物理訪問攻擊。

主站蜘蛛池模板: 蒙阴县| 遵义县| 马尔康县| 邯郸市| 津市市| 余庆县| 积石山| 连平县| 丹棱县| 博野县| 秀山| 浮山县| 辽源市| 偏关县| 油尖旺区| 灵台县| 太白县| 邛崃市| 阳新县| 濉溪县| 收藏| 台北市| 西华县| 疏勒县| 荔浦县| 齐河县| 吴忠市| 鹿邑县| 临潭县| 巩义市| 西和县| 瑞昌市| 宣汉县| 于田县| 凉城县| 金湖县| 德保县| 饶平县| 南华县| 秦皇岛市| 秭归县|