GitHub เปลี่ยนพฤติกรรม pull_request_target กระทบ 1,000 โปรเจกต์ยอดฮิต
GitHub เตรียมบังคับใช้ 2 มาตรการใหม่สำหรับ pull_request_target ตั้งแต่วันที่ 20 กรกฎาคม และ 2 มกราคม 2026 ส่งผลกระทบต่อคลังโค้ดสาธารณะจำนวนมาก

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
- GitHub ปรับเปลี่ยนการทำงานของ trigger pull_request_target ในปีนี้
- มาตรการใหม่มีผลตั้งแต่วันที่ 20 กรกฎาคม 2026 และ 2 พฤศจิกายน 2026
- เครื่องมือ prt-check สแกน 1,000 คลังโค้ดที่มีดาวสูงสุดเพื่อตรวจหาผลกระทบ
- นักพัฒนาต้องเลือกแนวทางแก้ไข 3 วิธีตามคำแนะนำใน README
GitHub ได้ประกาศปรับเปลี่ยนการทำงานของฟีเจอร์ pull_request_target ครั้งใหญ่ในปีนี้ ซึ่งความเปลี่ยนแปลงในรูปแบบวันที่ที่กำหนดไว้ทั้งหมด 2 รายการ จะส่งผลกระทบโดยตรงต่อคลังโค้ดสาธารณะทุกแห่งที่ใช้ระบบ trigger ดังกล่าว ด้วยเหตุนี้ ทีมงานจึงได้พัฒนาเครื่องมือตรวจสอบขนาดเล็กฟรีที่ชื่อว่า prt-check ร่วมกับระบบวิศวกรรม AI (HAL) เพื่อนำไปทดสอบกับคลังโค้ดที่มีดาวสะสมมากที่สุด 1,000 อันดับแรกบน GitHub
สำหรับการตรวจสอบดังกล่าวได้ทำการสแกนเมื่อวันที่ 26 กันยายน 2026 หรือก่อนหน้าที่ GitHub จะเริ่มบล็อกค่าเริ่มต้นในวันที่ 2 พฤศจิกายน 2026 เป็นเวลา 37 วัน โดยรายงานฉบับนี้ได้นำเสนอเฉพาะตัวเลขภาพรวมและไม่มีการเปิดเผยชื่อคลังโค้ดแต่อย่างใด
การเปลี่ยนแปลงสำคัญทั้ง 2 ประการประกอบด้วย:
- ตั้งแต่วันที่ 20 กรกฎาคม 2026 เป็นต้นไป actions/checkout จะปฏิเสธการดึงโค้ด pull request จากฟอร์กในเวิร์กโฟลว์ pull_request_target และ workflow_run เว้นแต่จะทำการเลือกใช้งาน (opt-in)
- ตั้งแต่วันที่ 2 พฤศจิกายน 2026 ทาง GitHub จะทำการบล็อก pull_request_target บนคลังโค้ดสาธารณะที่ไม่มีนโยบาย Actions รองรับ

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
การปรับเปลี่ยนนโยบายความปลอดภัยของ pull_request_target ในครั้งนี้ถือเป็นมาตรการสำคัญเพื่อป้องกันช่องโหว่ประเภท remote code execution (RCE) ที่มักเกิดขึ้นบ่อยครั้งในโปรเจกต์โอเพนซอร์สขนาดใหญ่ การที่ GitHub บังคับให้ผู้ดูแลระบบต้องตั้งค่าความยินยอมหรือแยกกระบวนการทำงานออกอย่างชัดเจน จะช่วยลดความเสี่ยงที่โค้ดอันตรายจากภายนอกจะเข้าถึงสิทธิ์ระดับสูงของ repository ได้โดยง่าย
สำหรับผู้พัฒนาที่ต้องการตรวจสอบคลังโค้ดของตนเอง สามารถใช้งานเครื่องมือ prt-check ผ่าน Action หรือรันคำสั่ง python prt_check.py ในเครื่องแบบไม่มีส่วนเสริม และทำการแก้ไขตามขั้นตอน 3 แนวทางหลักใน README ได้แก่ เปลี่ยนไปใช้ pull_request, แยกออกเป็น pull_request ร่วมกับ workflow_run หรือคง trigger เดิมไว้พร้อมระบุ Actions policy ให้ชัดเจน
ที่มา: Dev.to
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น