• pwnlabinit靶机测试笔记


    Vulnhub-pwnlab-init靶机地址

    Netdiscover 找到靶机地址,nmap扫描

    dirserach扫描先

    访问链接,注意到有=号,page=login可能对应着包含login.php文件

    尝试包含其他文件,注意这儿文件没有跟.php 说明代码中有处理,所以一般我们包含其他文件如/etc/passwd或者其他格式文件是显示不出来的。 需要使用伪协议来操作
    文件包含可以参考:https://github.com/Go0s/LFIboomCTF

    先尝试读取login.php
    /?page=php://filter/read=convert.base64-encode/resource=login

    解码后得

    可以看到,数据库账户密码在config文件中,同时这儿采用了预编译,所以注入不了
    重新包含config文件后可得

    尝试使用密码登陆ssh和mysql
    发现22没端口没开 遍历所有端口看是不是开在了大端口

    仍未发现 好吧 尝试mysql

    找到了用户密码,登陆后自动跳转到了上传页面,可以传马了

    传php马会报错格式限制,

    查看upload文件

    白名单验证后缀,保存文件时人为添加后缀,绕过不了。。
    接着回到dirsearch截图,查看到还有index.php

    Index.php包含了一个文件,而这个文件我们可控
    先上传一个图片马

    接着在cookie处添加lang变量访问index.php,

    Shell来了

    提权:
    看到home下有4个目录,各自权限都是自己 。看到底下三是数据库里显示的那三个

    尝试登陆他们账号 先切换到tty

    python -c '__import__("pty").spawn("/bin/bash")'
    

    kent空的

    kent竟然不对。。

    kane有东西

    msgmike文件是个可执行文件,调用了cat命令,并且存在setuid setgid !

    那么我们可以将cat命令替换成bash,就可以获取msgmike所属的mike权限了

    已经是mike权限了,先将环境恢复
    export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

    来到mike的home目录 ,又来了个msg2root

    执行msg2root后仍然是将输入变输出,但是尝试id后发现输出是会被执行的,但是一直是本地执行

    分析该程序
    前面能看到这个程序把我们的输入写入到messages.txt中,后面猜测红框处是不是一条变量语句,其中先输出我们的输入,后获取messages.txt内容,然后调用system命令执行

    输入1;bash -p ,使用分割符绕过并执行命令。

    总结:
    考察了文件包含,伪协议,替换原生命令以利用给定条件,逆向盲猜等
    难度简单

  • 相关阅读:
    15 手写数字识别-小数据集
    14 深度学习-卷积
    13-垃圾邮件分类2
    12.朴素贝叶斯-垃圾邮件分类
    11.分类与监督学习,朴素贝叶斯分类算法
    9、主成分分析
    8、特征选择
    大数据应用技术课程实践--选题与实践方案
    手写数字识别-小数据集
    深度学习-卷积
  • 原文地址:https://www.cnblogs.com/zongdeiqianxing/p/13469688.html
Copyright © 2020-2023  润新知