OWASP และ OWASP Top 10 คืออะไร?
เผยแพร่แล้ว: 2020-08-07โครงการ Open Web Application Security (OWASP) เป็นมูลนิธิที่ไม่แสวงหาผลกำไรที่ทำงานเพื่อปรับปรุงความปลอดภัยของซอฟต์แวร์ OWASP Top 10 เป็นเอกสารการรับรู้มาตรฐานสำหรับนักพัฒนาและความปลอดภัยของเว็บแอปพลิเคชัน แสดงถึงความเห็นพ้องต้องกันในวงกว้างเกี่ยวกับความเสี่ยงด้านความปลอดภัยที่สำคัญที่สุดต่อเว็บแอปพลิเคชัน
ความเสี่ยงด้านความปลอดภัยของเว็บแอปพลิเคชัน 10 อันดับแรกของ OWASP
1. การฉีด
ข้อบกพร่องของการ ฉีด อาจทำให้ผู้โจมตีสามารถแทรกโค้ดที่เป็นอันตรายลงในฐานข้อมูล WordPress ของคุณได้ โค้ดของผู้โจมตีสามารถหลอก WordPress หรือเซิร์ฟเวอร์ของคุณให้รันคำสั่งโดยไม่ได้รับอนุญาตอย่างเหมาะสม โค้ดที่เป็นอันตรายสามารถทำอะไรก็ได้ตั้งแต่การส่งออกรายชื่อผู้ใช้ของเว็บไซต์ไปจนถึงการลบตารางในฐานข้อมูลของคุณ
การป้องกัน
การเก็บข้อมูลแยกจากคำสั่งและการสืบค้นข้อมูลสามารถช่วยป้องกันช่องโหว่ในการแทรกข้อมูลได้
2. การตรวจสอบสิทธิ์ใช้งานไม่ได้
ช่องโหว่การ พิสูจน์ตัวตนที่ใช้งาน ไม่ได้อาจทำให้ผู้โจมตีประนีประนอมกับรหัสผ่านของผู้ใช้หรือรหัสผ่าน คีย์ หรือโทเค็นเซสชันของผู้ใช้เพื่อเข้าควบคุมบัญชีผู้ใช้
การป้องกัน
คุณสามารถช่วยปกป้องเว็บไซต์ของคุณจากช่องโหว่ของ Broken Authentication โดยใช้การตรวจสอบสิทธิ์แบบสองปัจจัย
คุณสามารถช่วยปกป้องเว็บไซต์ของคุณจากช่องโหว่ของ Broken Authentication โดยใช้การตรวจสอบสิทธิ์แบบสองปัจจัย
3. การเปิดเผยข้อมูลที่ละเอียดอ่อน
แอปพลิเคชันและ API ที่ไม่ได้ป้องกัน การเปิดเผยข้อมูลที่ละเอียดอ่อน อย่างถูกต้องอาจทำให้ผู้โจมตีเข้าถึงหมายเลขบัตรเครดิต บันทึกสุขภาพ หรือข้อมูลส่วนบุคคลอื่นๆ
ข้อมูลอาจถูกเปิดเผยเมื่ออยู่ ระหว่างการขนส่ง หรือเมื่อไม่ ได้ใช้งาน
- ตัวอย่างของข้อมูล ระหว่างทาง คือเมื่อมีการส่งหมายเลขบัตรเครดิตจากเบราว์เซอร์ของลูกค้าไปยังเกตเวย์การชำระเงินของเว็บไซต์ของคุณ
- ข้อมูลที่อยู่ นิ่ง หมายถึงมีการจัดเก็บและไม่ได้ใช้งาน ตัวอย่างของข้อมูลที่เหลือคือการสำรองข้อมูล BackupBuddy ของคุณที่จัดเก็บไว้ในตำแหน่งนอกสถานที่ ข้อมูลสำรองจะยังคงอยู่จนกว่าจะมีความจำเป็น
การป้องกัน
คุณสามารถติดตั้งใบรับรอง SSL เพื่อช่วยรักษาความปลอดภัยและเข้ารหัสข้อมูลที่อยู่ระหว่างการส่ง และเพิ่มการเข้ารหัสไปยังข้อมูลที่อยู่นิ่งเพื่อช่วยป้องกันการเปิดเผย
4. XML หน่วยงานภายนอก (XXE)
ตัวประมวลผล XML ที่เก่ากว่าหรือกำหนดค่าไม่ดีจำนวนมากจะประเมินเอนทิตีภายนอก เช่น การอ้างอิงฮาร์ดไดรฟ์ภายในเอกสาร XML ผู้โจมตีสามารถหลอกล่อให้ XML parser ส่งข้อมูลที่สำคัญไปยังเอนทิตีภายนอกภายใต้การควบคุมของพวกเขาได้
การป้องกัน
วิธีที่ดีที่สุดในการป้องกัน XXE คือการใช้รูปแบบข้อมูลที่ซับซ้อนน้อยกว่า เช่น JSON และหลีกเลี่ยงการทำให้เป็นอนุกรมของข้อมูลที่ละเอียดอ่อน
5. การควบคุมการเข้าถึงที่ใช้งานไม่ได้
ช่องโหว่ของ Broken Access Control จะทำให้ผู้โจมตีสามารถเลี่ยงการอนุญาตและดำเนินการต่างๆ ที่โดยทั่วไปแล้วจะถูกจำกัดไว้เฉพาะผู้ใช้ที่มีสิทธิ์สูงกว่า เช่น ผู้ดูแลระบบ
ในบริบทของ WordPress ช่องโหว่ของ Broken Access Control อาจทำให้ผู้ใช้ที่มีบทบาทเป็นสมาชิกสามารถทำงานระดับผู้ดูแลระบบได้ เช่น การเพิ่ม/ลบปลั๊กอินและผู้ใช้
การป้องกัน
iThemes Security Pro สามารถช่วยปกป้องเว็บไซต์ของคุณจาก Broken Access Control ได้โดยการจำกัดการเข้าถึงของผู้ดูแลระบบในรายการอุปกรณ์ที่เชื่อถือได้
ช่องโหว่ของ Broken Access Control จะทำให้ผู้โจมตีสามารถเลี่ยงการอนุญาตและดำเนินการต่างๆ ที่โดยทั่วไปแล้วจะถูกจำกัดไว้เฉพาะผู้ใช้ที่มีสิทธิ์สูงกว่า เช่น ผู้ดูแลระบบ
6. การกำหนดค่าความปลอดภัยผิดพลาด
การกำหนดค่าความปลอดภัยผิดพลาด เป็นปัญหาที่พบบ่อยที่สุดในรายการ ช่องโหว่ประเภทนี้มักเป็นผลมาจากการกำหนดค่าเริ่มต้นที่ไม่ปลอดภัย ข้อความแสดงข้อผิดพลาดที่อธิบายมากเกินไป และส่วนหัว HTTP ที่กำหนดค่าไม่ถูกต้อง
การป้องกัน
ปัญหาการกำหนดค่าความปลอดภัยที่ผิดพลาดสามารถบรรเทาได้ด้วยการลบคุณลักษณะที่ไม่ได้ใช้ในโค้ด ทำให้ไลบรารีทั้งหมดเป็นปัจจุบัน และทำให้ข้อความแสดงข้อผิดพลาดกว้างขึ้น
7. การเขียนสคริปต์ข้ามไซต์ (XSS)
ช่องโหว่ Cross-Site Scripting เกิดขึ้นเมื่อเว็บแอปพลิเคชันอนุญาตให้ผู้ใช้เพิ่มโค้ดที่กำหนดเองในเส้นทาง URL ผู้โจมตีสามารถใช้ช่องโหว่เพื่อเรียกใช้โค้ดที่เป็นอันตรายในเว็บเบราว์เซอร์ของเหยื่อ สร้างการเปลี่ยนเส้นทางไปยังเว็บไซต์ที่เป็นอันตราย หรือจี้เซสชันผู้ใช้
การป้องกัน
ฟีเจอร์ iThemes Security Pro Trusted Devices สามารถช่วยป้องกันการจี้เซสชันโดยตรวจสอบว่าอุปกรณ์ของผู้ใช้ไม่เปลี่ยนแปลงระหว่างเซสชัน
ฟีเจอร์ iThemes Security Pro Trusted Devices สามารถช่วยป้องกันการจี้เซสชันโดยตรวจสอบว่าอุปกรณ์ของผู้ใช้ไม่เปลี่ยนแปลงระหว่างเซสชัน
8. Deserialization ที่ไม่ปลอดภัย
การทำให้เป็นอนุกรมจะแปลงออบเจ็กต์จากโค้ดของแอปพลิเคชันให้อยู่ในรูปแบบที่สามารถกู้คืนได้ในภายหลัง เช่น การส่งออกการตั้งค่า iThemes Security Pro ไปยังไฟล์ JSON

การดีซีเรียลไลซ์เซชั่นเป็นสิ่งที่ตรงกันข้ามกับกระบวนการนั้น โดยนำข้อมูลที่มีโครงสร้างเป็นบางรูปแบบแล้วสร้างกลับเข้าไปในออบเจกต์ ตัวอย่างเช่น การนำการตั้งค่า iThemes Security Pro ที่คุณจัดเก็บไว้ในไฟล์ JSON และนำเข้าไปยังเว็บไซต์ใหม่
ข้อบกพร่อง Deserialization ที่ไม่ปลอดภัย สามารถและมักจะนำไปสู่การใช้ประโยชน์จาก Remote Code Execution ซึ่งอาจส่งผลให้เกิดการโจมตีแบบแทรกและยกระดับสิทธิ์
การป้องกัน
วิธีเดียวที่จะบรรเทาการใช้ประโยชน์จาก Deserialization ที่ไม่ปลอดภัยคือการไม่ยอมรับการทำให้เป็นอนุกรมจากแหล่งที่ไม่น่าเชื่อถือ
9. การใช้ส่วนประกอบที่มีช่องโหว่ที่ทราบแล้ว
เป็นที่แพร่หลายสำหรับนักพัฒนาที่จะใช้ส่วนประกอบต่างๆ เช่น ไลบรารีและเฟรมเวิร์กในแอปพลิเคชันของตน ซึ่งรวมถึงปลั๊กอิน WordPress และผู้พัฒนาธีม ไลบรารีและเฟรมเวิร์กของบริษัทอื่นเหล่านี้อาจทำให้เกิดช่องโหว่ด้านความปลอดภัยได้หากไม่ได้รับการอัปเดตอย่างเหมาะสม
การป้องกัน
นักพัฒนาสามารถลดความเสี่ยงของการ ใช้ส่วนประกอบที่มีช่องโหว่ที่ทราบได้ โดยการลบรหัสบุคคลที่สามที่ไม่ได้ใช้และใช้เฉพาะส่วนประกอบจากแหล่งที่เชื่อถือได้เท่านั้น
10. การบันทึกและการตรวจสอบไม่เพียงพอ
การบันทึกและการตรวจสอบไม่เพียงพอ อาจนำไปสู่ความล่าช้าในการตรวจจับการละเมิดความปลอดภัย การศึกษาการละเมิดส่วนใหญ่แสดงให้เห็นว่าเวลาในการตรวจจับการละเมิดนั้นเกิน 200 วัน! ระยะเวลาดังกล่าวทำให้ผู้โจมตีสามารถละเมิดระบบอื่น แก้ไข ขโมย หรือทำลายข้อมูลได้มากขึ้น
การป้องกัน
บันทึกการรักษาความปลอดภัยของ iThemes Security Pro WordPress จะตรวจสอบกิจกรรมที่เป็นอันตรายจำนวนมาก และใช้ข้อมูลที่รวบรวมได้เพื่อบล็อกการโจมตีและแจ้งเตือนคุณเมื่อมีสิ่งผิดปกติเกิดขึ้น
การศึกษาการละเมิดส่วนใหญ่แสดงเวลาในการตรวจพบการละเมิดมากกว่า 200 วัน!
เพิ่มการป้องกันด้วยการสแกนไซต์ iThemes Security Pro
ในบทความ Roundup ของช่องโหว่รายปักษ์รายสองเดือน เราแชร์ช่องโหว่หลัก ปลั๊กอิน และธีมของ WordPress ที่เปิดเผยล่าสุดทั้งหมด ปลั๊กอินและธีมจำนวนมากที่เรากล่าวถึงในบทสรุปของเรามีช่องโหว่ที่อยู่ในรายการ 10 อันดับแรกของ OWASP
ผู้ร้ายอันดับ 1 ของเว็บไซต์ที่ถูกแฮ็กคือช่องโหว่ที่มีโปรแกรมแก้ไขแต่ไม่ได้นำไปใช้ เพิ่ม iThemes Security Pro Site Scan ลงในแถบเครื่องมือความปลอดภัยของ WordPress เพื่อปกป้องเว็บไซต์ของคุณจากปัญหาด้านความปลอดภัยที่ทราบ iThemes Security Pro Site Scanner ตรวจสอบไซต์ของคุณเพื่อหาช่องโหว่ที่ทราบ และใช้โปรแกรมแก้ไขโดยอัตโนมัติหากมี
ไม่ว่าธีมของคุณจะ ใช้ส่วนประกอบที่มีช่องโหว่ที่รู้จัก หรือคุณกำลังใช้ปลั๊กอินที่มีช่องโหว่ Cross-Site Scripting ที่ รู้จัก การสแกนไซต์ iThemes Security Pro ก็ครอบคลุมให้คุณ
ไม่ว่าธีมของคุณจะ ใช้ส่วนประกอบที่มีช่องโหว่ที่รู้จัก หรือคุณกำลังใช้ปลั๊กอินที่มีช่องโหว่ Cross-Site Scripting ที่ รู้จัก การสแกนไซต์ iThemes Security Pro ก็ครอบคลุมให้คุณ
สรุป: OWASP 10 อันดับสูงสุด
รายชื่อ 10 อันดับแรกของ OWASP เป็นแหล่งข้อมูลที่ยอดเยี่ยมในการเผยแพร่ความรู้เกี่ยวกับวิธีการรักษาความปลอดภัยแอปพลิเคชันของคุณจากช่องโหว่ด้านความปลอดภัยที่พบบ่อยที่สุด น่าเสียดายที่สาเหตุที่ช่องโหว่เหล่านี้ติดอันดับ 10 อันดับแรกคือช่องโหว่เหล่านี้แพร่หลาย การใช้ปลั๊กอินความปลอดภัย WordPress เช่น iThemes Security Pro สามารถช่วยรักษาความปลอดภัยและปกป้องเว็บไซต์ของคุณจากปัญหาด้านความปลอดภัยทั่วไปเหล่านี้ได้
ในแต่ละสัปดาห์ Michael จะรวบรวมรายงานช่องโหว่ของ WordPress เพื่อช่วยให้เว็บไซต์ของคุณปลอดภัย ในฐานะผู้จัดการผลิตภัณฑ์ที่ iThemes เขาช่วยเราปรับปรุงรายการผลิตภัณฑ์ iThemes ต่อไป เขาเป็นคนเนิร์ดยักษ์และชอบเรียนรู้เกี่ยวกับเทคโนโลยีทุกอย่าง ทั้งเก่าและใหม่ คุณสามารถหาไมเคิลไปเที่ยวกับภรรยาและลูกสาว อ่านหนังสือหรือฟังเพลงเมื่อไม่ได้ทำงาน
