권한이없는 파일을 어떻게 제거합니까?


22

해커가 문제를 일으키는 tmp 디렉토리에 파일을 삭제했습니다. 스크립트가 실패하여 GB의 error_log 항목을 작성하는 것 외에는 악의적 인 것이 없습니다. 그러나 그들이 실행하는 데 사용하는 파일에는 권한이 없으며 ROOT 이더라도이 파일을 삭제하거나 이름을 바꿀 수 없습니다.

----------  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

나는 또한 inode로 제거를 시도했다.

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

이 파일을 어떻게 삭제합니까?


15
나는 너 였고, 그 상자 를 핵으로 포장 하기를 원할 것이다 . 적어도 하나의 보안 허점이있어 누군가가 문서 루트 외부에서 사용자 정의 권한으로 새 파일 작성할 수 있고 그 위에 PHP / Apache가 시도하여로드 할 수있을 정도로 나쁩니다 . 내 친구여, 당신은 왕권이 있습니다. 상자를 다시 원한다면 궤도에서 핵무기를해야합니다. 확실한 유일한 방법 입니다.
워렌 영

고마워 워렌 이것은 실제로 이전에 타협하지 않은 계정으로 이동하는 새로운 상자입니다. CPanel 상자 모두 다른 설정이 무엇인지 파악하려고합니다.
Bradley

2
OS가 최신 버전이고 새로 설치했다고해서 타협 할 수있는 것은 아닙니다. 6 개월 전에 출시 된 OS에서 오늘날 발견 된 버그는 사람들이 계속해서 점점 더 오래된 CD에서 오래된 OS를 계속 설치함에 따라 몇 년 동안 지속될 수 있습니다. 결함에 대한 패치가 있더라도 설치와 업데이트 사이의 창은 타협을 허용합니다. 이를 제외하고, 일부 나쁜 행위자가 시스템에 해당 파일을 배치했다고 잘못하면 양심적 인 sysadmin은 적어도 다른 방법으로 그 존재를 설명하려고 시도해야합니다.
워렌 영

답변:


26

파일이 파일 속성을 사용하여 잠겨있을 수 있습니다 .

루트로서

lsattr zzzzx.php

속성 a(추가 모드) 또는 i(불변)이 있으면를 막을 수 있습니다 rm. 그들이 거기 있다면

chattr -ai zzzzx.php
rm zzzzx.php

파일을 삭제해야합니다.


ACL 또는 SELinux ... 속성을 설정하고 저장하는 데 사용되는 확장 파일 속성과 혼동을 일으킬 수 있으므로 확장 파일 속성을 호출하지 마십시오 setfxattr.
Stéphane Chazelas

@Stephane Chazelas-좋아. 일반 '파일 속성'이 효과가 있습니까?
ire_and_curses

1
나는 더 나은 것을 생각할 수 없다. 이전에는 ext2 파일 속성 이었지만 xtr과 같은 Linux의 다른 FS에서 지원되므로 더 이상이를 호출 할 수 없습니다.
Stéphane Chazelas

3

불행히도 Warren은 답변이 아니라 의견으로 게시했습니다. 나는 그가 완전히 정확하다고 강조 할 수 없습니다.

하나의 파일을 제거 / 변경해도 REAL 문제는 해결되지 않습니다. 하나의 증상이 사라질 것입니다. 상자를 오프라인으로 전환하고 나중에 법의학을 위해 이미지를 촬영 한 다음 실행중인 최신 버전 (새로운 보안 수정 사항 포함)으로 다시 설치하십시오.

반복 : 파일 삭제는 FIX아닙니다 .


7
내 의견이 묻는 질문에 답변하지 않아 답변을 게시하지 않았습니다.
워렌 영

Heh ... 나는 여전히 스택 교환 방식에 너무 익숙하지 않은 것 같습니다. 차라리
말해야

문제는 해당 문제를 해결하는 것이 아니라 권한이없는 파일을 제거하는 것입니다. 그리고 흥미로운 질문입니다!
wim

5
@tink : 그것은 의견에 대한 것입니다 : 질문에 대답하지 않는, 말할 필요가있는 것을 말하십시오.
워렌 영

분명히 이것은 않는 질문을 받았다 질문에 대답. 디스크를 닦으면 파일이 제거됩니다! 일반적으로 파일을 제거하는 합리적인 방법은 아니지만이 경우 기본 문제를 동시에 해결하므로 가장 합리적인 방법입니다. (또한, 이것이 명시 적으로 요청 된대로 문자 그대로 질문에 대답하지 않더라도 OP의 실제 문제에 대한 해결책을 게시하는 것은 잘못이 아닙니다 .)
Eliah Kagan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.