วิธีปิดการใช้งาน REST API ใน WordPress
เผยแพร่แล้ว: 2023-05-28คุณต้องการปิดการใช้งาน Rest API แต่ไม่ทราบวิธีการปิดใช่หรือไม่ ไม่ต้องกังวล; เรามีคุณครอบคลุม
ในบทความนี้ เราจะอธิบายวิธีปิดใช้งาน Rest API ใน WordPress และเหตุใดจึงเป็นขั้นตอนสำคัญสำหรับความปลอดภัยของเว็บไซต์ของคุณ
คุณทราบหรือไม่ว่า Rest API เป็นหนึ่งในวิธีที่แฮ็กเกอร์ใช้บ่อยที่สุดเพื่อเข้าถึงเว็บไซต์โดยไม่ได้รับอนุญาต
จากข้อมูลของ Sucuri บริษัทรักษาความปลอดภัยเว็บไซต์ชั้นนำ 73% ของเว็บไซต์ WordPress ที่ถูกแฮ็กในปี 2020 เกิดจากปลั๊กอินและธีมที่มีช่องโหว่ โดย Rest API เป็นหนึ่งในช่องโหว่หลัก
หากคุณสงสัยว่า Rest API คืออะไร และเหตุใดการปิดใช้งานจึงมีความสำคัญต่อความปลอดภัยของเว็บไซต์ของคุณ โปรดอ่านต่อไป
ในบทความนี้ เราจะให้คำแนะนำทีละขั้นตอนเกี่ยวกับวิธีปิดการใช้งาน Rest API ใน WordPress และอธิบายว่าเหตุใดการทำเช่นนั้นจึงสามารถป้องกันแฮ็กเกอร์ไม่ให้ใช้ประโยชน์จากช่องโหว่ของเว็บไซต์ของคุณ
WordPress ส่วนที่เหลือ API คืออะไร?
WordPress Rest API เป็นอินเทอร์เฟซที่ช่วยให้นักพัฒนาสร้างเว็บและแอปพลิเคชันมือถือโดยใช้ข้อมูลของแพลตฟอร์ม WordPress
เปิดใช้งานการดึง อัปเดต และลบเนื้อหาจากตำแหน่งที่ตั้งระยะไกลโดยสร้างคำขอ HTTP แม้ว่าจะมีประโยชน์มากมาย แต่ผู้ใช้บางรายอาจต้องการปิดการใช้งานด้วยเหตุผลด้านความปลอดภัยหรือเพื่อวัตถุประสงค์อื่น
ทำไมคุณควรปิดการใช้งาน WordPress REST API
หากคุณเป็นเจ้าของเว็บไซต์ WordPress คุณอาจเคยได้ยินเกี่ยวกับคุณสมบัติ REST API ที่ช่วยให้นักพัฒนาสามารถเข้าถึงข้อมูลไซต์และดำเนินการต่างๆ จากระยะไกลได้
แม้ว่าคุณสมบัตินี้จะมีประโยชน์ แต่ก็มีความเสี่ยงด้านความปลอดภัยเช่นกัน ซึ่งเป็นสาเหตุที่ผู้ใช้หลายคนเลือกที่จะปิดการใช้งาน ต่อไปนี้เป็นเหตุผลบางประการที่คุณควรพิจารณาดำเนินการดังกล่าว:
1. การเข้าถึงโดยไม่ได้รับอนุญาต: REST API สามารถให้การเข้าถึงข้อมูลที่ละเอียดอ่อน เช่น ข้อมูลผู้ใช้และข้อมูลรับรองการเข้าสู่ระบบ หากไซต์ของคุณมีมาตรการตรวจสอบสิทธิ์หรือการอนุญาตที่อ่อนแอ แฮ็กเกอร์สามารถใช้ช่องโหว่เพื่อเข้าถึงไซต์ของคุณโดยไม่ได้รับอนุญาต
2. การโจมตีแบบ Brute Force: เมื่อเปิดใช้งาน REST API ผู้โจมตีสามารถใช้เครื่องมืออัตโนมัติเพื่อส่งคำขอซ้ำไปยังจุดสิ้นสุด API ของไซต์ของคุณ โดยพยายามเดาชื่อผู้ใช้และรหัสผ่านที่ถูกต้อง การโจมตีประเภทนี้อาจทำให้เซิร์ฟเวอร์ของคุณทำงานหนักเกินไปและทำให้ความปลอดภัยของไซต์ของคุณลดลง
3. การโจมตี DDoS: แฮ็กเกอร์ยังสามารถใช้ REST API เพื่อเริ่มการโจมตีแบบกระจายการปฏิเสธการให้บริการ (DDoS) โดยส่งคำขอมากเกินไปไปยังเซิร์ฟเวอร์ของไซต์ของคุณ
หากต้องการจำกัดการเข้าถึง WordPress REST API คุณสามารถใช้ปลั๊กอินหรือเพิ่มโค้ดลงในไฟล์ functions.php ของไซต์ด้วยตนเอง เมื่อปิดใช้งาน REST API คุณสามารถปรับปรุงความปลอดภัยของไซต์และป้องกันการโจมตีที่อาจเกิดขึ้นได้
โดยสรุป แม้ว่า WordPress REST API จะเป็นเครื่องมือที่เป็นประโยชน์สำหรับนักพัฒนา แต่สิ่งสำคัญคือต้องชั่งน้ำหนักผลประโยชน์เทียบกับความเสี่ยงด้านความปลอดภัย เมื่อดำเนินการตามขั้นตอนเพื่อจำกัดการเข้าถึง REST API คุณสามารถปกป้องไซต์ของคุณจากภัยคุกคามที่อาจเกิดขึ้นและรักษาข้อมูลของคุณให้ปลอดภัย
วิธีปิดการใช้งาน WordPress Rest API [2 วิธี]
หากคุณต้องการปิดใช้งาน WordPress REST API เพื่อปรับปรุงความปลอดภัยและความเป็นส่วนตัวของเว็บไซต์ของคุณ มีสองวิธีที่ใช้ได้ วิธีแรกเกี่ยวข้องกับการใช้ปลั๊กอิน และวิธีที่สองต้องแก้ไขโค้ดของเว็บไซต์ของคุณ
ทั้งสองวิธีง่ายต่อการปฏิบัติตาม ด้วยการจำกัดการเข้าถึง WordPress REST API คุณสามารถปกป้องเว็บไซต์ของคุณจากภัยคุกคามด้านความปลอดภัยที่อาจเกิดขึ้นได้
วิธีที่ 1: ใช้ปลั๊กอิน
หากคุณกังวลเกี่ยวกับความปลอดภัยของเว็บไซต์ WordPress การปิดใช้งาน REST API อาจเป็นมาตรการที่มีประสิทธิภาพ โชคดีที่การทำงานนี้สำเร็จโดยใช้ปลั๊กอินค่อนข้างง่าย
ในส่วนนี้ เราจะช่วยคุณใช้ปลั๊กอิน Disable WP REST API เพื่อปิดใช้งาน REST API บนเว็บไซต์ของคุณ
สิ่งที่คุณต้องทำคือติดตั้งและเปิดใช้งานปิดใช้งานปลั๊กอิน WP REST API จาก ปลั๊กอิน → เพิ่มใหม่
แค่นั้นแหละ! เมื่อเปิดใช้งานแล้ว ปลั๊กอินจะบล็อกคำขอทั้งหมดที่ส่งไปยัง REST API บนไซต์ของคุณโดยอัตโนมัติสำหรับผู้ใช้ที่ออกจากระบบ
การใช้ปลั๊กอินใน WordPress สำหรับการเข้าถึงข้อจำกัดของ Rest API เป็นวิธีที่ง่ายและมีประสิทธิภาพในการปิดใช้งาน REST API บนไซต์ WordPress ของคุณ
คุณสามารถตรวจสอบว่า REST API ถูกปิดใช้งานจริงบนเว็บไซต์ของคุณหรือไม่จากลิงค์นี้: yourwebsite.com/wp-json
หาก URL นี้แสดงข้อผิดพลาด 401 ในลักษณะนี้ แสดงว่า REST API ถูกปิดใช้งาน:
วิธีที่ 2: ปิดใช้งาน WordPress Rest API โดยไม่มีปลั๊กอิน
ในส่วนนี้ เราจะกล่าวถึงวิธีการปิดใช้งาน WordPress Rest API โดยไม่ต้องใช้ปลั๊กอิน นี่เป็นวิธีที่มีประสิทธิภาพในการรักษาความปลอดภัยเว็บไซต์ของคุณและป้องกันการเข้าถึงข้อมูลที่ละเอียดอ่อนโดยไม่ได้รับอนุญาต
ทำตามขั้นตอนเหล่านี้เพื่อปิดการใช้งาน WordPress Rest API โดยไม่ต้องใช้ปลั๊กอิน:
ขั้นตอนที่ 1: ไปที่ ลักษณะที่ปรากฏ → ตัวแก้ไขไฟล์ธีม
ขั้นตอนที่ 2: เปิดไฟล์ functions.php และวางโค้ดต่อไปนี้ลงในไฟล์:
/** Disable REST API **/ // Filters for WP-API version 1.x add_filter('json_enabled', '__return_false'); add_filter('json_jsonp_enabled', '__return_false'); // Filters for WP-API version 2.x // add_filter('rest_enabled', '__return_false'); add_filter('rest_jsonp_enabled', '__return_false');
รหัสนี้บล็อกคำขอ REST API ที่ไม่ผ่านการรับรองความถูกต้องจากผู้ใช้ที่ไม่ได้เข้าสู่ระบบ ซึ่งจะปิดใช้งาน API สำหรับพวกเขาอย่างมีประสิทธิภาพ รหัสนี้ยังปิดใช้งาน wp-json/wp/v2/users ที่รู้จักกันในชื่อ WP API เวอร์ชัน 2.x
ขั้นตอนที่ 3: บันทึกและทดสอบการเปลี่ยนแปลงของคุณ
หากทุกอย่างทำงานได้อย่างถูกต้อง คุณควรได้รับข้อความแสดงข้อผิดพลาด 401 Unauthorized เมื่อเข้าถึงปลายทางในฐานะผู้ใช้ที่ไม่ได้เข้าสู่ระบบ
วิธีที่ 3: จำกัด การเข้าถึง WordPress Rest API
ในส่วนนี้ เราจะพูดถึงวิธีจำกัดการเข้าถึง WordPress Rest API ซึ่งสามารถช่วยปรับปรุงความปลอดภัยของเว็บไซต์ของคุณ
โดยการจำกัดการเข้าถึง คุณสามารถป้องกันไม่ให้คำขอที่ไม่ได้รับอนุญาตเข้าถึงข้อมูลของไซต์ของคุณผ่าน API
หากคุณเพิ่มเครื่องหมาย is_user_logged_in
ให้กับตัวกรอง rest_authentication_errors
คุณจะสามารถกำหนดให้มีการพิสูจน์ตัวตนสำหรับการเรียกใช้ REST API ทั้งหมดได้
ต่อไปนี้เป็นวิธีการที่คุณสามารถทำได้ในไม่กี่ขั้นตอน:
ขั้นตอนที่ 1: เข้าถึงไฟล์ functions.php
ขั้นตอนที่ 2: วางรหัสต่อไปนี้ลงในไฟล์:
add_filter( 'rest_authentication_errors', function( $result ) { // If a previous authentication check was applied, // pass that result along without modification. if ( true === $result || is_wp_error( $result ) ) { return $result; } // No authentication has been performed yet. // Return an error if user is not logged in. if ( ! is_user_logged_in() ) { return new WP_Error( 'rest_not_logged_in', __( 'You are not currently logged in.' ), array( 'status' => 401 ) ); } // Our custom authentication check should have no effect // on logged-in requests return $result; });
โปรดทราบว่าพารามิเตอร์การโทรกลับที่เข้ามาสามารถเปลือย WP_Error
หรือค่า boolean
ประเภทของพารามิเตอร์ระบุสถานะของกระบวนการตรวจสอบความถูกต้อง
1. null: ยังไม่ได้ตรวจสอบการรับรองความถูกต้อง และการเรียกกลับของ hook อาจใช้การรับรองความถูกต้องแบบกำหนดเอง
2. บูลีน: มีการตรวจสอบวิธีการรับรองความถูกต้องก่อนหน้านี้ ค่าจริงบ่งชี้ว่าการรับรองความถูกต้องสำเร็จ ในขณะที่ค่าเท็จบ่งชี้ว่าการรับรองความถูกต้องล้มเหลว
3. WP_Error: มีข้อผิดพลาด
ขั้นตอนที่ 3: ตรวจสอบเว็บไซต์ของคุณเพื่อให้แน่ใจว่าทำงานได้อย่างถูกต้อง
แค่นั้นแหละ! ด้วยขั้นตอนง่ายๆ เหล่านี้ คุณได้จำกัดการเข้าถึง WordPress Rest API ทำให้เว็บไซต์ของคุณปลอดภัยยิ่งขึ้น
หมายเหตุสำคัญ: วิธีนี้อาจส่งผลต่อปลั๊กอินหรือธีมบางตัวที่ใช้ Rest API ดังนั้นโปรดทดสอบเว็บไซต์ของคุณอย่างละเอียดหลังจากทำการเปลี่ยนแปลงนี้
คำถามที่พบบ่อย
การปิดใช้งาน Rest API สามารถช่วยปรับปรุงความปลอดภัยของเว็บไซต์ของคุณโดยป้องกันการเข้าถึงข้อมูลและการทำงานของไซต์ของคุณโดยไม่ได้รับอนุญาตผ่านคำขอ Rest API
มีหลายวิธีในการปิดใช้งาน Rest API ใน WordPress แต่วิธีที่ง่ายที่สุดคือการใช้ปลั๊กอิน เช่น Disable WP REST API ซึ่งจะช่วยให้คุณสามารถปิดใช้งาน Rest API ได้อย่างง่ายดายโดยไม่ต้องเขียนโค้ดใดๆ
การปิดใช้งาน Rest API อาจส่งผลต่อการทำงานของปลั๊กอินหรือธีมบางตัวที่ต้องใช้คำขอ Rest API เพื่อให้ทำงานได้อย่างถูกต้อง อย่างไรก็ตาม ปลั๊กอินและธีมส่วนใหญ่ควรทำงานต่อไปได้ตามปกติ
บทสรุป
เราได้กล่าวถึงความสำคัญของการปิดใช้งาน Rest API ใน WordPress เพื่อเพิ่มความปลอดภัยและความเป็นส่วนตัวของเว็บไซต์ เราได้ดำเนินการทีละขั้นตอนในการปิดใช้งาน Rest API ด้วยวิธีการต่างๆ ด้วยการปฏิบัติตามวิธีการเหล่านี้ คุณสามารถทำให้เว็บไซต์ของคุณปลอดภัยจากภัยคุกคามที่อาจเกิดขึ้นได้อย่างง่ายดาย
ขอขอบคุณที่สละเวลาอ่านบทความนี้และหวังว่าบทความนี้จะเป็นประโยชน์กับคุณ หากคุณมีคำถามหรือพบปัญหาใด ๆ ในขณะที่ทำตามขั้นตอนที่กล่าวถึงในบทความนี้ โปรดอย่าลังเลที่จะถามเราในส่วนความคิดเห็นด้านล่าง ทีมงานของเราพร้อมให้ความช่วยเหลือคุณเสมอ
หากต้องการติดตามบทเรียนและข่าวสารล่าสุดของ WordPress อย่าลืมติดตาม BetterStudio บน Facebook และ Twitter ทีมงานของเราแบ่งปันเคล็ดลับและคำแนะนำที่เป็นประโยชน์อย่างสม่ำเสมอเพื่อช่วยเจ้าของเว็บไซต์เพิ่มประสิทธิภาพการแสดงตนทางออนไลน์