ที่จริงแล้ว / etc / shadow ถูกสร้างขึ้นเพื่ออนุญาตให้ย้ายออกจากรายชื่อผู้ใช้และรหัสผ่านที่สาธารณชนสามารถอ่านได้
ลองเข้าไปที่นี่จะเป็นบทเรียนประวัติศาสตร์ก่อนที่เราจะได้คำตอบที่แท้จริง หากคุณไม่สนใจประวัติแค่เลื่อนลงมาเล็กน้อย
ในสมัยก่อนระบบปฏิบัติการที่คล้าย Unix รวมถึง Linux โดยทั่วไปจะเก็บรหัสผ่านไว้ใน / etc / passwd ไฟล์นั้นสามารถอ่านได้ทั่วโลกและยังคงเป็นเพราะมันมีข้อมูลที่อนุญาตให้ทำแผนที่เช่นระหว่าง ID ผู้ใช้ที่เป็นตัวเลขและชื่อผู้ใช้ ข้อมูลนั้นมีประโยชน์อย่างมากแม้แต่กับผู้ใช้ทั่วไปสำหรับวัตถุประสงค์ที่สมบูรณ์แบบดังนั้นการมีโลกไฟล์ที่อ่านได้มีประโยชน์อย่างมากต่อการใช้งาน
แม้แต่ตอนนั้นผู้คนก็ตระหนักว่าการมีรหัสผ่านเป็นข้อความธรรมดาในไฟล์ในตำแหน่งที่รู้จักกันดีว่าใครก็ตามที่สามารถเข้าสู่ระบบสามารถอ่านได้อย่างอิสระเป็นความคิดที่ไม่ดี ดังนั้นรหัสผ่านถูกแฮชในความรู้สึก นั่นเป็นกลไกการแฮ็กรหัสผ่าน "crypt" แบบเก่าซึ่งแทบจะไม่เคยใช้กับระบบที่ทันสมัย แต่มักได้รับการสนับสนุนเพื่อวัตถุประสงค์ดั้งเดิม
ลองดูที่ / etc / passwd บนระบบของคุณ เห็นว่าเขตข้อมูลที่สองซึ่งบอกว่าx
ทุกที่? มันใช้เพื่อเก็บรหัสผ่านแฮชสำหรับบัญชีที่เป็นปัญหา
ปัญหาคือผู้ใช้สามารถดาวน์โหลด / etc / passwd หรือไม่สามารถดาวน์โหลดได้และทำการถอดรหัสรหัสผ่าน นี่ไม่ใช่ปัญหาใหญ่ในขณะที่คอมพิวเตอร์ไม่มีพลังพิเศษ (Clifford Stoll ในThe Cuckoo's Eggให้เวลาฉันแฮ็กรหัสผ่านหนึ่งครั้งในระบบคลาส IBM PC ในช่วงกลางทศวรรษ 1980 ประมาณหนึ่งวินาที ) แต่มันกลายเป็นปัญหาเมื่อกำลังประมวลผลเพิ่มขึ้น ในบางจุดด้วยรายการคำที่เหมาะสมการถอดรหัสรหัสผ่านเหล่านั้นกลายเป็นเรื่องง่ายเกินไป ด้วยเหตุผลทางเทคนิคชุดรูปแบบนี้ไม่สามารถสนับสนุนรหัสผ่านที่ยาวเกินกว่าแปดไบต์
ทำสองสิ่งเพื่อแก้ไขปัญหานี้:
- ย้ายไปยังฟังก์ชันแฮชที่แข็งแกร่งขึ้น ห้องใต้ดินเก่า () มีอายุการใช้งานที่ยืนยาวกว่าเดิมและมีรูปแบบที่ทันสมัยมากขึ้นซึ่งได้มีการพิสูจน์ในอนาคตและมีความแข็งแกร่งในการคำนวณ
- ย้ายรหัสผ่านที่แฮชไปยังไฟล์ที่ไม่สามารถอ่านได้โดยทุกคน วิธีนี้แม้ว่าฟังก์ชั่นการแฮ็นรหัสผ่านจะอ่อนแอกว่าที่คาดไว้หรือถ้ามีคนที่มีรหัสผ่านที่อ่อนแอในการเริ่มต้นก็มีอุปสรรคอีกประการหนึ่งที่ผู้โจมตีจะสามารถเข้าถึงค่าแฮชเพื่อเริ่มต้นได้ มันไม่ฟรีสำหรับทุกคนอีกต่อไป
ไฟล์นั้นคือ / etc / shadow
ซอฟต์แวร์ที่ทำงานร่วมกับ / etc / shadow นั้นโดยทั่วไปแล้วจะมีขนาดเล็กมากมีการโฟกัสสูงและมีแนวโน้มที่จะได้รับการตรวจสอบเพิ่มเติมเนื่องจากอาจมีปัญหา มันยังทำงานด้วยการอนุญาตพิเศษซึ่งอนุญาตให้อ่านและแก้ไข / etc / shadow ในขณะที่ทำให้ผู้ใช้ทั่วไปไม่สามารถดูไฟล์นั้น
ดังนั้นคุณมีมัน: สิทธิ์ในการ / etc / shadow มีข้อ จำกัด (แต่ตามที่ระบุไว้แล้วไม่ จำกัด เท่าที่คุณระบุ) เนื่องจากวัตถุประสงค์ทั้งหมดของไฟล์นั้นคือการ จำกัด การเข้าถึงข้อมูลที่มีความละเอียดอ่อน
แฮชรหัสผ่านควรจะรัดกุม แต่ถ้ารหัสผ่านของคุณอยู่ในTop 500 รหัสผ่านในรายการอินเทอร์เน็ตทุกคนที่เข้าถึงแฮชจะยังคงสามารถค้นหารหัสผ่านได้อย่างรวดเร็ว การป้องกันการแฮชป้องกันการโจมตีอย่างง่ายและยกระดับการโจมตีที่ประสบความสำเร็จจากการแอบดูอย่างง่าย ๆ เพื่อให้ผู้ดูแลระบบของโฮสต์นั้นใช้งานได้หรือจะต้องผ่านการเพิ่มระดับการโจมตีก่อน โดยเฉพาะอย่างยิ่งในระบบที่มีผู้ใช้หลายคนที่จัดการอย่างถูกต้องทั้งสองอย่างนั้นยากกว่าการดูไฟล์ที่อ่านได้ทั่วโลก
/etc/shadow
เป็น600
?