|
ชื่อ : Exploitation of vulnerability in SSH1 CRC-32 compensation
attack detector
ค้นพบเมื่อ : 5 พฤศจิกายน 2544
ชนิด : ช่องโหว่ของโปรแกรม
กล่าวนำ
เนื่องจาก CERT/CC ได้รับรายงานเหตุการณ์ที่ได้รับผลกระทบจากการโจมตีช่องโหว่ของ
SSH1 ผ่านทางจุดที่เรียกว่า CRC-32 compensation attack เป็นจำนวนมาก
รายละเอียดเพิ่มเติมของช่องโหว่นี้สามารถอ่านได้ที่เอกสาร VU#945216
คำอธิบายเพิ่มเติม
เมื่อระบบโดนโจมตีจากผู้บุกรุก ล็อกจะมีรูปร่างคล้ายลักษณะด้านล่างนี้
hostname sshd[xxx]: Disconnecting:
Corrupted check bytes on input.
hostname sshd[xxx]: Disconnecting: crc32 compensation attack:
network attack detected
hostname sshd[xxx]: Disconnecting: crc32 compensation attack:
network attack detected
เนื่องจากการโจมตีนี้เป็นการโจมตีแบบ brute force
ดังนั้นในข้อมูลล็อก (system log) อาจจะมีล็อกปรากฏคล้ายด้านบนเป็นจำนวนพอสมควร
ผู้ดูแลระบบที่ใช้ Swatch ในการตรวจสอบล็อกสามารถเพิ่ม trigger โดยอาศัยข้อมูลล็อกด้านบนได้
(อ่านรายละเอียดเพิ่มเติมของ
Swatch)
ในกรณีที่ที่ผู้บุกรุกสามารถบุกรุกเข้าไปในระบบได้สำเร็จ
ผู้บุกรุกจะ
- ติดตั้ง rootkit ซึ่งช่วยในการซ่อนตัวจากการตรวจจับ
และปกปิดร่องรอยการบุกรุก
- ติดตั้ง SSH ที่เป็นม้าโทรจัน (ผู้บุกรุกปรับแต่ง
source code ของ SSH)
- ติดตั้งเครื่องมือที่ใช้ในการ scan เครื่องอื่นๆ
ว่ามีช่องโหว่เดียวกันนี้หรือไม่ โดยโปรแกรมดังกล่าวนี้จะอาศัยข้อมูลเวอร์ชันจาก
banner ที่ปรากฏใน SSHD service
ผลกระทบที่ได้รับ
ผู้บุกรุกสามารถรัน code โดยใช้สิทธิของ SSH deamon ซึ่งก็คือ root
นั่นเอง
ระบบที่ได้รับผลกระทบ
| Vendor |
Status |
Date Updated |
| SSH Communications Security |
Vulnerable |
6-Nov-2001 |
| OpenSSH |
Vulnerable |
2-Nov-2001 |
| FreeBSD |
Vulnerable |
2-Nov-2001 |
| CORE SDI |
Vulnerable |
6-Nov-2001 |
| Debian |
Vulnerable |
2-Nov-2001 |
| Cisco |
Not Vulnerable |
7-Nov-2001 |
วิธีแก้ปัญหา
- ติดตั้ง patch
- ยกเลิกการสนับสนุน SSHv1 fallback
เนื่องจากช่องโหว่นี้เกิดขึ้นจาก SSHv1 ดังนั้น อาจจะแก้ไขโดยการยกเลิก
SSHv1 แล้วใช้ SSHv2 แทน (เป็นวิธีแก้ปัญหาที่ทำได้อย่างรวดเร็ว)
- ป้องกันการเข้าถึง secure shell service
ก่อนการติดตั้ง patch จาก vendor ท่านสามารถจำกัดการการเข้าใช้งาน
secure shell service ได้ โดยการป้องกันการ access เข้ามาที่ port
22/tcp ที่ gateway ของระบบ แต่เป็นการป้องกันผู้บุกรุกจากภายนอกเท่านั้น
ผู้บุรุกที่อยู่ในเครือข่ายเดียวกันยังสามารถโจมตีช่องโหว่นี้ได้
ดังนั้นจึงควรพิจารณาอย่างรอบคอบ
ในกรณีที่ไม่สามารถป้องกันการเข้าถึงโดยใช้ filter port 22/tcp ได้
ก็สามารถป้องกันโฮสต์ได้ โดยจำกัดการเข้าถึงผ่านทางการตั้งค่าของ
AllowHost ใน SSH configuration file หรืออาจจะใช้ TCP wrapper ในการจำกัดการเข้าถึง
ในกรณีที่ระบบของท่านถูกบุกรุกแล้ว กรุณาอ่าน ขั้นตอนเบื้องต้นในการกู้ระบบจากการบุกรุก
ในระบบ UNIX และ NT
เอกสารอ้างอิง
http://www.cert.org/incident_notes/IN-2001-12.html
http://www.kb.cert.org/vuls/id/945216
http://www.cisco.com/warp/public/707/SSH-multiple-pub.html
|