ความเสี่ยงด้านความปลอดภัยในการใช้บัญชี admin ทุกวัน (ไม่ใช่รูท)?


8

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

สมมติว่าฉันระมัดระวังมากที่ฉันใส่รหัสผ่านของฉันและรู้ว่าคำสั่งทำอะไรก่อนที่จะดำเนินการมันแน่นอน

หากฉันใช้บัญชีที่ไม่ใช่ผู้ดูแลระบบปกติสำหรับบัญชีรายวันของฉันเมื่อฉันต้องการเรียกใช้บางอย่างในฐานะรูทฉันจะsuเข้าสู่บัญชีผู้ดูแลระบบของฉัน (ไม่ใช่ในรูทเนื่องจากไม่มีรหัสผ่านและถูกปิดใช้งาน!) และมีsudoคำสั่งใน เปลือกผู้ดูแลระบบ; หรือฉันจะสลับผู้ใช้แบบกราฟิก ดังนั้นจำนวนคำสั่งที่จะรันเหมือนกัน - การใช้บัญชีปกติจะหมายความว่าฉันต้องใส่รหัสผ่านผู้ดูแลระบบของฉันสองครั้งเมื่อใช้งานบางอย่างเป็นรูท

ดังนั้นผู้ใช้ขั้นสูงควรทำงานทุกวันในบัญชีปกติแทนที่จะเป็นบัญชีผู้ดูแลระบบหรือไม่ และทำไมหรือไม่

โปรดทราบว่าโดย "บัญชีผู้ดูแลระบบ" ฉันหมายถึงบัญชีที่มีสิทธิ์ใช้sudoเพื่อเรียกใช้คำสั่งเป็นรูทไม่ใช่บัญชีรูท ฉันไม่เคยเข้าสู่ระบบในฐานะ root

คำตอบ:


5

ไม่มีความเสี่ยงในขณะที่ไม่รูท

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

ความเสี่ยงจากการรูตโดยไม่ตั้งใจ

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

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

นอกจากนี้เรายังรับผิดชอบในการยกเลิกการอนุญาตการรูทอีกครั้งหลังจากเสร็จสิ้น มันเป็นความคิดที่ดีเสมอที่จะต้องรูทในขณะที่ทำงานกับแอปพลิเคชั่นแบบกราฟิกเช่น Nautilus

ความเสี่ยงของการสูญเสียการเข้าถึงรูต

อีก "ความเสี่ยง" อาจเป็นได้ว่าคุณทำสิ่งที่ไม่ดีกับบัญชีของคุณที่ป้องกันไม่ให้คุณจากการเข้าสู่ระบบใน. ดังนั้นผมจึงมักจะสร้างอย่างน้อยสองผู้ใช้ผู้ดูแลระบบบนใด ๆกล่องติดตั้งอูบุนตู นี่เป็นกรณีที่มีบางสิ่งบางอย่างแตกบัญชีหลักของฉัน


คำตอบแรกที่ตอบคำถาม ขอบคุณ! ดังที่ฉันพูดฉัน (อย่างน้อยทึกทักว่าฉัน) ฉันระมัดระวังที่จะป้อนรหัสผ่านของฉันและคำสั่งที่จะเรียกใช้ แต่ฉันไม่เข้าใจว่าทำไมคุณต้องมีบัญชีผู้ดูแลระบบสองบัญชีเมื่อยังมีรูทเชลล์ในโหมดการกู้คืน
ผู้บัญชาการ Byte

@ByteCommander ใช้งานได้เฉพาะเมื่อคุณเข้าถึงคอมพิวเตอร์เท่านั้น
Jon Bentley

@JonBentley ฉันมี มันเกี่ยวกับคอมพิวเตอร์ที่บ้านของฉันในกรณีนี้หมายความว่าฉันมีสิทธิ์เข้าถึงทางกายภาพเท่านั้น
ผู้บัญชาการไบต์

เอ่อไม่มี ฉันมีการโจมตีเพื่อรับสิทธิ์ sudo ตัวเองทำงานจากบัญชีที่ใช้พวกเขา
Joshua

10

บัญชีที่สามารถ sudo ในทางเทคนิคสามารถเป็นบัญชีรูท (สมมติว่าเป็นsudoersพฤติกรรมการกำหนดค่าเริ่มต้น) แต่ก็ยังมีความแตกต่างระหว่างรูทและบัญชีที่สามารถsudo :

  • การละเว้นอักขระตัวเดียวโดยไม่ตั้งใจจะไม่ทำลาย Ubuntu อาจ. ลองพยายามลบ~/binแต่ใช้งานrmต่อ/binไป หากคุณไม่รูทมีความเสี่ยงน้อยกว่า

  • sudoต้องใช้รหัสผ่านเพื่อให้มิลลิวินาทีเหล่านั้นเพื่อแก้ไขข้อผิดพลาดใด ๆ นอกจากนี้ยังหมายความว่าแอปพลิเคชันอื่นไม่มีความสามารถในการทำสิ่งที่หยั่งรากลึกในนามของคุณ

นี่คือเหตุผลที่เราแนะนำให้ผู้คนไม่ใช้บัญชีรูทสำหรับงานประจำวัน


ฉนวนตัวเองด้วยอีกตัวกลาง "ผู้ดูแลระบบ" บัญชี (และทำงานเป็นผู้ใช้โดยไม่ต้องsudoเข้าถึง) เป็นเพียงอีกชั้นหนึ่ง ควรเป็นรหัสผ่านอื่นด้วย

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


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

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


1
ขออภัยคุณเข้าใจคำถามของฉันไม่ถูกต้องทั้งหมด ฉันไม่เคยถือว่าการเข้าสู่ระบบเป็น root ตัวเลือกของฉันเป็นเพียงการเข้าสู่ระบบเป็นผู้ดูแลระบบ ( sudoฯลฯ กลุ่มสมาชิก) - - หรือ - - เข้าสู่ระบบตามปกติผู้ใช้ / จำกัด มักจะมีภาพกราฟิกและหรือในสถานีผ่านทางsuสลับไปยังผู้ดูแลระบบ (ป้อนรหัสผ่านของผู้ดูแลระบบ) และจากนั้นใช้sudoจากที่นั่น (เข้า รหัสผ่านผู้ดูแลระบบอีกครั้ง)
ผู้บัญชาการ Byte

ในจุดของคุณเกี่ยวกับการรับรหัสผ่านที่สองเช่นเดียวกับที่ไม่จำเป็นต้องเป็นกรณี ฉันจัดการเครื่องเดสก์ท็อปของฉันด้วย Ansible ซึ่งเชื่อมต่อกับบัญชีผู้ดูแลระบบผ่าน ssh บัญชีผู้ใช้ไม่ได้รับสิทธิ์ sudo และไม่จำเป็นต้องใช้บัญชีผู้ดูแลระบบทางกายภาพบนเดสก์ท็อป (อันที่จริงแล้วมันไม่พึงประสงค์เพราะฉันไม่ต้องการให้เครื่องของฉันยุ่งเหยิงเป็นรายบุคคลและหลุดจากการซิงค์กับ ส่วนที่เหลือ)
Jon Bentley

@ByteCommander ในช่วงครึ่งหลังของคำตอบจะขึ้นอยู่กับสิ่งที่คุณต้องการ แต่เหตุผลสำหรับมันเป็นอนุมานจากอาร์กิวเมนต์ราก VS-ผู้ดูแลระบบปกติ มันเป็นอีกชั้นหนึ่งของสิ่งเดียวกัน
Oli

2

ใช่มีความเสี่ยง ความเสี่ยงเหล่านั้นมีขนาดใหญ่พอหรือไม่ที่คุณจะต้องคำนึงถึงเป็นเรื่องของการตั้งค่าและ / หรือนโยบายความปลอดภัยของคุณ

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

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

ในระบบส่วนใหญ่การใช้ sudo จะทำให้รหัสผ่านของคุณถูกจดจำเป็นเวลา 15 นาทีโดยค่าเริ่มต้นซึ่งเป็นอีกหนึ่งปัจจัยเสี่ยงเว้นแต่คุณจะเปลี่ยนการตั้งค่านั้น


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

@TripeHound อีกวิธีหนึ่งคุณออกไปจากคอมพิวเตอร์เพื่อหยุดพักในห้องน้ำโดยมีคำสั่ง sudo และใครบางคนกำลังเข้ามาฉันไม่เห็นความแตกต่างระหว่างความเสี่ยงที่อาจเกิดขึ้นหรือ - ความเสี่ยงของคำหมายถึงว่าบางคนน่าจะไม่ใช่ศูนย์ของผลที่ไม่พึงประสงค์ ใช่ในสถานการณ์ปกติคุณจะสังเกตเห็นคำขอรหัสผ่าน ผู้โจมตีของคุณที่วางสคริปต์นั้นบนคอมพิวเตอร์ 1,000 เครื่องและไม่มีเป้าหมายที่เฉพาะเจาะจง
Jon Bentley

0

คำตอบจากความคิดเห็นของฉันเพราะทุกอย่างจะต้องได้รับการพิสูจน์ทางคณิตศาสตร์และจากนั้นฉันก็ไม่มีความคิด ;)

สองบัญชีหนึ่งบัญชีกับกลุ่มadmและsudoหมายถึงบัญชีหนึ่งมีสิทธิ์ดำเนินการคำสั่งที่มีsudoสิทธิ์ หนึ่งที่ไม่มีสิทธิ์พิเศษนี้

  • หากคุณถอดรหัสรหัสผ่านสำหรับบัญชีที่ไม่มีสิทธิ์คุณจะต้องถอดรหัสรหัสผ่านสำหรับบัญชีที่มีสิทธิ์ทันที -> ข้อดีเมื่อเปรียบเทียบกับบัญชีเดียวเท่านั้น
  • หากคุณได้ถอดรหัสบัญชีพิเศษ -> ไม่มีข้อได้เปรียบเมื่อเปรียบเทียบกับบัญชีเดียวเท่านั้น

ความน่าจะเป็นคือ 50% ถ้าคุณไม่เคารพสติปัญญาของผู้โจมตี

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

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


0

ฉันทำงานแบบนั้น: ผู้ใช้คนหนึ่งที่ฉันทำสิ่งที่ผู้ใช้ของฉันและผู้ใช้คนหนึ่งที่ฉันทำสิ่งที่ผู้ดูแลระบบเท่านั้นที่ไม่มีสิ่งที่ผู้ใช้ แม้พรอมต์คำสั่งจะแตกต่างกัน: ผู้ใช้มีพรอมต์สีเขียวและดูแลสีแดง!

ทำไม?

ผู้ใช้มีการตั้งค่าของตัวเองสำหรับแอปพลิเคชันทั้งหมดที่ฉันใช้แยกต่างหากจากผู้ใช้ผู้ดูแลระบบซึ่งช่วยให้คุณ:

  1. แก้ไขข้อบกพร่องว่าปัญหาเกี่ยวข้องกับผู้ใช้หรือระบบที่เกี่ยวข้อง
  2. มีบัญชีผู้ดูแลระบบเป็นบัญชีผู้ใช้สำรองแทนบัญชีผู้เยี่ยมชมและบัญชีรูทหากมีสิ่งใดที่ผิดปกติกับการตั้งค่าผู้ใช้ของคุณและคุณไม่สามารถเข้าสู่ระบบได้อีก
  3. เก็บเอกสารผู้ดูแลระบบและเอกสารผู้ใช้แยกออกจากกันในโฮมไดเรคทอรีนั้น ๆหากคุณเลือกที่จะทำเช่นนั้น
  4. ไม่มีผลเมื่อพิมพ์โดยไม่ตั้งใจsudoก่อนคำสั่ง
  5. ไม่มีทางที่จะเห็นสิ่งที่ผู้ใช้ปกติไม่ควรเห็น
  6. ไม่มีวิธีการกดปุ่มบั๊กการเลื่อนระดับสิทธิ์ผู้ใช้ (มีไม่กี่ครั้งในอดีต)
  7. เป็น "ผู้ใช้ปกติ" เช่นเดียวกับผู้ใช้อื่น ๆ ในคอมพิวเตอร์ของคุณและรู้ว่าข้อดี / ข้อเสียคืออะไร

โอเค แต่การมี "เอกสารผู้ดูแลระบบ" (ซึ่งฉันไม่มี) และการแยก "เอกสารผู้ใช้" เป็นข้อเสียอย่างใหญ่หลวงในความคิดของฉันเนื่องจากฉันต้องการให้ข้อมูลทั้งหมดของฉันอยู่ในที่เดียวเสมอ (รวมถึงการสำรองข้อมูลแน่นอน) เหมือนกันสำหรับการตั้งค่า โดยพื้นฐานแล้วพวกเขาเหมือนกันฉันยังใช้โปรไฟล์ Firefox / Thunderbird เดียวกันจากไดเรกทอรีที่ใช้ร่วมกัน และยังมีบัญชีผู้ใช้ปกติอื่น ๆ จากสมาชิกครอบครัวคนอื่น ๆ ด้วยเช่นกันฉันแค่พูดถึงเจ้าของของฉัน ฉันรอคอยที่จะอธิบายเพิ่มเติมตามที่สัญญาไว้ในข้อ (4) แต่คุณยังไม่เชื่อฉันจริงๆ : - /
ผู้บัญชาการ Byte

เคยยุ่งกับ RL ดูเหมือนว่าคุณมีคำตอบที่ยอมรับแล้ว แต่เพิ่มเหตุผลเพิ่มเติมตามที่สัญญาไว้! ;-)
Fabby

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