DLL Hijacking Vulnerability Attacks การป้องกัน และการตรวจจับ
DLLย่อมาจากDynamic Link Librariesและเป็นส่วนภายนอกของแอปพลิเคชันที่ทำงานบนWindowsหรือระบบปฏิบัติการอื่นๆ แอปพลิเคชันส่วนใหญ่ไม่สมบูรณ์ในตัวเองและจัดเก็บรหัสในไฟล์ต่างๆ หากจำเป็นต้องใช้รหัส ไฟล์ที่เกี่ยวข้องจะถูกโหลดลงในหน่วยความจำและใช้งาน ซึ่งจะช่วยลดขนาดไฟล์แอปพลิเคชันในขณะที่ปรับการใช้RAMให้เหมาะสม บทความนี้จะอธิบายเกี่ยวกับDLL Hijackingและวิธีตรวจหาและป้องกัน
ไฟล์(Files) DLL หรือDynamic Link Libraries คืออะไร(Dynamic Link Libraries)
ไฟล์ DLL(DLL)คือDynamic Link Librariesและเห็นได้ชัดจากชื่อ เป็นส่วนขยายของแอปพลิเคชันต่างๆ แอปพลิเคชันใด ๆ ที่เราใช้อาจใช้หรือไม่ใช้รหัสบางอย่าง รหัสดังกล่าวถูกเก็บไว้ในไฟล์ต่าง ๆ และเรียกใช้หรือโหลดลงในRAMเฉพาะเมื่อต้องใช้รหัสที่เกี่ยวข้องเท่านั้น ดังนั้นจึงช่วยบันทึกไฟล์แอปพลิเคชันไม่ให้ใหญ่เกินไปและป้องกันไม่ให้แอปพลิเคชันใช้ทรัพยากรมากเกินไป
เส้นทางสำหรับ ไฟล์ DLLถูกกำหนดโดยระบบปฏิบัติการWindows เส้นทางถูกตั้งค่าโดยใช้Global Environmental Variables (Global Environmental Variables)ตามค่าเริ่มต้น หากแอปพลิเคชันร้องขอ ไฟล์ DLLระบบปฏิบัติการจะค้นหาในโฟลเดอร์เดียวกันกับที่เก็บแอปพลิเคชัน หากไม่พบในนั้น มันจะไปที่โฟลเดอร์อื่นตามที่กำหนดโดยตัวแปรส่วนกลาง มีลำดับความสำคัญที่แนบมากับเส้นทางและช่วยให้Windows ในการกำหนดโฟลเดอร์ ที่จะค้นหาDLL (DLLs)นี่คือที่มาของการจี้DLL
DLL Hijacking คืออะไร
เนื่องจากDLL(DLLs)เป็นส่วนขยายและจำเป็นต่อการใช้แอปพลิเคชันเกือบทั้งหมดในเครื่องของคุณ จึงปรากฏอยู่ในคอมพิวเตอร์ในโฟลเดอร์ต่างๆ ตามที่อธิบายไว้ หาก ไฟล์ DLL ดั้งเดิมถูกแทนที่ด้วยไฟล์ (DLL)DLLปลอมที่มีโค้ดที่เป็นอันตราย ไฟล์นั้นเรียกว่าDLL Hijacking(DLL Hijacking)
ดังที่ได้กล่าวไว้ก่อนหน้านี้ มีลำดับความสำคัญที่ระบบปฏิบัติการค้นหาไฟล์DLL อันดับแรก(First)จะค้นหาในโฟลเดอร์เดียวกับโฟลเดอร์แอปพลิเคชัน จากนั้นทำการค้นหาตามลำดับความสำคัญที่กำหนดโดยตัวแปรสภาพแวดล้อมของระบบปฏิบัติการ ดังนั้น หากไฟล์ good.dll อยู่ใน โฟลเดอร์ SysWOW64และมีคนวาง bad.dll ไว้ในโฟลเดอร์ที่มีลำดับความสำคัญสูงกว่าเมื่อเปรียบเทียบกับ โฟลเดอร์ SysWOW64ระบบปฏิบัติการจะใช้ไฟล์ bad.dll เนื่องจากมีชื่อเดียวกับDLLร้องขอโดยแอปพลิเคชัน เมื่ออยู่ในRAMจะสามารถรันโค้ดที่เป็นอันตรายที่มีอยู่ในไฟล์และอาจทำให้คอมพิวเตอร์หรือเครือข่ายของคุณเสียหายได้
วิธีการตรวจหา DLL Hijacking
วิธีที่ง่ายที่สุดในการตรวจจับและป้องกันการ ลักลอบใช้ DLLคือการใช้เครื่องมือของบุคคลที่สาม มีเครื่องมือฟรีดีๆ ในตลาดที่ช่วยในการตรวจหาการ พยายามแฮ็ก DLLและป้องกัน
หนึ่งในโปรแกรมดังกล่าวคือDLL Hijack Auditorแต่รองรับเฉพาะแอปพลิเคชัน 32 บิตเท่านั้น คุณสามารถติดตั้งลงในคอมพิวเตอร์และสแกนแอปพลิเคชัน Windows ทั้งหมดของคุณเพื่อดูว่าแอปพลิเคชันใดบ้างที่เสี่ยงต่อการถูกจี้DLL อินเทอร์เฟซนั้นเรียบง่ายและอธิบายตนเองได้ ข้อเสียเปรียบเพียงอย่างเดียวของแอปพลิเคชันนี้คือ คุณไม่สามารถสแกนแอปพลิเคชัน 64 บิตได้
โปรแกรมอื่นเพื่อตรวจจับการจี้ DLL DLL_HIJACK_DETECT มีให้ใช้ งานผ่านGitHub โปรแกรมนี้ตรวจสอบแอปพลิเคชันเพื่อดูว่ามีแอปพลิเคชันใดบ้างที่เสี่ยงต่อการถูกจี้DLL ถ้าใช่ โปรแกรมจะแจ้งให้ผู้ใช้ทราบ แอปพลิเคชันมีสองเวอร์ชัน - x86 และx64เพื่อให้คุณสามารถใช้แต่ละเวอร์ชันเพื่อสแกนแอปพลิเคชันทั้ง 32 บิตและ 64 บิตตามลำดับ
ควรสังเกตว่าโปรแกรมข้างต้นเพียงแค่สแกนแอปพลิเคชันบนแพลตฟอร์มWindows เพื่อหา (Windows)ช่องโหว่และไม่ได้ป้องกันการจี้ ไฟล์ DLLจริงๆ
วิธีป้องกันการลักลอบใช้ DLL
ปัญหาควรได้รับการแก้ไขโดยโปรแกรมเมอร์ตั้งแต่แรกเนื่องจากไม่มีอะไรมากที่คุณสามารถทำได้ยกเว้นการเพิ่มระบบความปลอดภัยของคุณ หากแทนที่จะใช้เส้นทางสัมพัทธ์ โปรแกรมเมอร์เริ่มใช้เส้นทางที่แน่นอน ช่องโหว่จะลดลง การอ่านพาธสัมบูรณ์Windowsหรือระบบปฏิบัติการอื่นๆ จะไม่ขึ้นอยู่กับตัวแปรของระบบสำหรับพาธ และจะตรงไปยังDLL ที่ต้องการ ซึ่งจะทำให้โอกาสในการโหลด (DLL)DLLชื่อเดียวกันในพาธที่มีลำดับความสำคัญสูงกว่า วิธีการนี้ก็เช่นกัน ไม่สามารถป้องกันการล้มเหลวได้ เพราะหากระบบถูกบุกรุก และอาชญากรไซเบอร์รู้เส้นทางที่แน่นอนของDLLพวกเขาจะแทนที่ DLL เดิมด้วย(DLL)DLLปลอม. นั่นจะเป็นการเขียนทับไฟล์เพื่อให้DLL ดั้งเดิม เปลี่ยนเป็นโค้ดที่เป็นอันตราย แต่อีกครั้ง อาชญากรไซเบอร์จำเป็นต้องทราบเส้นทางที่แน่นอนที่กล่าวถึงในแอปพลิเคชันที่เรียกใช้DLL กระบวนการนี้ยากสำหรับอาชญากรไซเบอร์และด้วยเหตุนี้จึงสามารถวางใจได้
กลับมาที่สิ่งที่คุณทำได้ เพียงพยายามขยายขนาดระบบรักษาความปลอดภัยเพื่อให้ระบบ Windows ของคุณปลอดภัย(secure your Windows system) ยิ่ง ขึ้น ใช้ไฟร์วอลล์(firewall) ที่ ดี หากเป็นไปได้ ให้ใช้ไฟร์วอลล์ฮาร์ดแวร์หรือเปิดไฟร์วอลล์เราเตอร์ ใช้ระบบตรวจจับการบุกรุก ที่ดี เพื่อให้คุณทราบว่ามีใครพยายามเล่นกับคอมพิวเตอร์ของคุณหรือไม่
หากคุณกำลังแก้ไขปัญหาคอมพิวเตอร์ คุณอาจดำเนินการต่อไปนี้เพื่อเพิ่มความปลอดภัยของคุณ:
- ปิดใช้งาน การโหลด DLLจากการแชร์เครือข่ายระยะไกล
- ปิดใช้งานการโหลด ไฟล์ DLLจากWebDAV
- ปิดใช้งานบริการ WebClient(WebClient)ทั้งหมดหรือตั้งค่าเป็นด้วยตนเอง
- บล็อก(Block)พอร์ตTCP 445 และ 139 เนื่องจากส่วนใหญ่จะใช้เพื่อประนีประนอมคอมพิวเตอร์
- ติดตั้งการอัปเดตล่าสุดของระบบปฏิบัติการและซอฟต์แวร์ความปลอดภัย
Microsoftได้เปิดตัวเครื่องมือเพื่อป้องกัน การโจมตี DLL load hijacking เครื่องมือนี้ช่วยลดความเสี่ยงของ การโจมตี DLL hijacking โดยป้องกันไม่ให้แอปพลิเคชันโหลดโค้ดจากไฟล์DLL อย่างไม่ปลอดภัย(DLL)
หากคุณต้องการเพิ่มอะไรในบทความโปรดแสดงความคิดเห็นด้านล่าง(If you would like to add anything to the article, please comment below.)
Related posts
Access Trojan ระยะไกลคืออะไร การป้องกัน, Detection & Removal
Fileless Malware Attacks, Protection and Detection
วิธีหลีกเลี่ยง Phishing Scams and Attacks?
Cyber Attacks - นิยาม, Types, การป้องกัน
Browser Hijacking and Free Browser Hijacker Removal Tools
Fix Search ข้อผิดพลาดล้มเหลวเมื่อใช้งาน Chrome Malware Scanner
การโจมตีของมัลแวร์: ความหมายและตัวอย่างการป้องกัน, การรักษาความปลอดภัย
Remove virus จาก USB Flash Drive ใช้ Command Prompt or Batch File
ระยะไกล Administration Tools: ความเสี่ยง Threats, Prevention
เคล็ดลับในการปกป้องคอมพิวเตอร์ของคุณกับ Thunderspy attack
ฟรี Malware Removal Tools เพื่อลบ Specific Virus ใน Windows 11/10
วิธีตรวจสอบว่าไฟล์เป็นอันตรายหรือไม่ใน Windows 11/10
วิธีการลบ Malware From AN Android Phone
คุณจะได้รับ computer virus, โทรจันทำงานได้อย่างไร spyware or malware
ไวรัส IDP.Generic คืออะไรและวิธีการลบมัน?
IObit Malware Fighter Free review & download
Backdoor attack คืออะไร Meaning, Examples, Definitions
Cyber crime คืออะไร วิธีจัดการกับมัน?
สุดยอดออนไลน์ Online Malware Scanners เพื่อสแกนไฟล์
วิธีใช้ Chrome browser ของ Malware Scanner & Cleanup Tool ของ Chrome browser