Skocz do zawartości
picasso

Nieusuwalne klucze rejestru

Rekomendowane odpowiedzi

Klucze bez uprawnień - "Odmowa dostępu" / "Błąd przy usuwaniu klucza"
 
 
 
Metoda przez zmianę uprawnień kluczy

 

 

win8_medium.png
Windows 10 | Windows 8/8.1
 

 

Operacja rozkłada się na dwa etapy: przejęcie klucza na własność + przyznanie Pełnej kontroli.

 

1. Uruchom edytor rejestru poprzez wpisanie w wyszukiwarce Windows słowa regedit i z prawokliku "Uruchom jako administrator":

 

adminregedit.png

 

2. Przejdź do wybranego klucza, z prawokliku wybierz opcję Uprawnienia (Permissions).

 

permissions1.png
 

W zależności od sytuacji może pojawić się poniższy komunikat:

 

permissions2.png

 

3. W oknie wybierz przycisk Zaawansowane (Advanced).

 

permissions3.png

 

W zależności od sytuacji może ponownie pojawić się poniższy komunikat:

 

permissions2.png

 
4. Zweryfikuj linię Właściciel (Owner). Jeśli nie figuruje tu Twoje konto lub grupa Administratorzy, bądź też jest wyświetlany komunikat "Nie można wyświetlić bieżącego właściciela" ("Unable to display current owner") kliknij w Zmień (Change).

 

permissions4.png
 
5. W oknie dialogowym wpisz nazwę swojego konta (lub grupę Administratorzy) i potwierdź przez OK.

 

permissions5.png
 
6. Wybrane konto lub grupa pojawi się w linii Właściciel, ale zmiana nie zostanie wprowadzona, dopóki nie potwierdzisz operacji przyciskiem Zastosuj (Apply).

 

permissions6.png
 
Kwestia podkluczy: Jeśli klucz zawiera podklucze, można spróbować od razu zresetować w głąb zaznaczając opcję Zamień właściciela dla podkontenerów i obiektów (Replace owner on subcontainers and objects) i klik w Zastosuj (Apply). Niemniej ta operacja może zwrócić poniższy błąd. W tym przypadku należy anulować operację, powtórzyć kroki 1 do 5 i nie zaznaczyć tej opcji. Dopiero po ustawieniu uprawnień klucza głównego przeprowadzić reset podklucza / podkluczy.

 

permissions7.png
 
7. Zmiana właściciela to krok wstępny umożliwiający przyznanie uprawnień. Kliknij w przycisk Dodaj (Add).
 
8. W nowym oknie kliknij w Wybierz podmiot zabezpieczeń (Select a principal).

 

permissions8.png
 
9. W oknie dialogowym wpisz nazwę swojego konta (lub grupę Administratorzy) i potwierdź przez OK.

 

permissions5.png
 
10. Zaznacz Pełna kontrola (Full Control) i zatwierdź przez OK.

 

permissions9.png

 

11. Konto pojawi się na liście. Ponownie zatwierdź OK i zamknij wszystkie okna dialogowe. Spróbuj usunąć oporny klucz.

 
 
orb_medium.png
Windows 7 | Vista
 

 

 

Operację prowadzi się w taki sam sposób jak dla nowszych systemów, tylko okna dialogowe wyglądają inaczej, ustawianie Właściciela jest zagrzebane w dodatkowej karcie.
 
1. W Start wpisujemy na szukanie słowo regedit, na wyniku z prawokliku Uruchom jako administrator:
 
ruasadmin1.gif
 
2. Przechodzimy do klucza, który chcemy skasować, i z prawokliku nań wybieramy Uprawnienia (Permissions):
 
perm06.gif
 
3. Otworzy się główne okno z listą użytkowników. Wybieramy przycisk Zaawansowane (Advanced):
 
perm07.gif
 
4. Przechodzimy do zakładki Właściciel (Owner), zaznaczamy nasze konto, na dole ptaszkujemy opcję Zamień właściciela dla podkontenerów i obiektów (Replace owner on subcontainters and objects) zatwierdzamy wszystko:
 
perm08.gif
 
5. Powrót na listę > przycisk Dodaj (Add) > wpisz nazwę naszego konta i zatwierdź > zaznacz je na liście i zaptasz dla niego Pełna kontrola (Full control) > zatwierdź:
 
perm09.gif
 
Po zmianie właściciela i dograniu praw dostępowych klucz bez trudu się usuwa wraz z całą zawartością.
 




flag_medium.png
Windows XP
 


 
Start > Uruchom > regedit
 
Z prawokliku na dany klucz wybierz Uprawnienia (Permissions):
 
legacy1.png
 
Kliknij Dodaj (Add):
 
legacy2.png
 
Wpisz dokładną nazwę swojego konta i potwierdź:
 
legacy3.png
 
Podświetl swoje konto na liście a na dole zaznacz Pełna kontrola (Full control) i potwierdź:
 
legacy4.png
 
Teraz z prawokliku ten klucz możesz kasować. Jeżeli nadal będzie błąd usuwania klucza: Uprawnienia > Zaawansowane > w pierwszej zakładce na dole zaptasz Zamień wpisy uprawnień na wszystkich obiektach podrzędnych.
 




Automatyczne narzędzia
 


Spis aplikacji w linkowni na forum:
 
Usuwanie zablokowanych kluczy rejestru
 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi

Klucze bez uprawnień - "Odmowa dostępu" / "Błąd przy usuwaniu klucza"
 
 
 
Metoda przez zastartowanie regedit z uprawnieniem konta SYSTEM
 
regeditsystem1.png
 
Alternatywna metoda usuwania kluczy rejestru, do których nie ma uprawnień, to wywołanie edytora rejestru w innym kontekście zabezpieczeń, czyli z poziomu konta SYSTEM. Tak uruchomiony edytor albo udostępni klucze jako gotowe do kasacji i nie trzeba przyznawać im praw, albo też proces przyznawania uprawnień zostanie skrócony. Znakiem na systemie XP, że edytor rejestru regedit jest uruchomiony z tak wysokimi uprawnieniami, jest widoczność m.in. podkluczy klucza SAM, które w standardowo uruchomionym regedit są niewidoczne. Na systemach Vista i nowszych metoda ta ma mniejsze znaczenie niż na XP. Na tych platformach nastąpiło przewartościowanie i kluczowym kontem jest TrustedInstaller. Niemniej startowanie regedit jako SYSTEM również może się okazać przydatne, np. do usuwania kluczy utworzonych przez malware lub przez instalatory uruchomione z wyższymi uprawnieniami.
Takie specjalne uruchomienie edytora rejestru można wykonać przy udziale jednego z darmowych narzędzi:
 


Spis aplikacji w linkowni na forum:
 
Uruchamianie aplikacji na uprawnieniu konta SYSTEM
 


 

 

Process Hacker
 
Strona domowa
 
Platforma: Windows XP do Windows 10 32-bit i 64-bit
Licencja: GPL

 

Z menu Hacker należy wybrać opcję Run As i wypełnić dialog jak na poniższym obrazku:
 
regeditsystem2.png

 

 

 

 

PsExec
 
Strona domowa
 
Platforma: Windows Vista do Windows 10 32-bit i 64-bit
Licencja: freeware

 


1. Pobierz z linka pakunek PsTools zawierający m.in. narzędzie PsExec. Rozpakuj ściągnięty zip i skopiuj plik psexec.exe do folderu C:\Windows.

2. Uruchom linię poleceń jako Administrator:

  • Windows 10 i Windows 8/81: z klawiatury winkey.png + X > z menu wybierz pozycję Wiersz polecenia (administrator)
  • Windows 7 i Vista: Start > w polu szukania wpisz cmd > z prawokliku na wynik Uruchom jako administrator

3. Wpisz poniższe polecenie i ENTER.

 

C:\Windows\system32>psexec -s -i -d regedit



Jeśli ta komenda zwróci błąd "nie znaleziono" (powodem mogą być np. uszkodzone Zmienne środowiskowe), wpisz polecenie z pełnymi ścieżkami dostępu:

 

C:\Windows\system32>C:\Windows\psexec.exe -s -i -d C:\Windows\regedit.exe

 

 

 

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi

Klucze typu NULL - "Błąd uniemożliwia otwarcie klucza" / "Błąd przy usuwaniu klucza"
 
 

Znaki zerowe NULL "\0" to metoda pozwalająca na ukrywanie w rejestrze wpisów w taki sposób, by nie można się było do nich dostać. Ogólnie mamy kwestie dwóch modeli nazewniczych:

Win32 API: Nazwa\0
 
Zerówka "\0" jest traktowana jako znacznik końcówki nazwy, nie brany pod uwagę. Jako nazwa jest brana tylko nie zerowa zawartość "Nazwa" czyli 5 znaków. Ten model nazewnictwa czytają narzędzia takie jak regedit.
 
Native API: Nazwa\0
 
Zerówka "\0" jest traktowana jako część nazwy. Jako nazwa jest brany pod uwagę cały ciąg czyli 6 znaków. Taką nazwę widzi system per se.
 
Czyli jeśli NULL miał być częścią faktycznej nazwy, następuje zafałszowanie jej wyglądu w takich narzędziach które korzystają z Win32 API.

 

 
 
Przykładowy zablokowany klucz
 
Możecie przetestować jak to wygląda w praktyce. Sysinternals udostępnia próbkę RegHide tworzącą taki zablokowany klucz. Na systemach Vista i nowszych z prawokliku "Uruchom jako Administrator". Po uruchomieniu zostanie utworzony w rejestrze klucz null (po zamknięciu narzędzia samoczynnie ulegnie kasacji ta "prezentacja"):
 
HKEY_LOCAL_MACHINE\Software\Systems Internals\Can't touch me!\0
 
Edytor rejestru regedit zobaczy tylko:
 
HKEY_LOCAL_MACHINE\Software\Systems Internals\Can't touch me!
 
Nazwa nie jest właściwie przeczytana, a w konsekwencji nie jest możliwe otworzenie ani usunięcie takiego klucza, co jest oznajmiane takim typem błędu:
 
reghide1.png
 
Klucze tego rodzaju mogą zostać wykryte / podglądnięte via programy specjalizowane w wyszukiwaniu rootkitów. Przykład z programu GMER w jaki sposób jest widziana ta próbka:
 
reghide2.png
 
Technika wstawiania znaków null jest wykorzystywana przez różne zjawiska, zarówno malware, jak i nieszkodliwe oprogramowanie blokujące w ten sposób jakieś określone informacje.
 
 
 
Narzędzia do usuwania kluczy null
 

 

Spis aplikacji w linkowni na forum:
 
Programy do usuwania kluczy zablokowanych znakami null

 

 

Programy poprawnie działające na systemach 64-bit (odczyt 64-bitowej części rejestru): Registry Finder + NReg, RegKeyFixer, MiniRegTool. Pozostałe narzędzia są 32-bitowe i na systemie 64-bit mają limitowane działanie.

 

 

 

NtRegEdit - Native Registry Editor
 
Strona domowa (wymagana rejestracja, by pobrać projekt)
 
Platforma: Windows XP 32-bit *
Licencja: The Code Project Open License (CPOL)

 


Ciekawostka informacyjna. Nietypowy edytor rejestru, który operuje w natywnym API, co oznacza iż jest zdolny zobaczyć takie klucze, a także wykonywać na nich operacje typu usuwanie lub tworzenie tak jakby to się działo na regedit wbudowanym w system. Ciekawy projekt, ale wysoce eksperymentalny i zabugowany. Niestety także nieaktualizowany od lat, choć da się uruchomić na systemach Vista i nowszych *. Odradzam jednak podejście z tym programem, jest zbyt stary i dzieją się dziwne rzeczy podczas jego uruchomienia. Skorzystaj z innych narzędzi opisanych poniżej.
 
reghide5.png

 

 

 

MiniRegTool

Pobieranie wersji 32-bit
Pobieranie wersji 64-bit

Platforma: Windows XP do Windows 10 32-bit i 64-bit
Licencja: freeware

 


MiniRegTool jest dedykowany usuwaniu kluczy zablokowanych, wliczając klucze typu null. W oknie należy wkleić ścieżkę do klucza, dodając znak gwiazdki * sygnalizujący obecność null, następnie wybrać opcję Delete Keys/Values including locked/Null embedded i klik w Go.
 
miniregtool.png
 
 

 

Registry Finder + NReg

 
Strona domowa

Platforma: Windows XP do Windows 10 32-bit i 64-bit
Licencja: freeware

 


Registry Finder to nowoczesny alternatywny edytor rejestru, który jest wyposażony w opcję wyszukiwania ukrytych kluczy:

reghide3.png

reghide4.png


NReg to dodatkowe konsolowe narzędzie z tej samej paczki umożliwiające usuwanie i tworzenie takich kluczy. Polecenie usuwania wygląda następująco:
 
nreg delete "Przykładowy klucz%00"

 

D:\RegistryFinder>nreg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Systems Internals\Can't touch me!%00"
Operacja ukończona pomyślnie. (0)
 
D:\RegistryFinder>

 

 

 

 

SWReg
 
Strona domowa
 
Platforma: Windows XP do Windows 10 32-bit
Licencja: freeware

 


Alternatywa na wbudowany w system konsolowy wariant edytora rejestru REG.EXE. Narzędzie posiada dodatkowe polecenie SWReg NULL, umożliwiające usuwanie oraz dodawanie kluczy typu NULL:

 

 


Microsoft Windows [Wersja 6.1.7600]
Copyright © 2009 Microsoft Corporation. Wszelkie prawa zastrzeżone.
 
C:\Windows\system32>swreg null /?
SteelWerX Registry Console Tool 3.0
Written by Bobbi Flekman 2006 ©
 
SWReg NULL supports a few subcommands for dealing with NULL embedded strings
in the Registry. One thing to note that the embedded nulls are only supported
in the keyname. All possible actions have been augmented with a parameter
that signifies the NULL character, by default this is \0.
 
SWReg NULL ADD FullKeyName [/v ValueName | /ve] [/t Type] [/d Data] [/b] [/n NULL sequence]
 
See the information with ADD.
 
SWReg NULL DELETE FullKeyName [/v ValueName | /ve | /va] [/n NULL sequence]
 
See the information with DELETE.
 
SWReg NULL QUERY FullKeyName [/v ValueName | /ve | /s ] [/n NULL sequence] [/f]
 
See the information with QUERY.
In addition you can specify with /f that all non-embedded NULL keys must be
filtered.


 
Polecenie usuwania wygląda następująco:
 
swreg null delete "Przykładowy klucz\0"

 

 


C:\Windows\system32>swreg null delete "HKEY_LOCAL_MACHINE\SOFTWARE\Systems Internals\Can't touch me!\0"
 
C:\Windows\system32>


 
W poleceniu można zastosować także sekwencję zastępczą, np. może to być znak gwiazdki *:
 
swreg null delete "Przykładowy klucz*" /n *

 

 


C:\Windows\system32>swreg null delete "HKEY_LOCAL_MACHINE\SOFTWARE\Systems Internals\Can't touch me!*" /n *
 
C:\Windows\system32>

 

 

 

 

RegDelNull
 
Strona domowa
 
Platforma: Windows XP do Windows 10 32-bit
Licencja: freeware

 

 
Stara aplikacja Microsoftu, wspominana również w bazie wiedzy: KB2021860. W chwili obecnej jest najbardziej ułomna z podanego tu zestawu i bez wsparcia dla systemów 64-bit (uruchomi się, ale nie zobaczy 64-bitowej części rejestru). Narzędzie jest typem konsolowym, tzn. obsługiwanym z linii komend. Dla ułatwienia obsługi należy je umieścić w którejś ze ścieżek uwzględnianych w Zmiennych środowiskowych np. w folderze C:\WINDOWS. Narzędzie wykonuje detekcję wszystkich kluczy null, które umie rozpoznać, a to oznacza iż w dialogu interakcyjnym z użytkownikiem mogą zostać zadane pytania o skasowanie kluczy, które są częścią systemu i nie powinny być usuwane, dlatego też należy zareagować przez "n". Przykład:
 

 


Microsoft Windows [Wersja 6.0.6002]
Copyright © 2006 Microsoft Corporation. Wszelkie prawa zastrzeżone.
 
C:\Windows\system32>regdelnull hklm -s
 
RegDelNull v1.10 - Delete Registry keys with embedded Nulls
Copyright © 2005-2006 Mark Russinovich
Sysinternals - www.sysinternals.com
 
Null-embedded key (Nulls are replaced by '*'):
 
HKLM\SOFTWARE\Microsoft\Environment*
 
Delete? (y/n) n
 
Null-embedded key (Nulls are replaced by '*'):
 
HKLM\SOFTWARE\Systems Internals\Can't touch me!*
 
Delete? (y/n) y
Key successfully deleted.
 
Scan complete.
 
C:\Windows\system32>

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...