Score:3

เซิร์ฟเวอร์ OpenVPN - การลดสิทธิพิเศษส่งผลต่อการเข้าถึงไฟล์ขณะรันไทม์หรือไม่?

ธง ck

ใน บทความเสริมความแข็งแกร่งของ OpenVPNขอแนะนำให้เซิร์ฟเวอร์ daemon ยกเลิกสิทธิ์หลังจากเริ่มต้นระบบบน Linux:

OpenVPN ได้รับการออกแบบมาอย่างพิถีพิถันเพื่อให้สิทธิ์การรูทลดลงหลังจากการเริ่มต้นใช้งาน และควรใช้คุณลักษณะนี้บน Linux/BSD/Solaris เสมอ หากไม่มีสิทธิ์รูท daemon เซิร์ฟเวอร์ OpenVPN ที่ทำงานอยู่จะให้เป้าหมายที่ล่อลวงแก่ผู้โจมตีน้อยกว่ามาก

พวกเขาแนะนำให้ตั้งค่าคำสั่งต่อไปนี้:

ผู้ใช้ไม่มีใคร
กลุ่มไม่มีใคร

ซึ่งฉันคิดว่าหมายความว่าภูตจะทำงานเป็น ไม่มีใคร หลังจากเริ่มต้นเสร็จสิ้น

อย่างไรก็ตาม มีไฟล์หลายไฟล์ที่ OpenVPN เข้าถึงขณะรันไทม์ โดยเฉพาะไฟล์ CRL:

เมื่อใช้ตัวเลือกการยืนยัน crl ใน OpenVPN ไฟล์ CRL จะถูกอ่านซ้ำทุกครั้งที่ไคลเอ็นต์ใหม่เชื่อมต่อหรือไคลเอนต์ที่มีอยู่เจรจาการเชื่อมต่อ SSL/TLS ใหม่ (โดยค่าเริ่มต้นหนึ่งครั้งต่อชั่วโมง) ซึ่งหมายความว่าคุณสามารถอัปเดตไฟล์ CRL ได้ในขณะที่เซิร์ฟเวอร์ OpenVPN daemon กำลังทำงานอยู่ และให้ CRL ใหม่มีผลทันทีสำหรับไคลเอนต์ที่เพิ่งเชื่อมต่อ

ดังนั้นฉันจึงกังวลว่าคุณสมบัติทั้งสองนั้นเข้ากันไม่ได้ - หาก daemon ลดสิทธิ์ลงหลังจากเริ่มต้นระบบ มันจะอ่านได้อย่างไร /etc/openvpn/server/crl.pem (เจ้าของ ราก:ราก, โหมด 0600; SELinux บังคับใช้) ที่รันไทม์?

  • หาก daemon ไม่สามารถเข้าถึงไฟล์ CRL ได้ในขณะรันไทม์ มีวิธีที่ดีในการหลีกเลี่ยงปัญหานี้หรือไม่
  • หาก daemon สามารถเข้าถึงไฟล์ CRL ขณะรันไทม์ได้ ฉันอยากทราบว่าเป็นไปได้อย่างไร

ระบบปฏิบัติการคือ RHEL8.5 x86_64 ในกรณีที่เกี่ยวข้อง

Score:2
ธง et

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

การประนีประนอมของ เปิด VPN กระบวนการจะไม่เปิดเผยไฟล์ต่อการเปลี่ยนแปลงในกรณีนี้ เนื่องจากไฟล์ (เป็นไปได้ว่าฉันไม่ได้ตรวจสอบ) เปิดแบบอ่านอย่างเดียว ตัวจัดการไฟล์ใหม่จะต้องเปิดในโหมดเขียน ซึ่งจะล้มเหลวเนื่องจากกระบวนการไม่สามารถสร้างได้อีกต่อไป

cyqsimon avatar
ck flag
อา ขอบคุณ สิ่งนี้สมเหตุสมผลมีแหล่งที่มาอย่างเป็นทางการที่บันทึกพฤติกรรมนี้หรือไม่? หรือพฤติกรรมนี้เป็นเรื่องธรรมดามากจนกลายเป็นสำนวนและไม่คู่ควรแก่การบันทึกไว้?
et flag
ฉันเดาว่าแหล่งที่มา _official_ แห่งเดียวคือซอร์สโค้ดจริง เนื่องจากเป็นแนวทางเดียวที่แท้จริงของคุณเกี่ยวกับสิ่งที่เกิดขึ้นจริง หากคุณต้องการ _understand_ มากขึ้น อาจเริ่มต้นด้วยหน้า wiki/man บน [ตัวอธิบายไฟล์](https://en.wikipedia.org/wiki/File_descriptor) และการเรียกระบบ [open()](https: //man7.org/linux/man-pages/man2/open.2.html) เมื่อคุณพบว่ามีการตรวจสอบสิทธิ์ _ที่การเรียกของระบบเหล่านั้น ทั้งหมดนี้สมเหตุสมผลมากขึ้น :)
my flag
การปล่อย privs หลังจากเปิดพอร์ต priv'd เป็นแนวทางปฏิบัติที่ดีที่สุดอย่างกว้างขวางสำหรับ old school *nix daemons เช่น openvpn และ bind ฉันไม่แน่ใจว่ามีการอ้างอิงที่เชื่อถือได้สำหรับนิสัยนี้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา