ฉันจะรับเชลล์เชิงโต้ตอบในฐานะผู้ใช้ที่ไม่ใช่รูทคนอื่นได้อย่างไร?


14

ฉันใช้เซิร์ฟเวอร์ Ubuntu 10.04 LTS พร้อมโมเดลความปลอดภัยเริ่มต้น (ล็อครูตsudoเพื่อใช้ยกระดับสิทธิ์) ฉันสนุกกับการใช้เป็นครั้งคราวsudo -iเมื่อฉันต้องการเรียกใช้ชุดคำสั่งที่มีสิทธิ์ยกระดับหรือเมื่อฉันต้องค้นหาในไดเรกทอรีที่มีสิทธิ์แบบรูทเท่านั้น

บางครั้งเมื่อตั้งค่าซอฟต์แวร์ที่จะเรียกใช้เป็นบัญชีระบบที่ไม่มีสิทธิพิเศษ ( adduser --system --group --no-create-home --disabled-login some-daemon-user) ฉันพบว่าฉันต้องเรียกใช้ลำดับของคำสั่งในฐานะผู้ใช้นั้นไม่ใช่ตัวฉันเองหรือรูท ฉันได้ลองใช้sudo -i -u some-daemon-userแต่เพิ่งคืน1สถานะโดยไม่มีข้อผิดพลาดใด ๆ

ผมได้ตรวจสอบsyslog, messages, authและdebugไฟล์บันทึกใน/var/logและไม่มีพวกเขารวมถึงข้อความใด ๆ ที่อ้างอิงsudoหรือบัญชีในคำถาม

ดังนั้นเป็นไปได้ไหมที่จะกลายเป็นผู้ใช้ที่ไม่ใช่ผู้ใช้รูทแบบ sudo โดยไม่ต้องตั้งรหัสผ่านและลงชื่อเข้าใช้ (เหมือนพวกเขา)? ระบบของฉัน 'เสีย' ในบางวิธีหรือฉันเพิ่งทำผิดหรือเปล่า?

คำตอบ:


14

อืม .. ปัญหาคือว่าเชลล์มาตรฐานของผู้ใช้เหล่านั้นถูกตั้งค่าตามปกติ/bin/falseและเพื่อเหตุผลด้านความปลอดภัยคุณไม่ควรเปลี่ยนแปลงสิ่งนี้ แต่คุณยังคงสามารถเรียกใช้ตัวอย่างเช่น:sudo -u www-data /bin/sh


1
คุณสามารถให้รายละเอียดเพิ่มเติมเกี่ยวกับ "เหตุผลด้านความปลอดภัย" ได้หรือไม่ มันแตกต่างกันหรือไม่ถ้าฉันใช้sudoเพื่อรันเชลล์ในฐานะผู้ใช้ตามที่ Florian แนะนำไว้ข้างต้น
Calrion

1
เหตุผลก็คือผู้โจมตีใด ๆ ที่เข้าสู่ระบบในฐานะผู้ใช้ระบบเช่นโดยการใช้ประโยชน์จากข้อบกพร่องในโปรแกรมเข้าสู่ระบบมีโอกาสน้อยที่จะจบลงด้วยเชลล์ที่ถูกต้อง ดังนั้นคุณควรออกจากการตั้งค่าตามที่อยู่ในไฟล์ / etc / passwd แม้ว่าจะเป็นเพียงกรรมดีเท่านั้น การเรียกใช้เชลล์โดยตรงผ่าน sudo นั้นไม่เกี่ยวข้องกับสิ่งนี้
Paul Hänsch

ดังนั้นปัญหาคือการตั้งค่าเชลล์ในpasswdไฟล์ไม่ใช่การรันเชลล์ในฐานะผู้ใช้ Gotcha!
Calrion

9

sudo -iรันเชลล์ที่ระบุโดยรายการฐานข้อมูลรหัสผ่านของผู้ใช้เป้าหมายซึ่งมี/bin/falseไว้สำหรับผู้ใช้ระบบของคุณ

ใช้

 sudo -u some-daemon-user bash

หรือ

sudo -u some-daemon-user -H bash

หากคุณต้องการตั้งค่าตัวแปรสภาพแวดล้อม $ HOME สำหรับผู้ใช้เป้าหมาย

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