วิธีการผ่าน DINA – Vulnhub
กลับมาอีกครั้งหลังจากที่ไม่ได้เขียนมานานเกี่ยวกับการทำ lab hack อย่างในคราวนี้ก็คือ Virtual Machine จาก Vulnhub.com ในชื่อว่า DINA สามารถ download ได้จาก link นี้ครับ
1. เริ่มต้นด้วยการหา IP เป้าหมายก่อน โดยใช้ nmap
1 |
nmap -sn 192.168.56.0/24 |
2. Scan port เครื่องเป้าหมาย ซึ่งในที่นี้คือ 192.168.56.102
พบ port 80 (HTTP) นั่นเอง
3. เมื่อเข้าไปยังเว็บดังกล่าวก็เจอหน้าตาตามภาพ
4. เมื่อกดปุ่มที่ Submit Query กลับกลายเป็นไปที่ path ange1 แล้วดันไม่มีอะไรเลยซะงั้น
5. เข้าไปหาข้อมูลใน robots.txt พบ path น่าสนใจหลาย path
6. พอเข้าไปใน path nothing แล้ว view source ดูก็ได้ข้อมูลที่สำคัญมานั่นคือ password list นั่นเอง
7. ใช้ nikto scan พบ path /secure
8. เข้าไปยัง /secure แล้ว download backup.zip มา
9. พอจะ unzip backup.zip ก็พบว่าให้ใส่ password ก็เลยลอง password จากข้อ 6 ซึ่ง password ที่ถูกคือ freedom แล้วได้ไฟล์ backup-cred.mp3 มา
10. เข้าไปยัง path /SecreTSMSgatwayLogin แล้วเจอหน้า login
11. เอา password จากข้อ 6 มาใช้อีกครั้ง (user: touhid, password: diana)
12. เข้าไปที่ส่วน import Phonebook พบว่าสามารถ upload csv ไฟล์ได้
13. ทดสอบ inject php code เข้าไปใน csv
ปรากฏว่าอ้าวววว inject php ได้
14. สร้าง php backdoor ด้วย msfvenom แล้วสร้าง listener รอรับ connection
15. inject php เข้าไปใน csv แล้ว upload ดู ปรากฎว่าไม่เวิร์ค ก็เลยหันกลับไปทำ basic อีกครั้ง
มาถึงจุดนี้เราก็สามารถจะทำ Remote Code Execution ผ่าน User-Agent ได้แล้วนั่นเอง
16. สิ่งที่เราทำต่อก็คือการได้ shell จริงๆ ก็เลยทำการสร้าง elf ไฟล์(binary file ใน linux) จากนั้นก็สร้าง web server ขึ้นมาด้วย python
17. สั่งให้ download และ execute file binary ผ่าน User-Agent เหมือนเดิม
ได้ shell แล้ว
18. ทำ interactive shell
19. ตรวจสอบสิทธิ์ของ sudo
พบว่าสามารถใช้งาน perl ได้ด้วยสิทธิ์ root
20. รัน /bin/bash ผ่าน perl
เข้า root home directory แล้วไปพบ flag