วิ่ง "chown www-data: www-data / -R" โดยบังเอิญโดยบังเอิญ


26

ฉันเพิ่งวิ่งนี้ไม่กี่วินาทีที่ผ่านมา ฉันจัดการที่จะทำCtrl- Cทันทีที่ฉันตระหนักถึงสิ่งที่ฉันเริ่มทำ

/binเพื่อให้ห่างไกลไดเรกทอรีเท่านั้นก็เริ่มจะผ่านคือ

ฉันกลัวที่จะทำอะไรอย่างอื่น จนถึงตอนนี้ฉันก็รู้ว่าฉันไม่สามารถใช้suเป็นผู้ใช้ปกติของฉันได้อีกต่อไป

โชคดีที่ฉันยังมีรูทเทอร์มินัลอื่นเปิดอยู่ ฉันจะทำอย่างไร


26
ดูเหมือนว่าคุณจะเป็นเพื่อนกันที่นั่น
ta.speot.is

4
ตอนนี้คุณเข้าใจถึงความสำคัญของการสำรองข้อมูลแล้ว ทำอย่างสม่ำเสมอ
Juliano

อย่างน้อยเขาก็ไม่ได้ chmod จากราก นั่นเป็นหายนะที่เกิดขึ้นอย่างสมบูรณ์ อย่างน้อย rm -rf จากรูทช่วยให้คุณมีพื้นที่ดิสก์มากขึ้นและเตรียมความพร้อมสำหรับการติดตั้งระบบแบบเต็ม chmod เพิ่งยุ่งเหยิงจริงซึ่งค่อนข้างยากที่จะกู้คืนจากสิ่งใดนอกจากการติดตั้งระบบใหม่ทั้งหมด หญ้ามีสีน้ำตาลทั้งสองด้านของรั้วใช่มั้ย
Fiasco Labs

คำตอบ:


10

ทุกอย่างใน / bin / ควรเป็นเจ้าของโดย root: root ดังนั้นหากคุณเรียกใช้สิ่งต่อไปนี้คุณสามารถแก้ไขความเป็นเจ้าของในไฟล์เหล่านั้น:

chown root:root -R /bin/ 

คุณอาจต้องการตรวจสอบให้แน่ใจว่า setuid บิตตั้งอยู่บน / bin / su อย่างถูกต้องซึ่งคุณสามารถแก้ไขได้ดังต่อไปนี้:

chmod 4755 /bin/su

1
บน Ubuntu มันสำคัญอย่างยิ่งที่จะทำเช่นเดียวกันกับ sudo ฉันไม่คิดว่ารหัสผ่านรูทจะถูกตั้งเป็นค่าเริ่มต้นด้วยซ้ำ โดยวิธีการที่ฉันแนะนำจริง ๆ แล้วใช้ sudo แทนเปลือกหอย ครึ่งวินาทีที่ใช้ในการพิมพ์ sudo โดยปกติจะหยุดข้อผิดพลาดเช่นนั้นในแทร็ก เพียงแค่การทำงานในเปลือกรากเป็นเรื่องง่ายที่จะพลาด ...
แบร์น Haug

4
paste.ubuntu.com/362468เป็น "ls -l / bin" จาก Ubuntu 9.10 ของฉัน แม้ว่าฉันอาจไม่ได้ติดตั้งไฟล์เดียวกันทุกประการ แต่อย่างน้อยก็ควรให้คำแนะนำที่ดีแก่คุณว่าไฟล์ใดบ้างที่ต้องการการอนุญาตพิเศษ
andol

@Bernd: แม้ว่าฉันจะไม่ได้ทำงานดูแลระบบมาก แต่ฉันได้สังเกตเห็นว่าฉัน sudo เป็นใบ้น้อยกว่าสิ่งที่ฉันทำในฐานะที่เป็นราก ฉันไม่สามารถใช้รหัสผ่านรูทได้อีก (และไม่ไม่มีรหัสผ่านรูทเริ่มต้นบน Ubuntu และฉันไม่คิดว่าจะมีรหัสผ่านบน MacOSX)
David Thornley

@David: ไม่มีรหัสผ่านรูทเริ่มต้นใน OS X และการตั้งค่าส่วนใหญ่เป็นความผิดพลาด IMO มีอีกวิธีที่ดีกว่า ปัญหาคือว่า Mac จะไม่ปลอดภัยเกินไปที่จะเริ่มต้นด้วย; ฉันคาดหวังว่าจะเห็น 'สนุก' มากเมื่อพวกเขามีฐานการติดตั้งที่ใหญ่ขึ้นเพื่อสร้างลูกค้า RKs, Virii, Botnet และสร้างผลกำไร
Bernd Haug

36

ผู้ใช้ที่ Redhat:

chown 0:0 /bin/rpm && rpm -qa | xargs rpm --setugids

ผู้ใช้ Debian / Ubuntu:

chown 0:0 /bin/*  /usr/bin/*
chown daemon:daemon /usr/bin/at
chown 0:utmp /usr/bin/screen
chmod 02755 /usr/bin/screen
chmod u+s /bin/fusermount /bin/mount /bin/su /bin/mount
chmod u+s /usr/bin/sudo /usr/bin/passwd
screen

ขณะที่หน้าจอกำลังทำงานให้ทำอย่างน้อยสองครั้ง:

dpkg --get-selections | awk '{ if ($2 == "install") print $1}' \
    | xargs apt-get install --reinstall --

จ่ายมากสนใจใกล้เคียงกับการส่งออกเพราะถ้ามันบ่นเกี่ยวกับสิ่งที่มีสิทธิ์ที่ไม่ถูกต้องคุณควรแก้ไขได้บนหน้าต่างหน้าจออื่น

หลักสูตรการชนในหน้าจอ:

Control+A     - command key
Control+A a   - emit a control+A
Control+A n   - next "screen"
Control+A c   - create "screen"

ผู้ใช้โซลาริส:

คุณกำลังระยำ

pkgchk -R / -f -a

จะรีเซ็ตสิทธิ์ทั้งหมด แต่ setuid-ness จะยังคงใช้งานไม่ได้ ใช้การสำรองข้อมูลหรือเครื่องโซลาริสเครื่องอื่นเพื่อค้นหาสคริปต์และไฟล์ setuid / setgid และแก้ไขด้วยตนเอง

สิ่งที่สำคัญเกี่ยวกับการสำรองข้อมูล

คือคุณสามารถกู้คืนมันไม่ใช่ที่คุณใช้

คนอื่นให้คำแนะนำคุณในการสำรองข้อมูล แต่ฉันต้องการเพิ่มว่าคุณควรทำการทดสอบ หากคุณใช้ระบบยูนิกซ์ไม่มีเหตุผลใด ๆที่คุณไม่สามารถถ่ายโอนไฟล์ไปยังเครื่องอื่นเป็นระยะและตรวจสอบให้แน่ใจว่าทุกอย่างทำงานได้


FreeBSD ผู้ใช้: จะไม่ทำแบบนี้ผิดพลาด;)
einstiien

10
@einstiien Yep ผู้ใช้ FreeBSD ตรงไปยังrm -rfเวที
grawity

@grawity: ฮ่า ๆ ๆ ดี
einstiien

ผู้ใช้โซลาริสแย่ :(
Mircea Chirea

3

โปรดทราบว่าการตั้งค่าสถานะ set-uid บนไบนารีที่ได้รับผลกระทบอาจถูกลบเช่นกัน นี่เป็นคุณลักษณะด้านความปลอดภัยของ chown ตรวจสอบกับระบบอื่น ๆ ที่ไบนารีมีธง set-uid หรือ set-gid และตรวจสอบให้แน่ใจว่าได้ตั้งไว้บนไบนารีของคุณเช่นกัน


3

ผมจะอธิบายรายละเอียดของการใช้ RPM รีเซ็ตสิทธิ์ของแฟ้ม แต่ฉันได้พบเว็บไซต์ที่มีจำนวนมากข้อมูลเพิ่มเติม มันยังพูดถึงว่า Ubuntu / Debian (ดังนั้น. deb โดยทั่วไป) ไม่สนับสนุน

แต่โดยทั่วไปตัวเลือกที่คุณกำลังมองหาจะอยู่ตามเส้น

rpm --setugids {packagename}

นี่เป็นระบบอูบุนตูตามที่ระบุโดยแท็ก ซึ่งหมายความว่าจะใช้ dpkg และ. DEBs แทน rpm และ. RPMs
Kevin M

2

หากนี่เป็นระบบเดเบียนฉันจะต้องติดตั้งทุกอย่างใหม่


0

คุณมีข้อมูลสำรองที่ใช้งานได้หรือไม่ เมื่อใช่ให้กู้คืนโฟลเดอร์ bin ของคุณ

มิฉะนั้นดูที่กล่องอื่นที่คุณติดตั้งอูบุนตูรุ่นเดียวกันและchownที่คุณพบในการติดตั้งที่ใช้งานได้


0

ลองสิ่งนี้: ค้นหา www-data ทั้งหมดในไดเรกทอรี / bin

# find /bin -user www-data

จากนั้นเปลี่ยนข้อมูล www กลับเป็นผู้ใช้เดิม

# find /bin -user www-data -exec chown ORiginalUser {} \;

# then change www-data back to oringal group
# find /bin -group www-data -exec chgrp originaluser {} \;

0

ขอบคุณสำหรับคำตอบที่ยอดเยี่ยมทุกอย่างดูเหมือนจะได้รับการแก้ไขแล้ว

/ bin / su ทำงานครั้งเดียว chmod จะเป็น 4755 (ไม่แน่ใจว่าทำไม chown เปลี่ยน suid bit)

ฉันไม่ได้แจ้งให้ทราบล่วงหน้า แต่มันก็เริ่มทำงานผ่านไดเรกทอรี / home แต่นั่นเป็นการแก้ไขที่ง่ายพอ (แค่ตั้งค่าผู้ใช้: จัดกลุ่มผู้ใช้สำหรับแต่ละ dir)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.