ดาวในไฟล์ passwd หมายถึงอะไร


14

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

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

root:8sh9JBUR0VYeQ:0:0:Super-User,,,,,,,:/:/bin/ksh
sysadm:*:0:0:System V Administration:/usr/admin:/bin/sh
diag:*:0:996:Hardware Diagnostics:/usr/diags:/bin/csh
daemon:*:1:1:daemons:/:/dev/null
bin:*:2:2:System Tools Owner:/bin:/dev/null
uucp:*:3:5:UUCP Owner:/usr/lib/uucp:/bin/csh
sys:*:4:0:System Activity Owner:/var/adm:/bin/sh
adm:*:5:3:Accounting Files Owner:/var/adm:/bin/sh
lp:VvHUV8idZH1uM:9:9:Print Spooler Owner:/var/spool/lp:/bin/sh
nuucp::10:10:Remote UUCP User:/var/spool/uucppublic:/usr/lib/uucp/uucico
auditor:*:11:0:Audit Activity Owner:/auditor:/bin/sh
dbadmin:*:12:0:Security Database Owner:/dbadmin:/bin/sh
rfindd:*:66:1:Rfind Daemon and Fsdump:/var/rfindd:/bin/sh

12
โปรดทราบว่าคุณได้โพสต์รหัสผ่านแฮชของ DES แฮชของรหัสผ่าน DES ค่อนข้างง่ายที่จะทำให้แตกในปัจจุบัน อย่าเชื่อมต่อคอมพิวเตอร์เครื่องนี้กับเครือข่ายจนกว่าคุณจะเปลี่ยนรหัสผ่าน
Gilles 'หยุดชั่วร้าย'

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

รหัสผ่านสำหรับlpผู้ใช้อ่อนแออย่างน่าขัน และเนื่องจากรหัสผ่านที่ใช้ DES ถูก จำกัด ไว้ที่ ASCII และสามารถมีความยาวได้เพียง 8 ตัวอักษรคุณจึงไม่ได้รับเอนโทรปีมากกว่า 53 บิต เปลี่ยนเป็นแฮ็กที่แข็งแกร่งขึ้นถ้าคุณทำได้และเปลี่ยนรหัสผ่าน
kasperd

การเพิ่มตัวเลขลงในความคิดเห็นก่อนหน้าของฉัน: แล็ปท็อปของฉันสามารถทำลายlpรหัสผ่านใน 630 มิลลิวินาที rootรหัสผ่านเป็นจำนวนมากที่แข็งแกร่ง ฉันปล่อยให้การโจมตีแบบเดรัจฉานบังคับให้ทำงานห้าชั่วโมงก่อนที่จะจบการทำงาน มันไม่ได้ทำลายrootรหัสผ่านภายในห้าชั่วโมง แต่แน่นอนคุณควรทำตามคำแนะนำก่อนหน้านี้และเปลี่ยนรหัสผ่าน
kasperd

สำหรับบันทึกที่คุณรู้ว่าเรื่องราวที่รหัสผ่านที่นิยมมากที่สุดคือรหัสผ่าน? รหัสผ่านที่ดี 1 ไม่สามารถหลีกเลี่ยงได้ อ่อนแอขันอย่างแน่นอน
hildred

คำตอบ:


22

คุณต้องตรวจสอบคน passwd :

หากรหัสผ่านที่เข้ารหัสถูกตั้งค่าเป็นเครื่องหมายดอกจัน (*) ผู้ใช้จะไม่สามารถเข้าสู่ระบบโดยใช้การเข้าสู่ระบบ (1) แต่อาจยังคงเข้าสู่ระบบโดยใช้ rlogin (1) เรียกใช้กระบวนการที่มีอยู่และเริ่มต้นใหม่ผ่าน rsh (1) cron (8), ที่ (1), หรือตัวกรองเมลเป็นต้นการพยายามล็อคบัญชีโดยเพียงแค่เปลี่ยนฟิลด์เชลล์ให้ผลลัพธ์เหมือนกันและอนุญาตให้ใช้ su (1)

โดยปกติบัญชีที่มี*ในช่องรหัสผ่านจะไม่มีรหัสผ่านเช่น: ปิดใช้งานสำหรับการเข้าสู่ระบบ สิ่งนี้แตกต่างกับบัญชีที่ไม่มีรหัสผ่านซึ่งหมายความว่าฟิลด์รหัสผ่านจะว่างเปล่าและเป็นวิธีปฏิบัติที่ไม่ดีเกือบตลอดเวลา


13

บัญชีที่มีรหัสผ่านคือบัญชีที่มีการใช้ฐาน 64 ซึ่งไม่มีความหมายในฟิลด์ที่สอง:

root:8sh9JBUR0VYeQ:0:0:Super-User,,,,,,,:/:/bin/ksh
lp:VvHUV8idZH1uM:9:9:Print Spooler Owner:/var/spool/lp:/bin/sh

คอมพิวเตอร์นี้ดูเหมือนจะใช้crypt(3)แฮชรหัสผ่านแบบดั้งเดิมที่ใช้ DES แฮชนี้ค่อนข้างอ่อนแอตามมาตรฐานสมัยใหม่ หากคุณไม่สามารถจัดการรูทล็อกอินด้วยวิธีอื่นคุณสามารถกู้คืนรหัสผ่านแบบไร้เดียงสาโดยใช้John the Ripperหรือซอฟต์แวร์ที่คล้ายกัน นอกจากนี้ในทางเทคนิคแล้วนั้นไม่ใช่ base64 แต่เป็นการเข้ารหัสแบบเก่าที่คล้ายกัน แต่คุณอาจไม่ต้องกังวลเกี่ยวกับสิ่งนั้น

ความแตกต่างระหว่าง:*:และ:!:กล่าวถึงในคำตอบอื่น ๆ ใหม่เกินไปที่จะเกี่ยวข้องกับปัญหาของคุณ บนระบบ UNIX แบบเก่านี้มีเพียงสามสิ่งเท่านั้นที่สามารถปรากฏในฟิลด์รหัสผ่าน:

alice::1001:1001:Alice Can Log In Without A Password:/home/alice:/bin/ksh
bob:WSy1W41d4D1Gw:1002:1002:Bob Must Supply A Password:/home/bob:/bin/ksh
carol:ANYTHING ELSE:1003:1003:Carol Cannot Log In At All:/home/carol:/bin/ksh

หากเนื้อหาของฟิลด์รหัสผ่านว่างเปล่าคุณสามารถเข้าสู่ระบบได้โดยไม่มีรหัสผ่าน

หากเนื้อหาของฟิลด์เป็นcryptแฮชที่ถูกต้องของรหัสผ่านบางส่วนคุณสามารถเข้าสู่ระบบด้วยรหัสผ่านนั้น

มิฉะนั้นคุณจะไม่สามารถเข้าสู่ระบบในฐานะผู้ใช้รายนั้นได้ *เป็นสิ่งธรรมดาที่จะใช้ - เห็นได้ชัดว่าไม่ใช่แฮชของรหัสผ่านที่ถูกต้อง มันอาจถูกเลือกโดยใครก็ตามที่เขียนpasswdโปรแกรม

(จุดของการมี ID ผู้ใช้ในไฟล์รหัสผ่านที่ไม่สามารถเข้าสู่ระบบได้คือพวกเขายังสามารถเป็นเจ้าของไฟล์พวกเขายังสามารถมีcronงานได้และ daemons สามารถใช้setuidเพื่อสมมติตัวตนนั้นได้จริง ๆ แล้วมันเป็นวิธีที่ดีที่สุดในการใช้งาน daemons ทั้งหมด (ที่ไม่ต้องเรียกใช้root) ภายใต้ ID ผู้ใช้ดังกล่าวเพื่อให้คุณมีระดับความมั่นใจว่าdaemon เท่านั้นที่ทำงานภายใต้ข้อมูลประจำตัวนั้น

(บัญชีที่มี/dev/nullในฟิลด์เชลล์จะถูกล็อคไม่ให้rootใช้suเพื่อเรียกใช้โปรแกรมภายใต้ข้อมูลประจำตัวของผู้ใช้เช่นเดียวกับการเข้าสู่ระบบปกติทุกวันนี้คุณมีแนวโน้มที่จะเห็น/bin/falseหรือ/sbin/nologinใช้เพื่อจุดประสงค์นั้นมากขึ้นฉันสงสัยว่าในระบบนี้ ไม่มีอยู่และตัวแรกคือเชลล์สคริปต์)

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

(ฉันรู้ว่าระบบเก่าจริง ๆ เพราะใช้การแฮชรหัสผ่านตาม DES เนื่องจากไม่ได้ใช้ไฟล์เงาและเพราะเชลล์ของรูทนั้น/bin/kshไม่ใช่สิ่งใหม่และเหมาะกับการใช้งานมากกว่า)


ฉันคิดว่ารหัสผ่านของ Bob ไม่ได้ทำให้เนื้องานมีจำนวนมาก
Joshua

@Joshua แก้ไขเดี๋ยวนี้ :)
zwol

หากเขาต้องการบู๊ตเข้าเครื่องมันจะเป็นการบูทที่เร็วกว่าในโหมดการกู้คืนหรือการบูตด้วย USB Live CD / DVD และเปลี่ยนรหัสผ่านเป็นรหัสอื่นที่ไม่ใช่การใช้ john the ripper หรือไม่?
YoMismo

@YoMismo คอมพิวเตอร์เก่านี้ (เดาการศึกษาของฉันคือมันมาจากในช่วงต้นปี 1990) อาจจะไม่ได้มีโหมดการกู้คืน อาจมีความสามารถในการบูตจากสื่อที่ถอดได้บางชนิด แต่มันอาจเป็นเรื่องยากที่จะหาซีดีหรือเทปที่สามารถบูตได้หรืออะไรก็ตาม LiveCD ที่ทันสมัยจะไม่ทำงานแน่นอน
zwol

@zwol ฉันจะพยายามเริ่มระบบด้วย distro จริงและ chroot กับระบบเก่าของเขาส่วนใหญ่อาจpasswdไม่จำเป็นต้องติดตั้ง - ผูก / dev / sys ....
YoMismo

8

ซึ่งหมายความว่าจะถูกปิดใช้งานสำหรับการเข้าสู่ระบบโดยตรง มันเป็นผู้ใช้ที่ใช้สำหรับการเรียกใช้บริการหรือที่จะใช้สำหรับ rlogin ตรวจสอบhttps://en.wikipedia.org/wiki/Passwd#Password_file


คอมพิวเตอร์เครื่องนี้ค่อนข้างเก่าฉันไม่แน่ใจว่าความหมายเปลี่ยนแปลงไปตามเวลาหรือไม่
j0h

@WouterVerhelst: มันถูกปิดการใช้งานสำหรับการเข้าสู่ระบบ มันไม่ได้ปิดการใช้งานสำหรับ rlogin คุณต้องดูคำตอบให้ละเอียดยิ่งขึ้น
Brian

ฉันเปลี่ยนคำตอบ ฉันหวังว่าตอนนี้จะถูกต้องมากขึ้นสำหรับ @WouterVerhelst
Marco

3

เกี่ยวกับคำถามจริงของคุณดูคำตอบของ taliezin (และยอมรับคำถามนั้น)

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

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