วิธีปิดการใช้งาน 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 Rest API [2 วิธี]
วิธีที่ 1: ใช้ปลั๊กอิน
วิธีที่ 2: ปิดใช้งาน WordPress Rest API โดยไม่มีปลั๊กอิน
วิธีที่ 3: จำกัด การเข้าถึง WordPress Rest API
คำถามที่พบบ่อย
บทสรุป

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 จาก ปลั๊กอิน → เพิ่มใหม่

ไปที่ Plugins → Add New และติดตั้ง Disable WP REST API

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

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

คุณสามารถตรวจสอบว่า REST API ถูกปิดใช้งานจริงบนเว็บไซต์ของคุณหรือไม่จากลิงค์นี้: yourwebsite.com/wp-json

หาก URL นี้แสดงข้อผิดพลาด 401 ในลักษณะนี้ แสดงว่า REST API ถูกปิดใช้งาน:

ข้อผิดพลาด 401 ในการเข้าถึง WP-JSON

วิธีที่ 2: ปิดใช้งาน WordPress Rest API โดยไม่มีปลั๊กอิน

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

ทำตามขั้นตอนเหล่านี้เพื่อปิดการใช้งาน WordPress Rest API โดยไม่ต้องใช้ปลั๊กอิน:

ขั้นตอนที่ 1: ไปที่ ลักษณะที่ปรากฏ → ตัวแก้ไขไฟล์ธีม

ไปที่ลักษณะที่ปรากฏ → ตัวแก้ไขไฟล์ธีม และเปิด functions.php

ขั้นตอนที่ 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 ใน WordPress คืออะไร?

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

ฉันจะปิดการใช้งาน Rest API ใน WordPress ได้อย่างไร

มีหลายวิธีในการปิดใช้งาน Rest API ใน WordPress แต่วิธีที่ง่ายที่สุดคือการใช้ปลั๊กอิน เช่น Disable WP REST API ซึ่งจะช่วยให้คุณสามารถปิดใช้งาน Rest API ได้อย่างง่ายดายโดยไม่ต้องเขียนโค้ดใดๆ

การปิดใช้งาน Rest API จะส่งผลต่อการทำงานของเว็บไซต์ของฉันหรือไม่

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

บทสรุป

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

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

หากต้องการติดตามบทเรียนและข่าวสารล่าสุดของ WordPress อย่าลืมติดตาม BetterStudio บน Facebook และ Twitter ทีมงานของเราแบ่งปันเคล็ดลับและคำแนะนำที่เป็นประโยชน์อย่างสม่ำเสมอเพื่อช่วยเจ้าของเว็บไซต์เพิ่มประสิทธิภาพการแสดงตนทางออนไลน์