CentOS 7 SSL Medium Strength Cipher Suites Supported (SWEET32)

ข้อความข้างต้นจะเกิดขึ้นหลังใช้ tenable nessus va scan โดย solution บอกไว้สั้นๆ ว่า “Reconfigure the affected application if possible to avoid use of medium strength ciphers.” ปัดโธ่วว เป็นยาขมของ OS เก่าทันที

การแก้ไขปัญหาที่เกิดจาก SSL Medium Strength Cipher Suites Supported (SWEET32) บนระบบ CentOS 7 ที่ติดตั้ง VestaCP นั้น จะเกี่ยวข้องกับการปิดการใช้งาน Cipher Suites ที่มีความแข็งแกร่งปานกลาง เช่น 3DES (Triple DES) ซึ่งเป็นการเข้ารหัสที่ใช้ความยาวคีย์ 168 บิต โดยสามารถทำตามขั้นตอนดังนี้

คำเตือน: ควรสำรองข้อมูล ไฟล์ที่แก้ไข หรือทำ snapshot ไว้ก่อนเปลี่ยนแปลงการตั้งค่า

ขั้นตอนการแก้ไข

1. เปิดไฟล์การตั้งค่า Apache SSL

เปิดไฟล์การตั้งค่าของ Apache เพื่อแก้ไขการใช้งาน Cipher Suites

sudo nano /etc/httpd/conf.d/ssl.conf

หรือถ้าไฟล์การตั้งค่าของ Apache อยู่ในที่อื่นให้เปิดไฟล์ที่เกี่ยวข้องกับ SSL (เช่น /etc/httpd/conf.d/ssl.conf หรือ /etc/apache2/sites-available/default-ssl.conf ขึ้นอยู่กับการตั้งค่าในระบบของคุณ)

2. แก้ไขค่า SSLCipherSuite

ในไฟล์การตั้งค่า ssl.conf ให้ค้นหาบรรทัดที่ระบุ SSLCipherSuite ซึ่งอาจมีลักษณะดังนี้

SSLCipherSuite HIGH:!aNULL:!MD5:!3DES

ให้แก้ไขค่าของ SSLCipherSuite เพื่อปิดการใช้งานการเข้ารหัสที่ไม่ปลอดภัย เช่น 3DES โดยเพิ่ม !3DES เข้าไป ซึ่งจะทำให้ SSL/TLS ใช้เฉพาะ cipher ที่แข็งแกร่งกว่า (ใช้การเข้ารหัสที่มีคีย์ขนาดใหญ่กว่า 112-bit) ตัวอย่างการตั้งค่า:

SSLCipherSuite HIGH:!aNULL:!MD5:!3DES:!RC4

การตั้งค่านี้จะ

  • เปิดใช้งานเฉพาะ Cipher Suites ที่มีความแข็งแกร่งสูง
  • ปิดใช้งานการเข้ารหัสที่อ่อนแอ (เช่น MD5, 3DES และ RC4)

3. ปิดใช้งาน SSLv3 และ TLSv1.0, TLSv1.1

การตั้งค่าเพื่อปิดการใช้งานโปรโตคอลที่ไม่ปลอดภัย (SSLv3, TLSv1.0, TLSv1.1) และใช้เฉพาะ TLSv1.2 และ TLSv1.3:

ค้นหาบรรทัดที่ระบุ SSLProtocol ในไฟล์การตั้งค่า ssl.conf และทำการแก้ไขเป็นดังนี้

SSLProtocol TLSv1.2 TLSv1.3

การตั้งค่านี้จะทำให้ Apache ใช้แค่ TLS 1.2 และ TLS 1.3 เท่านั้น ซึ่งเป็นเวอร์ชันที่ปลอดภัยกว่าการใช้งาน SSLv3 และ TLSv1.0, TLSv1.1

4. บันทึกและออกจากไฟล์การตั้งค่า

หลังจากที่ทำการแก้ไขไฟล์การตั้งค่าทั้งหมดแล้ว ให้บันทึกการเปลี่ยนแปลงและออกจากโปรแกรมแก้ไข (ถ้าใช้ nano ให้กด Ctrl + X จากนั้นกด Y เพื่อบันทึกการเปลี่ยนแปลง และกด Enter เพื่อยืนยันการบันทึก)

5. รีสตาร์ท Apache

หลังจากทำการแก้ไขไฟล์การตั้งค่าแล้ว ให้รีสตาร์ทบริการ Apache เพื่อให้การตั้งค่าใหม่มีผล:

sudo systemctl restart httpd

6. ตรวจสอบผลการเปลี่ยนแปลง

ใช้ nessus scan ซ้ำอีกรอบ หรือแบบง่ายใช้คำสั่ง openssl เพื่อตรวจสอบว่า Cipher Suites ที่ไม่ได้ใช้งานเช่น 3DES ถูกปิดใช้งานแล้วหรือไม่

openssl s_client -connect your-server.com:443 -cipher 3DES

ถ้าการตั้งค่าถูกต้อง ผลลัพธ์จะไม่สามารถเชื่อมต่อด้วย 3DES ได้

นอกจากนี้ คุณยังสามารถใช้เครื่องมือเช่น Qualys SSL Labs หรือ NSS Labs เพื่อทำการตรวจสอบว่าเว็บไซต์ของคุณมีการตั้งค่า SSL/TLS ที่ปลอดภัยหรือไม่ โดยจะให้คะแนนในด้านความปลอดภัยของการตั้งค่าระบบ SSL/TLS ของคุณ

Ref: https://www.tenable.com/plugins/nessus/42873

สรุป

การปิดใช้งาน Medium Strength Cipher Suites เช่น 3DES จะช่วยป้องกันไม่ให้เกิดปัญหาด้านความปลอดภัยที่อาจทำให้ผู้โจมตีสามารถแฮ็กการเชื่อมต่อ SSL/TLS ได้ง่ายขึ้น โดยการตั้งค่าข้างต้นจะช่วยให้เว็บไซต์ของคุณปลอดภัยจากช่องโหว่ SWEET32