sosonp's blog

focus on cybersecurity

0%

vulnhub-kioptrix level4 walkthrough

目标靶机

KIOPTRIX: LEVEL 1.3 (#4)

涉及漏洞

  • SQL注入
  • mysql udf提权
  • dirtycow提权

信息收集

nmap扫描
k4-1.png
k4-2.png
k4-3.png

使用nikto扫描web服务端口
k4-4.png

http目录枚举,发现目录 /john 、 /robert
k4-5.png
k4-6.png
k4-7.png

访问80端口web服务,发现登录页面
k4-8.png
尝试弱口令登陆失败
k4-9.png
password输入admin’,有报错回显,应该存在sql注入
k4-10.png
从上面http目录枚举发现有/john和/robert目录,于是猜测系统存在着两个用户名,在登录页面,用户名使用john,密码使用 ‘ or 1=1 # , 绕过登录,页面直接显示用户名密码
k4-11.png
同样,用户名输入robert,密码注入
k4-12.png

提权

内核漏洞提权

使用用户名john密码MyNameIsJohn登陆ssh成功
k4-13.png
发现是一个十分严格的定制化shell,输了几次不允许的命令会断开连接
k4-14.png
发现可以使用echo命令,利用echo切换到bash shell
k4-15.png
查看系统内核版本,2.6.24-24
k4-16.png
查找内核版本漏洞,dirty cow符合版本
k4-17.png
但目标机器没有gcc
k4-18.png
于是从自己的机器编译后再传过去执行
k4-19.png
k4-20.png
执行dirty提权成功
k4-21.png
获取flag文件
k4-22.png

MySQL udf提权

使用提权辅助脚本linpeas.sh,发现mysql存在udf模块,可以执行函数
k4-23.png
在/var/www/checklogin.php文件中找到mysql登录密码
k4-24.png
登录mysql
k4-25.png
使用sys_exec函数执行命令,对/bin/bash添加suid权限
k4-26.png
使用bash -p提权成功
k4-27.png