ฉันจำเป็นต้องรู้ว่าไฟล์ใดที่ SQL Server 2008 เก็บรหัสผ่านจริง นี่เป็นคำถามที่ผู้ตรวจสอบความปลอดภัยถาม
ฉันรู้ว่าฉันสามารถแฮชรหัสผ่านได้ด้วยLOGINPROPERTY('bbellomo', 'PasswordHash')
แต่นั่นไม่ได้ช่วยฉัน ฉันต้องรู้วิธีจัดเก็บ
ฉันจำเป็นต้องรู้ว่าไฟล์ใดที่ SQL Server 2008 เก็บรหัสผ่านจริง นี่เป็นคำถามที่ผู้ตรวจสอบความปลอดภัยถาม
ฉันรู้ว่าฉันสามารถแฮชรหัสผ่านได้ด้วยLOGINPROPERTY('bbellomo', 'PasswordHash')
แต่นั่นไม่ได้ช่วยฉัน ฉันต้องรู้วิธีจัดเก็บ
คำตอบ:
รหัสผ่านจะไม่ถูกจัดเก็บในธรรมดา หากผู้ตรวจสอบบัญชีต้องการไฟล์ที่เก็บไว้จริงๆให้ชี้ไปที่ไฟล์ master.mdf แน่นอนสำหรับการเข้าสู่ระบบ SQL สำหรับการเข้าสู่ระบบ Windows, SQL ไม่รู้ด้วยซ้ำว่ารหัสผ่านคืออะไร; Active Directory จัดการการรับรองความถูกต้อง
ลองค้นหาsys.server_principals
ชื่อผู้ใช้และรหัสผ่านที่อยู่ในmaster
ฐานข้อมูล แต่รหัสผ่านจะไม่ถูกเก็บไว้ในธรรมดา
แผนการดำเนินการจาก 'รหัสผ่านที่เลือกจาก syslogins' แสดงรหัสผ่านที่เก็บไว้ในsys.sysxlgns
ฐานข้อมูลหลัก
ลองดูที่: ตารางฐานระบบ
นี่คือรหัสผ่านในรูปแบบ 2 รูปแบบเท่านั้นที่ SQL Server จะแสดงให้เราเห็น:
SELECT name, password, LOGINPROPERTY(name, 'PasswordHash' ) hash
FROM syslogins
WHERE password IS NOT NULL
ORDER BY name
คุณสามารถแปลงระหว่างรูปแบบต่าง ๆ ได้อย่างง่ายดาย แต่ฉันไม่รู้ว่าจะทำอย่างไร