ความเสี่ยงด้านความปลอดภัยของ PermitUserEnvironment ใน ssh


11

ฉันได้อ่านบทความเล็กน้อยเกี่ยวกับการใช้งานPermitUserEnvironmentและไฟล์~/.ssh/environmentเพื่อส่งตัวแปร env ไปยัง ssh shell เอกสารอย่างเป็นทางการของsshdและแหล่งข้อมูลอื่น ๆ ที่เกี่ยวข้องกับความเสี่ยงด้านความปลอดภัยในการทำเช่นนี้

การเปิดใช้งานการประมวลผลสภาพแวดล้อมอาจทำให้ผู้ใช้สามารถข้ามข้อ จำกัด การเข้าถึงในการกำหนดค่าบางอย่างโดยใช้กลไกเช่น LD_PRELOAD

ปัญหาความปลอดภัยของการเปิดใช้งานมีแนวโน้มที่PermitUserEnvironmentอะไร ฉันต้องการจัดเก็บรายละเอียดการเชื่อมต่อฐานข้อมูลในตัวแปรสภาพแวดล้อมเหล่านี้แนะนำให้เลือกหรือไม่


ฉันได้ยื่นรายงานข้อผิดพลาดกับโครงการ OpenSSH โดยขอให้พวกเขาเพิ่มคำสองสามคำลงในหน้าคน sshd_config เพื่อชี้แจงปัญหานี้: bugzilla.mindrot.org/show_bug.cgi?id=2317
Florin Andrei

คำตอบ:


16

ก่อนอื่นถ้าคุณไม่พยายามทำอะไรที่แฟนซีด้วยข้อ จำกัด การเข้าถึงของผู้ใช้ - นั่นคือถ้าคุณกำลังเสนอการเข้าถึงเชลล์แบบโต้ตอบ - อาจมีความเสี่ยงด้านความปลอดภัยเพิ่มเติมในการอนุญาตให้ใช้.ssh/environmentไฟล์เนื่องจากศูนย์ ผู้ใช้สามารถทำได้ด้วยไฟล์นั้นพวกเขายังสามารถโต้ตอบในเปลือกของพวกเขา

การเปิดใช้งานการประมวลผลสภาพแวดล้อมอาจทำให้ผู้ใช้สามารถข้ามข้อ จำกัด การเข้าถึงในการกำหนดค่าบางอย่างโดยใช้กลไกเช่น LD_PRELOAD

หากคุณใช้คำสั่งบังคับ SSH เพื่อ จำกัด สิ่งที่ผู้คนสามารถทำได้ผ่าน ssh (ตัวอย่างเช่นหากคุณ จำกัด ผู้คนให้ใช้เพียงsftpหรือscp) ให้ผู้อื่นสามารถตั้งค่าตัวแปรสภาพแวดล้อมเช่นLD_PRELOAD(หรืออาจเป็นไปได้PATH) จะทำให้พวกเขาขโมย ข้อ จำกัด โดยแทนที่การเรียกไลบรารีพื้นฐานด้วยรหัสของตนเอง ในทางกลับกันหากคุณกำลังสร้าง.ssh/environmentในนามของผู้ใช้ของคุณและพวกเขาไม่สามารถจัดการความเสี่ยงของคุณมีขนาดค่อนข้างเล็ก

โดยไม่ต้องรู้เพิ่มเติมเกี่ยวกับกรณีการใช้งานเฉพาะของคุณมันยากที่จะให้คำตอบที่ชัดเจน


ฉันอนุญาตให้เข้าถึงเซิร์ฟเวอร์จากบุคคลที่เชื่อถือได้ 2 หรือ 3 รายเท่านั้น (devs ภายในองค์กรของเรา) ผ่านคีย์ rsa ของพวกเขา ดังนั้นจากสิ่งที่คุณพูดว่ามันฟังดูโอเค
Rob Squires

จากคำตอบของคุณฉันคิดว่าฉันไม่ควรนอนไม่หลับเกี่ยวกับผลกระทบด้านความปลอดภัยของการเปิดใช้งานตัวเลือกนี้หากบัญชี ssh ทั้งหมดของฉันให้การเข้าถึง bash เต็มรูปแบบ (ไม่มี sudo) แก้ไข?
Florin Andrei

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