Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบเครือข่าย >> ความปลอดภัยเครือข่าย

เปิดเผย 5 ช่องโหว่วิกฤติของ NGINX - ปกป้อง Web Servers ของคุณ

เว็บไซต์ที่คึกคักที่สุดของอินเทอร์เน็ตมากกว่าครึ่งหนึ่ง รวมถึง Airbnb, Box, Instagram, Netflix, Pinterest, SoundCloud, และ Zappos พึ่งพา NGINX Cyber criminals มัก target web servers และค้นหา exploit ช่องโหว่เล็กน้อยเพื่อขโมยข้อมูลละเอียดอ่อน NGINX ไม่ได้เป็นข้อยกเว้น - ได้เผชิญ cyber attacks และ exposed vulnerabilities หลายครั้ง

ในบทความนี้ เราพูดถึง top 5 most critical NGINX vulnerabilities ที่พบจนถึงปัจจุบัน และวิธี secure web server ของคุณ อย่างไรก็ตาม จำไว้ว่า เพื่อ secure เว็บไซต์ให้สมบูรณ์ จำเป็นต้อง secure applications บนเซิร์ฟเวอร์ของคุณด้วย

1. NGINX SPDY heap buffer overflow (2014)

SPDY implementation ใน NGINX 1.3.15 ก่อน 1.4.7 และ 1.5.x ก่อน 1.5.12 มีช่องโหว่ heap-based buffer overflow นี้อนุญาตให้โจมตี execute arbitrary code ผ่าน crafted request Issue นี้ส่งผลต่อ NGINX ที่ compile ด้วย ngx_http_spdy_module module (ซึ่งไม่ compile by default) และ without --with-debug configure option หาก "spdy" option ของ "listen" directive ถูกใช้ใน configuration file

เปิดเผย 5 ช่องโหว่วิกฤติของ NGINX - ปกป้อง Web Servers ของคุณ เปิดเผย 5 ช่องโหว่วิกฤติของ NGINX - ปกป้อง Web Servers ของคุณ

ในการ exploit โจมตีสามารถ execute arbitrary code โดย specially craft request เพื่อ cause heap memory buffer overflow นี่จะส่งผลรุนแรงต่อ web server

แนะนำให้ upgrade ไป latest version ตรวจสอบว่า apply necessary patches จาก vendor ด้วย

2. NGINX Root Privilege Escalation Vulnerability (2016)

NGINX Root Privilege Escalation Vulnerability ถูกจัดว่า high severity สามารถนำไปสู่การสร้าง log directories ด้วย insecure permissions ซึ่งสามารถถูก exploit โดย malicious local attackers เพื่อ escalate privileges จาก NGINX/web user (www-data) ไป root ควบคุม web application ใดๆ ที่โฮสต์บน NGINX server Root privilege escalation vulnerability ส่งผลต่อ web server packages บน Debian-based distributions เช่น Debian หรือ Ubuntu

ช่องโหว่มาจาก procedure ต่อไปนี้: เมื่อ NGINX ติดตั้งจาก default repositories บน Debian-based systems มันสร้าง NGINX log directory ที่ location และ permissions ต่อไปนี้:

admin@wsxdn.com:~# ls -ld /var/log/nginx/
drwxr-x--- 2 www-data adm 4096 Nov 12 22:32 /var/log/nginx/
admin@wsxdn.com:~# ls -ld /var/log/nginx/*
-rw-r----- 1 www-data adm 0 Nov 12 22:31 /var/log/nginx/access.log
-rw-r--r-- 1 root root 0 Nov 12 22:47 /var/log/nginx/error.log

เนื่องจาก /var/log/nginx directory ถูก owned by www-data โจมตีสามารถแทนที่ log files ด้วย symlink ไป arbitrary file เมื่อได้ access เข้าระบบ เมื่อ restart logs จะถูกเขียนไปไฟล์ที่ symlink point ไป ทำให้โจมตี escalate privileges ไป root

ช่องโหว่ถูกแก้ใน NGINX 1.6.2-5+deb8u3 package บน Debian และ NGINX 1.10.0-0ubuntu0.16.04.3 บน Ubuntu (16.04 LTS)

3. Remote Integer Overflow Vulnerability (2017)

NGINX Remote Integer Overflow Vulnerability เป็น Boundary Condition Error type vulnerability ช่องโหว่มาจาก NGINX ไม่สามารถ perform adequate boundary checks บน user-supplied data ได้ Exploit นี้ โจมตีสามารถเข้าถึง sensitive information หรือ crash application ทำให้ denial-of-service condition

NGINX versions ตั้งแต่ 0.5.6 ถึง 1.13.2 รวม ถูก vulnerable integer overflow vulnerability ดังนั้น เพื่อ mitigate issue นี้ update ไป latest NGINX version และ check specific vendor advisory

4. NGINX Controller vulnerability (2020)

ใน NGINX Controller versions ก่อน 3.2.0 โจมตีที่มี network access ไป Controller API สามารถสร้าง unprivileged user accounts ได้ Users ที่สร้างขึ้นสามารถ upload license ใหม่เข้า system แต่ไม่สามารถ view หรือ modify components อื่นๆ ของ system ได้ หมายความว่า โจมตีสามารถ exploit vulnerability นี้สร้าง user accounts สร้าง denial of service (DoS) scenario บน NGINX Controller

เพื่อ mitigate vulnerability นี้ คุณสามารถ update ไป newer version หรือ restrict network access ไป NGINX Controller API port (TCP 443) โดย config NGINX Controller's host firewall software หรือ external packet filtering device ให้ allow only trusted networks เข้าถึง NGINX Controller API

5. PHP Remote Code Execution Vulnerability (2020)

หนึ่งใน NGINX vulnerabilities ล่าสุดคือ certain versions ของ PHP 7 ที่รันบน NGINX ด้วย php-fpm enabled มีช่องโหว่ remote code execution ช่องโหว่นี้หากไม่ mitigate สามารถนำไปสู่ disclosure of sensitive information, addition หรือ modification of data, หรือ Denial of Service (DoS) attacks

เพื่อ mitigate vulnerability นี้ ให้ update ไป PHP version ที่ไม่ vulnerable ทันที

ไม่ใช้ NGINX? อ่านบล็อกและวิดีโอของเราเกี่ยว critical Apache vulnerabilities

เกี่ยวกับ Astra Pentest

Astra Pentest เป็น essential network และ application security suite ที่ช่วยป้องกันการแฮกจาก vulnerability exploitation โดยแฮกเกอร์ Solution bundled กับ automated vulnerability scanner, vulnerability management และ penetration testing service

หวังว่าบทความนี้ช่วย mitigate vulnerabilities และ security issues ใน web server ของคุณ! อย่างไรก็ตาม เพื่อให้ website/web app ปลอดภัยสมบูรณ์ คุณต้อง secure applications ที่ติดตั้งบนเซิร์ฟเวอร์ และ CMS ที่ใช้ด้วย ช่องโหว่ในเหล่านี้อาจนำไปสู่ compromise ของ web server! ดูบทความของเราเกี่ยวกับ securing WordPress, Magento, Joomla, PrestaShop, และ OpenCart