Operacja Chown nie jest dozwolona dla rootowania

21

Próbuję zmienić właściciela pliku na rootowanie, ale nie mogę. Robię to jako root. Otrzymuję następujący komunikat:

chown: changing ownership of `ps': Operation not permitted
Peter Stuifzand
źródło
Wyjście ls -lha i lsattr pomogłoby w rozwiązaniu :)
drAlberT

Odpowiedzi:

45

W pliku można ustawić atrybut niezmienny. Usuń go za pomocą chattr -i

Cian
źródło
8
To było. Ale dziękuję za skinienie we właściwym kierunku.
Peter Stuifzand
Dziękujemy, jak mogę ponownie ustawić na nim atrybut niezmienny?
Zim3r
chattr + i <plik>
Cian
chattr: Inappropriate ioctl for device while reading flags on
andilabs
8

Istnieje kilka rozwiązań, niektóre z nich:

  • masz system plików, który nie pozwala np. uid: gid, np .: FAT
  • napęd został zamontowany tylko do odczytu
  • Obowiązuje SELinux lub inne organy bezpieczeństwa
  • system plików jest ustawiony na tryb tylko do odczytu (na przykład xfs_freeze)
  • plik ma ustawioną niezmienną flagę (man chattr)
asdmin
źródło
System plików to ext3, zamontowany odczyt-zapis, brak SELinux.
Peter Stuifzand
Możliwe jest również, że plik znajduje się w systemie plików NFS, zamontowanym jako root_squash, choć jest mało prawdopodobne, biorąc pod uwagę plik.
Cian
3

Zabawny. Czy sprawdziłeś dzienniki systemowe (/ var / log / messages, / var / log / syslog, wyjście dmesg) pod kątem jakichkolwiek wskazówek?

Możliwe przyczyny:

  • Używasz systemu Linux o podwyższonym poziomie bezpieczeństwa, takiego jak SELinux . Ograniczają to nawet to, co root może zrobić.
  • Plik znajduje się w systemie plików, który nie obsługuje własności pliku, takim jak (V) FAT. W zależności od opcji montowania chmod / chown da ci błędy.
Śleske
źródło
3

Spróbuj tego:

[root @ root] # chattr -ais / bin / ls

po zmianie właściciela i grupy z powrotem na root.

Lucas Kauffman
źródło
2

Miałem ten sam problem.

$ chattr -V -i dir
chattr 1.41.12 (17-May-2010)
Flags of dir set as s----a---------

Co nie wystarczyło. Więc dodałem „sa”

$ chattr -V -ais dir
chattr 1.41.12 (17-May-2010)
Flags of dir set as ---------------
$ chown root dir
$

Problem rozwiązany :)

Jesper Grann Laursen
źródło
0

na jakim systemie plików jest plik „ps”, który próbujesz zmienić? Czy FS jest montowany jako ro (tylko do odczytu)?

jeśli mówisz o / bin / ps, na debianie zawsze jest tak:

-rwxr-xr-x 1 root root 76132 2009-05-28 10:48 /bin/ps*
kargig
źródło
Problem polega na tym, że mój system został zhakowany i niektóre pliki zostały zastąpione. Teraz chcę je zastąpić oryginałami, ale nie działa.
Peter Stuifzand
9
Jeśli włamano się do twojego systemu, nie chcesz przywracać plików. Masz żadnego sposobu mówienia, co zostało złamane, i nic w systemie jest godne zaufania. Wyczyść i zainstaluj ponownie z kopii zapasowych.
Cian
1
Jak powiedział Cian, jeśli Twój system został zhakowany i uzyskali dostęp do konta root, nie zastępuj plików. Może nadal zawierać (prawie) niewidoczny rootkit, który przejmuje kontrolę nad wywołaniami systemowymi. Nadal może to być wąchanie haseł, może nadal otwierać tylne drzwi w twoich usługach i (i nieskończona liczba możliwych rzeczy, które może zawierać zaatakowana maszyna). Rozsądnym rozwiązaniem jest wyłączenie komputera i przestudiowanie jego zawartości w trybie offline, umieszczając dysk w innym urządzeniu. W ogóle nie ufaj tej maszynie i nie zastępuj żadnych plików binarnych, mogą one zawierać cenne informacje, aby dowiedzieć się, co robi rootkit.
kargig
0

Możliwe jest „odgadnięcie” innych odpowiedzi. Podpowiedź debugowania może zrobić strace polecenia, i spojrzeć na wyjście, aby zobaczyć, co jest prawdziwym problemem w sama syscalli.

strace chown root /bin/ps 2>&1 | less 
drAlberT
źródło