คำตอบก่อนหน้านี้ไม่ปรากฏขึ้นเพื่อตอบคำถามโดยตรงดังนั้นฉันคิดว่าฉันจะเพิ่มไป
- แผนของฉันคือการให้บริการทำงานเป็นบัญชี "Local Service" เริ่มต้น ฉันจะกำหนดสิทธิ์ "ควบคุมทั้งหมด" อย่างชัดเจนสำหรับบัญชี "Local Service" ในโฟลเดอร์ที่ฉันกำลังอ่าน / เขียนไปยังและจาก ฉันเชื่อว่าข้างต้นเป็นแผนที่ดี
โดยส่วนตัวฉันไม่เห็นปัญหาใหญ่กับแผนนี้ ด้วย BUILTIN ตัวเลือกคือ:
- ทำงานเป็น LOCALSYSTEM - ดังนั้นหากบริการนี้ถูกโจมตีผู้โจมตีจะเป็นเจ้าของทุกอย่างและทันที
- ทำงานเป็น LOCALSERVICE - ดังนั้นหากบริการนี้หรือบริการอื่น ๆ ที่ทำงานภายใต้บัญชีนี้ถูกโจมตีผู้โจมตีจะสามารถเข้าถึงไดเรกทอรีพิเศษหนึ่งรายการ *
เนื้อหาที่เพิ่ม ACLs พิเศษสองสามตัวเพื่อให้สามารถใช้ตัวเลือกที่สองได้ดีกว่า ใช่ตัวเลือกที่ปลอดภัยที่สุดสำหรับบริการที่มีสิทธิ์ต่ำ แต่ให้ความสำคัญกับความปลอดภัยสูงนั้นจะต้องทำงานภายใต้บัญชีบริการที่มีสิทธิ์ต่ำ แต่ถ้าคุณไม่ต้องการสร้างบัญชีใหม่ / จัดการรหัสผ่านสำหรับทุกบริการที่คุณปรับใช้การใช้ LocalService สำหรับงานที่ไม่อ่อนไหวเล็กน้อยไม่ใช่เรื่องเลวร้าย คุณเพียงแค่ต้องทำการตัดสินใจอย่างรับผิดชอบตามการพิจารณาเหล่านี้เช่นสิ่งที่อยู่ในไดเรกทอรีนั้นหรือฐานข้อมูลนั้นส่งผลกระทบหากมีการละเมิด ฯลฯ
แม้ว่าอีกครั้งตามหลักการของสิทธิพิเศษอย่างน้อยที่สุดคุณควรตั้งค่าFull Control
หากModify
ไม่เพียงพอจริงๆ
2. คำถามของฉันคือสำหรับโฟลเดอร์ที่ฉันกำลังอ่านและเขียนฉันจำเป็นต้องตั้งค่าบทบาท "บริการเครือข่าย" ด้วยการเข้าถึงการควบคุมทั้งหมดหรือไม่ ฉันสงสัยว่าบริการของฉันใช้การเชื่อมต่อฐานข้อมูลกับเซิร์ฟเวอร์อื่นหากฉันต้องการตั้งค่าบัญชี "บริการเครือข่าย"
หากฐานข้อมูลของคุณต้องการล็อกอิน Windows Integrated / SSPI ใช่คุณจะต้องใช้ NetworkService (หรือบัญชีบริการโดเมน) ทุกที่เช่น RunAs และการอนุญาตของไดเรกทอรี สมมติว่าคุณได้รับสิทธิ์ให้ $ $ หรือการเข้าถึงบัญชีโดเมนไปยังฐานข้อมูลนี้ ฉันสงสัยว่าคุณกำลังทำเช่นนั้นดังนั้นหากใช้การรับรองความถูกต้องชื่อผู้ใช้ / pwd ปกติคุณควรจะสามารถทำทุกอย่างด้วย LocalService คุณต้องให้สิทธิ์บัญชีเดียวในไดเรกทอรีนั้นไม่ว่าคุณจะใช้สิทธิ์ใดใน RunAs ไม่ใช่ทั้งสองอย่าง
3. ฉันอาจเข้าใจผิดว่าบัญชี "บริการเครือข่าย" ทำอะไร
LocalService / NetworkServiceเป็นบัญชีที่เกือบเหมือนกันในเครื่องคอมพิวเตอร์ ความแตกต่างส่วนใหญ่คือสิ่งที่พวกเขาสามารถทำได้บนเครือข่าย NS สามารถเข้าถึงทรัพยากรเครือข่ายบางอย่างได้เนื่องจากจะปรากฏในเครือข่ายเป็นบัญชีจริง (คอมพิวเตอร์) แต่ LS จะปรากฏเป็น ANONYMOUS ดังนั้นมันจะถูกปฏิเสธส่วนใหญ่ทุกอย่างในเครือข่าย
อย่างไรก็ตามคุณควรใช้งานที่กำหนดเวลาไว้สำหรับสิ่งนี้ไม่ใช่บริการ
* จาก Vista เป็นต้นไปเนื่องจากการแยกการบริการกระบวนการ LocalService ที่ถูกบุกรุกอย่างหนึ่งไม่สามารถโจมตีได้อย่างง่ายดาย แต่ละกระบวนการ / อินสแตนซ์ของบริการ LocalService / NetworkService จะได้รับเซสชันการเข้าสู่ระบบที่เป็นเอกลักษณ์ของตัวเอง SID (เจ้าของที่ไม่ซ้ำ) ซึ่งแตกต่างจาก Windows 2003 แต่ฉันไม่แน่ใจว่านี่เป็นวิธีที่สมบูรณ์แบบและลดช่องโหว่ DACL ในไฟล์และทรัพยากร SID ที่ถูก จำกัด และ โทเค็นที่ จำกัด การเขียนถูกกล่าวถึงในบริบทนี้