• HTB-Late


    信息收集

    nmap
    在这里插入图片描述
    dirbuster
    在这里插入图片描述
    gobuster
    在这里插入图片描述
    收集的信息有点少啊,是不是漏了什么。

    在这里插入图片描述
    有一个在线处理图片的网页,但是访问不了。
    在这里插入图片描述
    手动添加dns以后即可访问
    在这里插入图片描述

    看描述是一个吧图片里的文字转化为文本形式的功能,上传一个玩玩。
    在这里插入图片描述
    感觉已经很明显了需要上传shel,不过先要找到上传文件的位置。
    在这里插入图片描述

    等等……Flask?该不会存在SSTI吧
    在这里插入图片描述

    开机

    首先在目录尝试SSTI
    在这里插入图片描述
    想试试直接在图片里面弄个SSTI文本上传会怎么样,结果还被发现了。
    在这里插入图片描述
    试试混着一堆字母,目前成功。
    在这里插入图片描述
    那么问题来了,接下来怎么构造一个SSTI呢,有一个小的方法就是面对搜索引擎学习。

    在这里插入图片描述
    在这里插入图片描述
    因为flask中默认的模板引擎是Jinja2,还是有点多,我在多个区域随机选一个测试。
    在这里插入图片描述

    其中经过简单测试发现对部分字符进行了检查。
    在这里插入图片描述
    貌似对某些字符还会存在误差判断
    在这里插入图片描述
    我让报错位置弄三个"_"它识别出来三个"_",我弄两个“_”,它又只识别出来一个,估计是字体问题,没办法只能继续测试 。
    在这里插入图片描述

    想办法配合图片识别这花的时间比较多,最终测试这个可以。
    在这里插入图片描述

    在这里插入图片描述

    不过这个识别真的需要耐心慢慢来。
    在这里插入图片描述

    原打算用python socket反shell,然而……
    原文件是这样
    在这里插入图片描述
    在这里插入图片描述

    并且目标也收到了
    在这里插入图片描述
    然而我去看目标收到的文件内容,它把 "给我转化为了unicode码 ",#后面直接被注释没了。好吧我真的很感谢它。

    在这里插入图片描述
    换方法,要么用短小精悍的反弹语句,要么还可以找到私钥用ssh。因为前面得知了用户svc_acc
    先用ssh吧,找到用户文件里的.ssh看看有没有用户的私钥。
    在这里插入图片描述
    在这里插入图片描述
    找到私钥,把它打出来。

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    提权

    首先不知道密码 sudo -l也就看不了,没有sudoers的权限,history也只有自己的。
    在这里插入图片描述
    再找找这个与这个用户有关的所有文件,-type f 搜索普通文件
    先用find / -type f -user svc_acc > svc_acc_file把有关用户的名单弄进去,再用grep -v "Permission denied" svc_acc_file过滤掉没有权限访问的文件。
    在一堆滚动的字符中看到了/usr/local/sbin/ssh-alert.sh
    在这里插入图片描述
    如果嫌麻烦可以用LinEnum.sh,但是我的LinEnum.sh貌似没有找到那个文件。
    在这里插入图片描述
    简单分析一下,就是会给root@late.htb发送ssh相关的信息,

    可以看看此用户的权限有读和执行但是没有写入权。在这里插入图片描述
    再来认识个命令lsattr用来显示文档的隐藏属性,如果用chattr给了隐藏属性就可以用lsattr查看。
    在这里插入图片描述
    有个有关lsattr的网站可以去看看,里面也有细致的参数说明那些。
    在这里插入图片描述
    可以看到有a和e,我们主要关注a,简单来说就是可以附加,也就是说我们可以在那个文件后面附加一段代码。
    在这里插入图片描述
    所以我之前复制了python socket的反弹代码不想浪费了,正好拿来用了,当然可以用/dev/tcp连接。
    在这里插入图片描述
    然后记住这个shell.pyssh-alert.sh,我的反弹脚本在
    在这里插入图片描述
    而要附加的文件在

    在这里插入图片描述
    所以如果要让sh运行shell.py就需要准确位置../../../home/svc_acc/shell.py
    在这里插入图片描述
    因为这个sh可能会在ssh启动的时候才会执行,所以先弄个进程循环,再用ssh登录看看是否如此,能看到使用ssh登陆的时候会自动执行sh
    在这里插入图片描述

    先退出ssh,开个nc,再连接ssh,动作尽量要快点,估计又有时间任务。
    在这里插入图片描述

    在这里插入图片描述

    root后去查看crontab
    在这里插入图片描述
    每分钟都会执行/root/scripts/cron.sh这个文件。
    在这里插入图片描述

  • 相关阅读:
    【算法刷题】——美丽整数的最小增量
    Linux系统中驱动框架基本概述
    『Halcon与C#混合编程』001_环境搭建
    Linux:用户态与内核态
    使用Laravel框架创建项目
    数据库设计详细教程上篇(数据库设计流程)
    em,rem,px,rpx的区别与使用
    热门Java开发工具IDEA入门指南——离线环境下的注意事项
    【python】多线程、多进程性能比较
    Debian11.5安装Podman并以多容器方式搭建LEMP环境
  • 原文地址:https://blog.csdn.net/qq_37370714/article/details/126267453