Dziurawy Windows 8.1 – Backdoor

Dziury w Windows 8.1 – backdoor – jak podaje google-security-research mamy doczynienia z podniesieniem/zamiana uprawnień w ahcache.sys / NtApphelpCacheControl.

Platforma: Windows 8.1  Aktualizacja 32/64 bit

"On Windows 8.1 update the system call NtApphelpCacheControl 
(the code is actually in ahcache.sys) 
allows application compatibility data to be cached for 
quick reuse when new processes are created. 
A normal user can query the cache but cannot add new cached 
entries as the operation is restricted to administrators. 
This is checked in the function AhcVerifyAdminContext.

This function has a vulnerability where it doesn't correctly 
check the impersonation token
of the caller to determine if the user is an administrator. 
It reads the caller's impersonation token using 
PsReferenceImpersonationToken 
and then does a comparison between the user SID in the token to 
LocalSystem's SID. 
It doesn't check the impersonation level of the token so it's possible 
to get an identify token on your thread from a local 
system process and bypass this check. 
For this purpose the PoC abuses the BITS service and COM 
to get the impersonation token but there are probably other ways. 

It is just then a case of finding a way to exploit the vulnerability. 
In the PoC a cache entry is made for an UAC auto-elevate executable 
(say ComputerDefaults.exe) 
and sets up the cache to point to the app compat entry for regsvr32 
which forces a RedirectExe shim to reload regsvr32.exe. 
However any executable could be used, the trick would be finding 
a suitable pre-existing app compat configuration to abuse. 

It's unclear if Windows 7 is vulnerable as the code path for update has 
a TCB privilege check on it 
(although it looks like depending on the flags this might be bypassable). 
No effort has been made to verify it on Windows 7. 
NOTE: This is not a bug in UAC, it is just using UAC 
auto elevation for demonstration purposes. 

The PoC has been tested on Windows 8.1 update, both 32 bit and 64 bit versions. 
I'd recommend running on 32 bit just to be sure. 
To verify perform the following steps:

1) Put the AppCompatCache.exe and Testdll.dll on disk
2) Ensure that UAC is enabled, the current user is a split-token admin 
and the UAC setting is the default (no prompt for specific executables). 
3) Execute AppCompatCache from the command prompt with the command line 
"AppCompatCache.exe c:\windows\system32\ComputerDefaults.exe testdll.dll". 
4) If successful then the calculator should appear running as an administrator. 
If it doesn't work first time (and you get the ComputerDefaults program) 
re-run the exploit from 3, 
there seems to be a caching/timing issue sometimes on first run. 

This bug is subject to a 90 day disclosure deadline. If 90 days elapse
without a broadly available patch, then the bug report will automatically
become visible to the public."

Do tego załączony plik testowy

Lukę do poprawienia ma funkcja "AhcVerifyAdminContext" 
a Microsoft mimo ostrzeżeń z Googla nic sobie z tego nie robi...
Do tej informacji dołączono exploit "PoC". 
Błąd ten nie pozwala na zdalny atak, 
jednak umożliwia podniesienie uprawnień do poziomu administratora 
na skutek błędu w ahcache.sys/NtApphelpCacheControl. 
Wynik działania exploita

Wynik działania exploita. Zdjęcie z portalu: niebezpiecznik.pl

Windows 8

Wszystko o Windows 8

Windows 8 – pomocne kafelki:

– Zamknij

– Wyloguj

– Restart

Windows 8 | zamknij | wyloguj | restart
Jak to zrobić? Odpowiedź jest prosta 🙂 Otwórz notatnik i wklej kod podany poniżej:

set WshShell = WScript.CreateObject(“WScript.Shell”)
strStartMenu = WshShell.SpecialFolders(“StartMenu”)
set oShellLink = WshShell.CreateShortcut(strStartMenu & “Zamknij.lnk”)
oShellLink.TargetPath = “%systemroot%System32shutdown.exe”
oShellLink.Arguments = “-s -t 0”
oShellLink.WindowStyle = 1
oShellLink.IconLocation = “%systemroot%System32shell32.dll,27”
oShellLink.Description = “Shutdown Computer (Power Off)”
oShellLink.WorkingDirectory = “%systemroot%System32”
oShellLink.Save
Set oShellLink = Nothing
set oShellLink = WshShell.CreateShortcut(strStartMenu & “Wyloguj.lnk”)
oShellLink.TargetPath = “%systemroot%System32shutdown.exe”
oShellLink.Arguments = “-l”
oShellLink.WindowStyle = 1
oShellLink.IconLocation = “%systemroot%System32shell32.dll,44”
oShellLink.Description = “Log Off (Switch User)”
oShellLink.WorkingDirectory = “%systemroot%System32”
oShellLink.Save
Set oShellLink = Nothing
set oShellLink = WshShell.CreateShortcut(strStartMenu & “Restart.lnk”)
oShellLink.TargetPath = “%systemroot%System32shutdown.exe”
oShellLink.Arguments = “-r -t 0”
oShellLink.WindowStyle = 1
oShellLink.IconLocation = “%systemroot%System32shell32.dll,176”
oShellLink.Description = “Restart Computer (Reboot)”
oShellLink.WorkingDirectory = “%systemroot%System32”
oShellLink.Save
Set oShellLink = Nothing
Wscript.Echo “Kafelki: Zamknij, Restart i Wyloguj zostały dodane. Możesz teraz przypiąć je do paska zadań Windows 8.”

Następnie w menu wybieramy:

Plik->Zapisz jako->Nazwa pliku: dowolna.txt.
Zapisany plik (np. na pulpicie) klikamy prawym przyciskiem myszy, wybieramy “zmień nazwę” i zmieniamy rozszerzenie z txt na vbs
Skrypt uruchamiamy klikając (domyślnie) 2 razy w ten sposób utworzyły się dodatkowe kafelki które można przypiąć do paska zadań Windows 8.

Aktualizacja z błędem w Windows 8 i Windows 8.1 która uniemożliwia wprowadzanie polskich znaków to Synaptics-Pointing Device. Po odinstalowaniu tej aktualizacji mamy ponownie polskie znaki.