exec master..xp_cmdshell 'dir'
ซึ่งหากอยากจะให้ MSSQL ของเราปลอดภัยจากการโดนยิงในระดับนึงแล้ว เราควรทำการปิดการใช้งาน xp_cmdshell ด้วยคำสั่งดังต่อไปนี้
exec sp_dropextendedproc 'xp_cmdshell'
คำสั่งดังกล่าวต้องรันด้วยสิทธิของ Administrator หรือ sa ของ MSSQL ถึงจะสามารถดร็อป stored-procedure ดังกล่าวได้ครับ
อย่างไรก็ตามวิธีการ drop stored-procedure ดังกล่าวไม่สามารถป้องกันการโดนโจมตีจาก xp_cmdshell ได้ร้อยเปอร์เซ็นต์ เนื่องจากหากผู้บุกรุกมีสิทธิสูงอย่างเพียงพอ ผู้บุกรุกสามารถใช้คำสั่งดังต่อไปนี้เพื่อดึง xp_cmdshell กลับมาได้
exec sp_addextendedproc 'xp_cmdshell', 'xplog70.dll'
ดังนั้นเพื่อความชัวร์จึงควรลบไฟล์ xplog70.dll ออกไปจากระบบด้วย ซึ่้งการลบไฟล์นี้ออกไปจากระบบ จะทำให้ stored-procedure ดังต่อไปนี้ไม่สามารถใช้งานได้
- xp_sscanf
- xp_sprintf
- xp_msver
- xp_enumgroups
- xp_logevent
- xp_loginconfig
หมายเหตุ: ถ้ามีการลง Services Pack ของ MSSQL ต้องคอยตรวจสอบด้วยว่าไฟล์ xplog70.dll ได้กลับมาหรือไม่ ในกรณีที่เราลบไฟล์นี้ออกไปจากระบบแล้ว
ไม่มีความคิดเห็น:
แสดงความคิดเห็น