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

[RoarCTF 2019]Easy Calc1

访问地址,尝试会不会存在sql注入

看情况不是,真是想多了hhh。。。

尝试是否存在xss漏洞

查看源代码,发现calc.php

content的含义

  • $("#content") 是一个jQuery选择器,表示选择页面中id="content"的HTML元素。

  • .val() 方法用于获取该元素的值(用户输入的内容)。

  • content:页面中用户输入计算表达式的文本框的ID,通过$("#content").val()获取其值。

访问calc.php

发现有些符号被过滤,且get传入num才是我们要的目标

构造payload,num输入什么,页面就显示什么

不管是查看源代码还是啥都没给我们任何flag的提示,所以想试试system ls /,魔怔了😂

结果403

改成? num=system('ls'),虽然不是403错误,但应该是被过滤了

看网上解释“在num前加个空格可以绕过waf并且php会把它当成正常的num使用,此时并不是’ num’而是‘num’。”,采用scandir()

scandir():列出 参数目录 中的文件和目录

首先要先扫根目录下的所有文件,chr(47)/的ASCII编码,因为/被过滤了,所以我们用chr(47)绕过

在PHP中,file_get_contents() 函数是一个强大的工具它既可以用于读取本地文件的内容,也可以用于发起 HTTP 请求获取远程资源,/的编码chr(47),1的编码chr(49),a的编码chr(97),g的编码chr(103),php中,它们之间用.连接。输入

? num=var_dump(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)))

相关文章:

  • 怎么免费下载fbx格式模型、和blender格式文件模型,还可以在线编辑修改
  • MySQL的Order by与Group by优化详解!
  • 算法-贪婪算法
  • 【Web前端开发】HTML基础
  • 服务器机架的功能和重要性
  • 【Java学习】枚举(匿名类详解)
  • akshare爬虫限制,pywencai频繁升级个人做量化,稳定数据源和券商的选择
  • 软考(信息系统运行管理员)
  • 介绍一下synchronized锁升级过程
  • 设计模式【cpp实现版本】
  • 不同环境下运行脚本如何解决pythonpath问题
  • 【 Redis | 实战篇 缓存 】
  • 非阻塞式IO-Java NIO
  • tryhackme——Enumerating Active Directory
  • Github 2025-05-10 Rust开源项目日报 Top10
  • Webug4.0通关笔记25- 第30关SSRF
  • 【Android】文件分块上传尝试
  • vue注册用户使用v-model实现数据双向绑定
  • Kotlin 协程 vs RxJava vs 线程池:性能与场景对比
  • Spring boot 简单开发接口
  • ​中国超大规模市场是信心所在——海南自贸港建设一线观察
  • 总导演揭秘十五运会闭幕式:赴一场星辰大海之约
  • 屈晓华履新四川省社科联党组书记,此前担任省国动办主任
  • 代理销售保险存在误导行为,农业银行重庆市分行相关负责人被罚款0.1万元
  • 复旦大学文科杰出教授裘锡圭逝世,享年90岁
  • 吴勇强、高颜已任南京市委常委