เว็บมีปัญหาเกี่ยวกับซอฟต์แวร์ที่ล้าสมัย
เผยแพร่แล้ว: 2022-11-21บางคนอาจบอกว่าไม่มีอะไรคงอยู่ตลอดไปบนเว็บ และนั่นอาจเป็นการเปลี่ยนแปลงเพียงอย่างเดียว เว็บไซต์โปรดเข้ามาและไป เช่นเดียวกับเครื่องมือและเทคโนโลยี แน่นอนว่าข้อความเหล่านั้นมีความจริงอยู่บ้าง แต่ก็ซับซ้อนกว่านั้นเช่นกัน
คุณเห็นไหมว่า สิ่งต่างๆ ไม่ได้หายไปมากนักเมื่อมันเลือนหายไปในพื้นหลัง เว็บไซต์ที่เคยคึกคักด้วยการจราจรอาจกลายเป็นเมืองผี และเป็นไปได้ว่าเทคโนโลยีที่อยู่เบื้องหลังไซต์นั้นนั่งอยู่ที่นั่นเพื่อเก็บฝุ่น
แต่ไม่ใช่แค่ไซต์เก่าที่ไม่มีใครดูแลเท่านั้นที่มีปัญหา นอกจากนี้ยังมีสถานการณ์ที่เว็บไซต์ที่มีความสำคัญต่อภารกิจต้องอาศัยซอฟต์แวร์ที่ล้าสมัย นั่นอาจเป็นอะไรก็ได้ตั้งแต่ปลั๊กอิน WordPress ที่ถูกละทิ้งไปจนถึง PHP เวอร์ชันที่ไม่รองรับ
มันห่างไกลจากสถานการณ์ในอุดมคติ และปัญหาที่อาจเกิดขึ้นมากมายอาจเกิดขึ้นได้จากการยึดติดกับสแตนด์บายแบบเก่าเหล่านี้ แต่ก็เป็นความจริงของเว็บสมัยใหม่เช่นกัน ทันทีที่เทคโนโลยีใหม่มาถึงเพื่อดึงความสนใจ เทคโนโลยีเก่าก็ยังคงร่วงโรยตามเงามืด
ปัญหามีความซับซ้อน - และวิธีแก้ปัญหาที่เป็นไปได้ก็เช่นกัน เป็นไปได้ไหมที่จะกำจัดใยแมงมุมเหล่านี้?
ทำไมเว็บไซต์ยังคงใช้ Legacy Code ต่อไป?
เมื่อคุณนึกภาพเว็บไซต์ที่ใช้รหัสดั้งเดิม คุณจะนึกถึงอะไร อาจเป็นบล็อกที่ไม่ได้เห็นเนื้อหาใหม่ในช่วงสองสามปี หรือชุมชนออนไลน์ที่ตายไปแล้ว คุณอาจนึกถึงเว็บไซต์ธุรกิจที่ไม่ได้ใช้งาน
เธรดทั่วไปของตัวอย่างเหล่านี้คือพวกเขาน่าจะเป็นเว็บไซต์ขนาดเล็กและราคาไม่แพง (อาจฟรี) หน่วยงานที่ถูกแช่แข็งในเวลา
ตอนนี้ให้พิจารณาไซต์องค์กรขนาดใหญ่ที่มีการปรับแต่งอย่างมาก อาจมีฟังก์ชันการทำงานเฉพาะที่ช่วยให้ลูกค้าสามารถชำระค่าใช้จ่ายได้ อาจมีปลั๊กอิน WordPress แบบกำหนดเองที่ช่วยให้เวิร์กโฟลว์เฉพาะสำหรับสมาชิกในทีมง่ายขึ้น
ฟังก์ชันการทำงานแบบกำหนดเองมีราคาแพงและใช้เวลานานในการผลิต และในบางกรณีอาจเปราะบางได้ อาจอาศัยวิธีการหรือคุณสมบัติที่ไม่ได้รับการสนับสนุนในซอฟต์แวร์ที่เกี่ยวข้องในเวอร์ชันที่ใหม่กว่า ตัวอย่างเช่น แอปพลิเคชันที่สร้างขึ้นสำหรับ PHP 5 อาจไม่ทำงานใน PHP 8 อีกต่อไป
และในขณะที่นักพัฒนา (หรือทีมงานของพวกเขา) สามารถปรับเปลี่ยนโครงสร้างโค้ดได้ มันไม่ง่ายเสมอไปหรือเหมาะสมกับงบประมาณที่กำหนด เช่นเดียวกับเรื่องราวเก่า ๆ ของผู้ใช้ในองค์กรที่เก็บ Internet Explorer 6 ไว้เป็นเวลานาน รหัสเดิมสามารถอยู่ได้นานหลายปี
สิ่งสำคัญที่สุดคือซอฟต์แวร์ที่ล้าสมัยยังคงมีการใช้งานอยู่มาก นั่นเป็นความจริงทั้งในระดับสูงสุดและต่ำสุดของมาตราส่วน
สองตัวอย่างที่สำคัญ: PHP และ WordPress
สถิติการใช้งานเปลี่ยนแปลงเป็นประจำ – และจะเปลี่ยนไปอย่างไม่ต้องสงสัยหลังจากเผยแพร่บทความนี้ แต่โดยเฉพาะอย่างยิ่ง 2 แนวโน้มคือตัวอย่างที่สำคัญของซอฟต์แวร์ที่ล้าสมัยที่ใช้งานจริง: PHP และ WordPress
PHP 5 และ 7 ยังอยู่ที่นั่น
ในขณะที่เขียนนี้ PHP เวอร์ชันล่าสุดคือ 8.1 เปิดตัวในเดือนพฤศจิกายน 2021 และการอัปเดตความปลอดภัยมีกำหนดสิ้นสุดในเดือนพฤศจิกายน 2024 เวอร์ชัน 8.0 เปิดตัวในเดือนพฤศจิกายน 2020 (การอัปเดตความปลอดภัยสิ้นสุดในเดือนพฤศจิกายน 2023) เวอร์ชัน 7.4 ถูกส่งออกไปทั่วโลกในเดือนพฤศจิกายน 2019 (การอัปเดตด้านความปลอดภัยสิ้นสุดในเดือนพฤศจิกายน 2022)
ดังนั้นเวอร์ชัน 8 ขึ้นไปจึงอยู่กับเราเป็นเวลาหลายปี แต่ตามสถิติการใช้งาน PHP ของ W3Techs มีเพียง 6% ของไซต์ที่ทำการสำรวจเท่านั้นที่ใช้ PHP 8 หรือ 8.1 ในขณะเดียวกัน 70% กำลังใช้งาน PHP 7 อยู่บ้าง และเกือบ 23% ยังคงใช้งาน PHP 5 (ซึ่งสิ้นสุดการสนับสนุนในปี 2018)
การเปลี่ยนระหว่างเวอร์ชันหลัก ๆ ของ PHP มีแนวโน้มที่จะช้า อาจเป็นเพราะส่วนหนึ่งมาจากการเปลี่ยนแปลงความเข้ากันได้ ตัวอย่างเช่น WordPress และระบบนิเวศมีหนทางอีกยาวไกลในการรองรับ PHP 8 อย่างเต็มรูปแบบ
นอกจากนี้ โฮสต์เว็บไม่ได้กดดันลูกค้าให้อัปเกรดยากเกินไป (เพิ่มเติมเกี่ยวกับเรื่องนี้ในเร็วๆ นี้) ในขณะเดียวกัน เจ้าของเว็บไซต์ก็มีตั้งแต่ไม่รู้ PHP ไปจนถึงไม่กังวลมากเกินไปเกี่ยวกับการอัปเกรด
กล่าวโดยย่อ: มีความเร่งด่วนเพียงเล็กน้อย หรือไม่เพียงพอที่จะพลิกกระแสและรับเว็บไซต์เพิ่มเติมโดยใช้เวอร์ชันล่าสุด
WordPress 4 และ 5 ใช้งานได้จริง
ในขณะที่เราไปกด (ปุนตั้งใจ), WordPress 6.1 ได้เปิดตัวแล้ว เป็นเวอร์ชันล่าสุดของระบบจัดการเนื้อหา (CMS) ที่ได้รับความนิยมสูงสุดที่มนุษย์รู้จัก
และตามสถิติการใช้งาน WordPress ของ W3Techs เกือบ 60% ของไซต์ที่ทำการสำรวจกำลังใช้เวอร์ชัน 6 ขึ้นไป สูงกว่าอัตราการใช้ PHP 8 อย่างมาก ซึ่งคงไม่น่าแปลกใจนัก
เมื่อเปรียบเทียบกันแล้ว การอัปเดต WordPress นั้นง่ายกว่าและยังสามารถทำให้เป็นอัตโนมัติได้อีกด้วย เจ้าของไซต์และผู้ที่รับผิดชอบในการบำรุงรักษาไม่จำเป็นต้องยกนิ้วให้เพื่ออัปเกรด ผู้ให้บริการโฮสติ้งที่มีการจัดการอาจดูแลได้เช่นกัน และ WordPress เป็นที่ทราบกันดีว่าให้ความสำคัญกับความเข้ากันได้แบบย้อนหลัง ดังนั้นจึงมีโอกาสน้อยที่จะเกิดปัญหาใหญ่ขึ้น
แต่เวอร์ชันที่ล้าสมัยยังคงค้างอยู่ในนั้น เวอร์ชัน 5 ขับเคลื่อน 34% ของการติดตั้ง ในขณะที่มากกว่า 6% ของการติดตั้งเป็นไปตามเวอร์ชัน 4
หากมีข่าวดีก็คือแกนหลักของ WordPress ยังคงปล่อยการอัปเดตความปลอดภัยสำหรับซอฟต์แวร์เวอร์ชันเก่าหลายรุ่น ถึงกระนั้น ไซต์เหล่านี้ยังขาดคุณสมบัติใหม่และการปรับปรุงประสิทธิภาพ ไม่ต้องพูดถึงปัญหาความเข้ากันได้ของธีมและปลั๊กอินที่เป็นไปได้ โอ้ และไม่น่าเป็นไปได้ที่พวกเขาจะทำงานกับ PHP เวอร์ชันล่าสุด
นอกจากนี้ยังเป็นที่น่าสังเกตว่าสถิติเหล่านี้ไม่ได้คำนึงถึงเว็บไซต์ที่ใช้ปลั๊กอินและธีมที่ล้าสมัยหรือถูกละทิ้ง นั่นอาจเป็นกาแลคซีที่แตกต่างไปจากเดิมอย่างสิ้นเชิงที่ควรค่าแก่การสำรวจ แต่ก็มีความเกี่ยวข้องเช่นกัน นี่คือที่มาของปัญหาด้านความปลอดภัยที่เกี่ยวข้องกับ WordPress ส่วนใหญ่
ทำไมสิ่งนี้ถึงเป็นข้อกังวล
คำว่า "ซอฟต์แวร์ที่ล้าสมัย" สามารถทำให้เกิดภาพฝันร้ายได้ทุกประเภท ผู้คนที่ช้อปปิ้งออนไลน์ด้วย Windows XP เวอร์ชันที่ไม่ได้แพตช์อยู่ในใจ อาจใช้งานได้ แต่มีความเสี่ยงมากมายในการใช้งานต่อไป
ความปลอดภัยเป็นสิ่งสำคัญยิ่ง มีเหตุผลว่าการใช้ PHP เวอร์ชันที่ไม่ได้รับการอัปเดตความปลอดภัยอีกต่อไปนั้นมีความเสี่ยง การโจมตีที่อาจหยุดได้ง่ายๆ ด้วยเวอร์ชันที่ใหม่กว่าอาจสร้างความเสียหายให้กับการตั้งค่าเดิมได้
แต่ก็ใช้ไลบรารี JavaScript หรือยูทิลิตี้เซิร์ฟเวอร์เก่าที่มีข้อบกพร่องด้านความปลอดภัยแบบเปิด การพึ่งพาแถบทั้งหมดอาจเป็นอันตรายได้ ช่องโหว่ Log4j ล่าสุดเป็นเพียงหนึ่งในการแจ้งเตือนจำนวนมาก
จากนั้นจึงเป็นเรื่องของประสิทธิภาพและประสิทธิภาพ ซอฟต์แวร์ที่ล้าสมัยซึ่งขาดการปรับปรุงเหล่านี้อาจส่งผลเสียต่อประสบการณ์ของผู้ใช้, SEO และการใช้พลังงาน
และยิ่งซอฟต์แวร์ล้าสมัยมากเท่าไหร่ ก็ยิ่งยากขึ้น (และแพงขึ้น) ในการปรับปรุงให้เร็วขึ้นในอนาคต แต่ละเวอร์ชันที่ตามมาสามารถเพิ่มอุปสรรคให้กับกระบวนการได้
โฮสต์เว็บบางแห่งบังคับให้เกิดปัญหา
โฮสต์เว็บมีบทบาทในการช่วยลูกค้าในการติดตั้งซอฟต์แวร์ใหม่ และบางคนก็ก้าวร้าวมากขึ้นในความพยายามเหล่านี้
PHP เป็นเป้าหมายหลัก โฮสต์บางแห่งจะอนุญาตให้ลูกค้าใช้งานเวอร์ชันที่ไม่รองรับต่อไปได้ แต่ได้เริ่มเรียกเก็บค่าธรรมเนียมเพิ่มเติม ซึ่งอาจเป็นผลมาจากค่าใช้จ่ายในการสนับสนุนที่สูงขึ้นสำหรับลูกค้าที่ใช้ซอฟต์แวร์ที่ล้าสมัย อย่างน้อยก็เป็นวิธีโน้มน้าวให้ผู้ใช้อัปเกรด
ถึงกระนั้น คนอื่นๆ ก็มีท่าทีแข็งกร้าวมากขึ้น พวกเขาจะแจ้งลูกค้าที่ใช้ PHP เวอร์ชันที่ล้าสมัยและแจ้งวันที่อัปเกรดตามกำหนดเวลา จากจุดนั้น ไซต์จะได้รับการอัปเกรดไม่ว่าจะได้รับการทดสอบหรือแพตช์สำหรับเวอร์ชันใหม่หรือไม่ก็ตาม
คงต้องรอดูกันต่อไปว่ามาตรการนี้จะได้ผลแค่ไหน แต่การล้างซอฟต์แวร์ที่ล้าสมัยถือเป็นงานใหญ่ ดังนั้นต้องมีใครสักคนที่กลิ้งลูกบอล เจ้าภาพอยู่ในตำแหน่งที่ดีที่จะทำเช่นนั้น
ออกไปกับคนเก่า?
เมื่ออายุ 30 ปีขึ้นไป เว็บได้โฮสต์ซอฟต์แวร์จำนวนมากจนนับไม่ถ้วน พิจารณาแอพทั้งหมด - ใหญ่และเล็ก - ที่ดาวน์โหลดและติดตั้งบนเซิร์ฟเวอร์เมื่อเวลาผ่านไป ไม่น่าแปลกใจที่บางคนถูกทิ้งไว้จนเกินวันหมดอายุ
บางครั้งรหัสเดิมนี้อาจหลุดออกไปโดยไม่จำเป็น แอปพลิเคชันอื่นขึ้นอยู่กับรหัสนั้น แต่อาจเกิดขึ้นได้เพียงเพราะเจ้าของไซต์ไม่ทราบถึงสถานการณ์ดังกล่าว อาจไม่มีใครติดต่อพวกเขาเกี่ยวกับการอัปเกรด
ไม่ว่าในกรณีใด ทรัพยากรเป็นสิ่งที่จำเป็นในการเพิ่มความพยายามในการปรับปรุงให้ทันสมัย ในระดับองค์กร นี่หมายถึงการทุ่มเทเวลาและเงินเพื่อให้สิ่งต่างๆ พัฒนาต่อไปด้วยเวอร์ชันที่ใหม่กว่า
ในขั้นบันไดขั้นล่าง การศึกษาเป็นปัจจัยสำคัญ โฮสต์เว็บเริ่มตระหนักถึงความสำคัญของการแจ้งให้ลูกค้าทราบ และนักออกแบบเว็บไซต์ควรทำเช่นเดียวกัน
เริ่มต้นด้วยการแจ้งให้ลูกค้าทราบว่าตนอยู่ในจุดใด อันตรายจากการใช้ซอฟต์แวร์ที่ล้าสมัย และประโยชน์ของการอัปเกรด จากที่นั่นพวกเขาสามารถตัดสินใจได้อย่างชาญฉลาด
ไม่ ไซต์ที่อัปเกรดเพียงไซต์เดียวไม่สามารถเปลี่ยนโลกได้ แต่แต่ละขั้นตอนก็เป็นก้าวเล็กๆ ไปสู่เว็บที่ปลอดภัยยิ่งขึ้นซึ่งสามารถใช้ประโยชน์จากเทคโนโลยีล่าสุดได้