# 靶场搭建

下载后直接导入,由于靶机固定了 IP 地址,要么修改靶机的配置,要么修改自己的配置

我这边将靶机网卡调整成仅主机模式,将 kali 添加一张仅主机的网卡,修改 kali 的网卡信息: vim /etc/network/interfaces

添加一下内容:

注意修改网卡的名称 eth2

auto eth2
iface eth2 inet static
#配置eth2使用默认的静态地址
address 10.10.10.101
#配置eth2的IP地址
netmask 255.255.255.0
#配置eth2的子网掩码
gateway 10.10.10.15
#配置当前主机的默认网关

然后重启 kali 就能 ping 通了

目标 IP: 10.10.10.100
kali: 10.10.10.101

# 渗透过程

# 信息初收集

22/tcp open  ssh
80/tcp open  http

22 和 80,估计是做 web 安全

# web 页面渗透

有一个注册和登录,看上去像是二次注入,先看登陆口有没有注入

POST 方法,发现 email 参数有注入,直接脱裤

# sql 注入

尝试读取内容,发现账号密码,密码 hash 解密,得到一组用户: [email protected]/killerbeesareflying

尝试写入 shell.php: sqlmap -u "http://10.10.10.100/login.php" --data="email=123%40qq.com&pass=123&submit=Login&submitted=TRUE" --batch --file-write shell.php --file-dest /var/www/shell.php

写入路径需要多次尝试,找到网站目录文件夹

发现成功写入,我们开启监听,访问一下

发现执行了但是没弹,可能存在出口限制,将端口调整到 443,发现弹了,拿到一个低级 shell

# 提权

  • Ubuntu 11.04
  • Linux web 2.6.38-8-server x84_64
  • dan 用户
  • apache 日志: /var/log/apache2
  • mysql 有高权限
  • 开发工具齐全
  • mysql 账号密码在 mysqli_connect.php 中: root/goodday

查找了提权漏洞,但是没有执行权限,那就连接数据库,尝试用数据库提权

登录失败,密码不对。不应该啊,他一定是连到数据库上的,再找找。

var 目录下找到了密码: root@ISIntS

这次能登陆了: mysql -h localhost -u root -p root@ISIntS

这密码怕不是 root 密码?

直接 ssh 连接,发现直接 root 权限拿下!

# 小结

  1. web 页面登录存在注入点,注入后写入 shell 文件,反弹 shell
  2. 查看本地运行服务和文件,发现高权限 mysql 和 mysql 账号密码
  3. 验证密码能够登录
  4. 本来想用数据库提权,需要 UDF 提权要上传文件,我想用 metasploit 进行提权,所以想要做 ssh 隧道转发,这样方便一点,于是尝试登录账号
  5. 密码是不是通用的?于是 ssh 了一下 root 账号,发现登陆了上去,至此拿下 root 权限