Jak usunąć plik bez uprawnień?


22

Haker upuścił plik w moim katalogu tmp, który powoduje problemy. Nic złośliwego poza tworzeniem GB wpisów z error_log, ponieważ ich skrypt nie działa. Jednak plik, którego używają do wykonania, nie ma uprawnień i nawet jako ROOT nie mogę usunąć ani zmienić nazwy tego pliku.

----------  1 wwwusr wwwusr 1561 Jan 19 02:31 zzzzx.php

root@servername [/home/wwwusr/public_html/tmp]# rm zzzzx.php
rm: remove write-protected regular file './zzzzx.php'? y
rm: cannot remove './zzzzx.php': Operation not permitted

Próbowałem także usunąć przez i-węzeł

root@servername [/home/wwwusr/public_html/tmp]# ls -il

...
1969900 ----------  1 wwwusr wwwusr 1561 Jan 19 02:31 zzzzx.php

root@servername [/home/wwwusr/public_html/tmp]# find . -inum 1969900 -exec rm -i {} \;

rm: remove write-protected regular file './zzzzx.php'? y
rm: cannot remove './zzzzx.php': Operation not permitted

Jak usunąć ten plik?


15
Gdybym był tobą, chciałbym nuke i brukować to pudełko. Wyraźnie ma co najmniej jedną dziurę w zabezpieczeniach, co jest na tyle złe, że ktoś może pisać nowe pliki z niestandardowymi uprawnieniami poza katalogiem głównym dokumentu, a następnie, poza tym, uda się uzyskać PHP / Apache, aby spróbował go załadować. Mój przyjacielu, jesteś po królewsku. Jeśli chcesz odzyskać to pudełko, musisz nuke go z orbity. To jedyny sposób, aby się upewnić .
— Warren Young,

Dzięki, Warren. W rzeczywistości jest to zupełnie nowe pudełko przenoszące się na konta, które nigdy wcześniej nie były zagrożone. Próbuję dowiedzieć się, jakie są różne ustawienia (oba pola CPanel).
— Bradley,

2
Tylko dlatego, że system operacyjny jest nowy i nowa instalacja nie oznacza, że ​​nie możesz iść na kompromis. Wykryty dzisiaj błąd w systemie operacyjnym dostarczonym 6 miesięcy temu może utrzymywać się przez lata, ponieważ ludzie nadal instalują starszy system operacyjny z płyt CD, które ciągle się starzeją. Nawet jeśli istnieje usterka, okno między instalacją a aktualizacją pozwala na kompromis. Odkładając to na bok, jeśli się mylę, że jakiś zły aktor umieścił ten plik w twoim systemie, sumienny administrator systemu musiałby przynajmniej spróbować wyjaśnić swoją obecność w inny sposób.
— Warren Young,

Odpowiedzi:


26

Plik został prawdopodobnie zablokowany przy użyciu atrybutów pliku .

Jako root, zrób

lsattr zzzzx.php

Obecne atrybuty a(tryb dołączania) lub i(niezmienne) mogą zapobiec rm. Jeśli tam są, to

chattr -ai zzzzx.php
rm zzzzx.php

powinien usunąć twój plik.


Unikałbym nazywania ich atrybutami pliku rozszerzonego , ponieważ mogłoby to spowodować zamieszanie z atrybutami pliku rozszerzonego ustawionymi setfxattri używanymi do przechowywania atrybutów ACL lub SELinux ...
— Stéphane Chazelas

@Stephane Chazelas - ok. Czy zwykłe „atrybuty pliku” działają dla Ciebie?
— ire_and_curses

1
Nie mogę wymyślić nic lepszego. Kiedyś były atrybutami plików ext2, ale teraz są obsługiwane przez inne FS w Linuksie, takie jak xfs btrfs, więc nie można ich już tak nazywać.
— Stéphane Chazelas

3

Niestety Warren nie opublikował jako odpowiedzi, ale jako komentarz; Nie mogę podkreślić wystarczająco, że ma całkowitą rację.

Usunięcie / zmiana jednego pliku nie naprawi PRAWDZIWEGO problemu; sprawi, że JEDEN objaw zniknie. Przełącz urządzenie w tryb offline, zrób zdjęcie do późniejszej analizy kryminalistycznej i zainstaluj ponownie, używając nowszej wersji (mam nadzieję, że z nowymi poprawkami bezpieczeństwa) tego, co uruchomiłeś.

Powtarzam: usunięcie pliku NIE JEST PROBLEMEM .


7
Nie opublikowałem odpowiedzi, ponieważ mój komentarz nie odpowiada na zadane pytanie.
— Warren Young,

Hej ... Chyba wciąż jestem zbyt nowy w sposobie robienia wymiany stosów. Wolę głosować na „nie odpowiadać” niż na to, co trzeba powiedzieć; D
— zadzwoń

Pytanie nie dotyczy rozwiązania tego problemu, chodzi o usunięcie pliku bez uprawnień. To interesujące pytanie!
— wim

5
@tink: to właśnie komentarze są dla : mówić rzeczy, które muszą zostać wypowiedziane, które nie odpowiada na pytanie.
— Warren Young,

Oczywiście to nie odpowiedzieć na pytanie, które poproszono. Wyczyszczenie dysku spowoduje usunięcie pliku! Zwykle nie jest to rozsądna metoda usuwania pliku, ale w tym przypadku jest to najbardziej rozsądny sposób, ponieważ rozwiązuje on jednocześnie podstawowy problem. (Co więcej, nawet jeśli nie odpowiedziałoby to dosłownie na pytanie, jak zostało wyraźnie zadane - co robi! - publikowanie rozwiązania rzeczywistego problemu PO nie jest błędem ).
— Eliah Kagan
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.