ไคลเอนต์ SSH มีช่องโหว่ถูกเซิร์ฟเวอร์ส่งไฟล์ใดๆ มาทับไฟล์บนเครื่องได้: OpenSSH,PuTTY, WinSCP กระทบหมด

by lew
15 January 2019 - 03:49

Harry Sintonen นักวิจัยความปลอดภัยจาก F-Secure รายงานถึงช่องโหว่ของไคลเอนต์ SSH เมื่อทำงานในโหมดส่งไฟล์ (SCP) ว่าไคลเอนต์หลักๆ ล้วนมีช่องโหว่ทำให้เซิร์ฟเวอร์ที่มุ่งร้ายสามารถส่งไฟล์ใดๆ เข้ามาทับไฟล์บนเครื่องได้

ช่องโหว่แบ่งออกเป็น 4 กรณี

  1. ไคลเอนต์ตรวจสอบชื่อโฟลเดอร์ไม่ครบถ้วน: เปิดให้เซิร์ฟเวอร์ส่งชื่อโฟลเดอร์เป็นจุด (".") ทำให้เปลี่ยนสิทธิ์การใช้งานโฟลเดอร์ปัจจุบันได้
  2. เซิร์ฟเวอร์หลอกชื่อไฟล์: ทำให้เซิร์ฟเวอร์สามารถส่งชื่อไฟล์ใดๆ เข้ามาทับไฟล์บนเครื่องได้
  3. เซิร์ฟเวอร์หลอกชื่อไฟล์ที่ส่ง: โดยอาศัยช่องโหว่การ encode ทำให้ไคลเอนต์แสดงชื่อไฟล์ให้ผู้ใช้เห็นไม่ตรงกับที่ส่งมาจริงๆ
  4. เซิร์เวอร์แสดงข้อความหลอกผู้ใช้: โดยอาศัยการส่งข้อความผ่าน stderr ทำให้เซิร์ฟเวอร์หลอกผู้ใช้ด้วยการแสดงรายชื่อไฟล์ที่ส่งมาไม่ตรงกับไฟล์ที่ส่งจริง

ไคลเอนต์ชื่อดัง เช่น OpenSSH, PuTTY, และ WinSCP ล้วนได้รับผลกระทบแต่ไม่เท่ากัน เช่น OpenSSH นั้นได้รับผลกระทบทั้ง 4 รูปแบบ ตอนนี้แก้ไขแล้วในโค้ดล่าสุดแต่ยังไม่ออกเวอร์ชั่นใหม่ออกมา

โดยทั่วไปแล้วเราคงไม่ได้รับไฟล์จากเซิร์ฟเวอร์ที่ไม่น่าเชื่อถือกันบ่อยนักทำให้ผลกระทบค่อนข้างจำกัด ส่วนแนวทางการป้องกันเพิ่มเติมทาง Sintonen ระบุว่าอาจไปใช้ sftp แทน scp

ที่มา - The Register

Blognone Jobs Premium