CTF-web-WP-攻防世界-1

1、view_source:打开开发者工具F12就能看到flag

2、robots

(1)、使用目录扫描工具

  • 工具:dirsearch
  • 命令:python dirsearch.py -u http://61.147.171.105:55644/  -e *

(2)、看到下面有robots.txt文件,在URL后面输入,查看。

(3)、发现有个关于flag的文件,输入查看,得到flag

3、backup

(1)、访问网站提示备份文件后缀

  • 后缀:.bak

(2)、访问index.php.bak会自动下载一个备份文件,使用记事本打开就可以看到flag

4、cookie

(1)、访问网站提示cookie,查看cookie值

(2)、发现是php文件,访问,提示看响应包

(3)、查看响应包,获得flag

5、disabled_button

(1)、题目提示,F12查看前端代码

(2)、发现有个属性,使提交按钮不能点,删除这个属性

(3)、点击按钮,获取flag

6、get_post

(1)、访问网站按照提示提交get请求

(2)、再按照提示post请求(可使用hackbar插件提交post请求)

(3)、获取flag

7、weak auth

(1)、访问网站,发现是登录页面。随便输入,点击登录。F12发现有个提示,需要字典

(2)、使用brup暴力破解,爆出登录名和密码

(3)、登录,得到flag

8、simple_php

(1)、访问网站有个提示,需要传入两个参数

(2)、第一个参数需要$a==0和$a为真同时成立,才能输出flag1

  • $a为真成立:a需要为非空数组或非空字符串或非零数字
  • 逻辑比较符==:仅比较值,字符串或数组或自动转化为数字
  • 此题仅要保证第一个字符不是数字即可满足条件
  • PHP 类型比较 | 菜鸟教程 (runoob.com)

(3)、第二个参数$b需要满足不是纯数字且大于1234

  • is_numeric():检测变量是否为数字或数字字符串

(4)、两个参数依次输入,得到flag

9、Training-www-Robots

(1)、访问网站,发现有一段英文,翻译一下,有提示,访问robots.txt

(2)、发现有fl0g.txt文件,查看,得到flag

10、command_execution

(1)、看题目提示,应该是命令执行漏洞,可以尝试一下

(2)、使用连接符+执行命令,在各个文件里找类似flag的文件

11、xff_referer

(1)、题目提示,本题应该是伪造xff和referer

  • X-Forward-For:HTTP请求头字段,用于服务器获取发送请求包的客户端的真实IP
  • Referer:HTTP请求头字段,用来标识请求来源的URL

(2)、访问网站发现提示ip必须是123.123.123.123。

  • 使用brup抓包,添加X-Forward-For:123.123.123.123,发送
  • 也可使用hackbar插件添加更改

(3)、发送之后还需要来自https://www.google.com

  • 使用brup抓包,更改Referer:https://www.google.com,发送,得到flag
  • 也可使用hackbar插件更改

12、baby_web

(1)、题目提示,初始页面

默认页面:index.php、index.html、index.jsp、index.asp等

(2)、访问index.php,发现直接跳转到1.php文件

(3)、使用brup抓包,查看历史URL,在响应包里可以看到flag

13、PHP2

(1)、提示:你能认证这个网站吗,和题目是PHP2

  • 网站主要组成:前端、后端、中间件、地址等
  • php是服务器语言,当用户访问网站时,php脚本会执行,并进行显示

(2)、找php脚本文件,尝试index.php。发现不行,尝试访问脚本源代码

(3)、访问index.phps,发现代码显示不全,右键查看源代码。

(4)、代码审计,对admin进行两次URL编码

  • 代码大体意思:传入的id值若等于admin,就输出not allowed。若不等于admin,就往下执行。然后经过URL解码。最后又做判断,传入的值等于admin就输出key。
  • urldecode函数:解码通过URL编码的字符串

(5)、get传值,得到flag

14、ics-6

(1)、访问网站,没有提示,将每个都点一遍,发现报表中心有跳转页面。

(2)、在报表中心,找特殊点。URL上有id传参,可以尝试

(3)、使用brup暴力破解,尝试到1000或2000或3000进行爆破。按length排序,查看响应包,得到flag

15、unserialize3

(1)、网站上有代码,进行代码审计

  • 代码大致意思:xctf类定义了flag属性,和__wakeup方法
  • __wakeup() 是PHP中的一个魔术方法,当使用 unserialize() 函数对对象进行反序列化时自动调用。

(2)、当被反序列化的字符串对应的属性个数发生改变会使反序列化失效,使__wakeup()函数不能执行

  • URL中输入:?code=O:4:"xctf":2:{s:4:"flag";s:3:"111";}
  • 参考资料:攻防世界unserialize3题解

16、php_rce

(1)、访问网站,显示thinkphp5.0的图标,有可能是thinkphp框架漏洞

(2)、使用工具测试与利用

(3)、查看文件,得到flag

17、Web_php_include

(1)、看标题和代码,知道这是文件包含

  • strstr():被搜索字符串在指定字符串中是否存在,如果是,返回字符串。不区分大小写
  • str_replace():以其他字符替换字符串中的一些字符。区分大小写

(2)、参考链接:文件包含与PHP伪协议 - beiwo - 博客园 (cnblogs.com)

(3)、利用伪协议尝试获取文件

18、upload1

(1)、根据提示,知道是文件上传漏洞

(2)、发现是前端JS绕过,禁止前端JS

(3)、上传一句话木马,使用工具连接

(4)、查找文件,得到flag

  • flag文件:根目录下,home目录下,上级目录下等

19、warmup

(1)、F12发现一个php文件,访问,发现一段代码

  • 代码大致意思:检测用户请求的文件是否在白名单之内,如果在则包含该文件并输出,否则输出一张图片
  • 代码中还提到另一个php文件,访问看看

(2)、访问hiint.php文件,有个提示

(3)、需要绕过过滤才能访问,文件包含+截断

  • 参考链接:攻防世界 warmup 解题详析

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/17596.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

docker部署vue router history HTML5 模式

构建容器 nginx 配置 default.conf server {listen 80;server_name localhost;#charset koi8-r;access_log /var/log/nginx/host.access.log main;error_log /var/log/nginx/error.log error;location / {root /usr/share/nginx/html;index index.html index.h…

INDICATOR 再c嵌入sql环境中的作用

在C语言嵌入SQL(Embedded SQL)的环境中,INDICATOR关键字用于处理数据库中的NULL值,以及管理与之相关联的宿主变量(host variables)。具体来说,它的作用主要体现在以下几个方面: NUL…

LeetCode题练习与总结:有序链表转换二叉搜索树--109

一、题目描述 给定一个单链表的头节点 head ,其中的元素 按升序排序 ,将其转换为平衡二叉搜索树。 示例 1: 输入: head [-10,-3,0,5,9] 输出: [0,-3,9,-10,null,5] 解释: 一个可能的答案是[0,-3,9,-10,null,5],它表…

Docker安装Redis的详细教程

以下是一个使用Docker安装Redis的详细教程 1. 拉取Redis镜像 运行以下命令来从Docker Hub上拉取最新的Redis镜像: docker pull redis:latest如果您需要特定版本的Redis,可以指定版本号: docker pull redis:6.2.72. 运行Redis容器 以下命…

JS【详解】Set 集合 (含 Set 集合和 Array 数组的区别,Set 的 API,Set 与 Array 的性能对比,Set 的应用场景)

Set 简介 ES6 新增了数据结构 Set,与数组类似,特征如下: 无序元素不能重复 Set 集合和 Array 数组的区别 Set 元素不能重复,Array 元素可以重复Set 是无序结构,操作很快,Array 是有序结构,操…

分享个自用的 Nginx 加强 WordPress 防护的规则

Nginx WordPress 的组合是目前非常普及的组合了,我们完全可以借助 Nginx 规则来加强 WordPress 的防护,提高 WordPress 的安全性,今天明月就给大家分享个自用的 Nginx 针对 WordPress 的防护规则,部分规则大家只需要根据自己的需要…

基于vuestic-ui实战教程 - 页面篇

1. 简介 前面介绍了基本的内容比如如何获取动态数据,下面就到登录进来后的页面实现了,相信各位读者或多或少都有 element-uijs 的实战经历,那么 vuestic-uits 实现的页面又该如何写呢?带着疑问开启今天的学习(声明由于…

MySQL之性能剖析(一)

MySQL之架构设计与历史 转换表的引擎 1.ALTER TABLE 将表从一个引擎修改为另一个引擎最简单的办法是使用ALTER TABLE语句。下面的语句将mytable的引擎修改为InnoDB: mysql>ALTER TABLE mytable ENGINE InnoDB;上述语法可以使用任何存储引擎。但有一个问题:需要执行很长时…

Linux系统编程学习笔记

1 前言 1.1 环境 平台:uabntu20.04 工具:vim,gcc,make 1.2 GCC Linux系统下的GCC(GNU Compiler Collection)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。gcc是可以在多种硬体平台上编译出可执…

java设计模式介绍和使用场景

设计模式是软件开发中常用的解决问题的通用方法。每种设计模式都有其特定的使用场景,了解这些场景可以帮助我们更好地选择合适的设计模式来解决问题。下面是一些常见的设计模式及其使用场景: 单例模式 (Singleton Pattern): 使用场景:当一个类…

BIGO前端CICD平台

本文首发于:https://github.com/bigo-frontend/blog/ 欢迎关注、转载。 我是谁 BIGO前端CICD平台,是一个服务于前端团队的全研发周期管理平台,已经是我们团队日常都要使用的工具了。 该平台实现了一键创建项目、发布编排、新建迭代、checkl…

uniapp 使用vuex 在app上能获取到state,小程序获取不到

1. 在根目录下新建store目录, 在store目录下创建index.js定义状态值import Vue from vue; import Vuex from Vuex; import Vuex from vuex; Vue.use(Vuex);const store new Vuex.Store({ state: { login: false, token: , avatarUrl: , userName: }, mutations: { lo…

JavaWeb Servelt原理

Servlet简介: Servlet的主要工作:处理客户端请求,生成动态响应,通常用于扩展基于HTTP协议的Web服务器。 Servlet技术是Java EE规范的组成部分,代表了服务器端的Java程序,主要负责处理来自客户端的Web请求,…

国内信创web中间件生态

国内信创web中间件生态 东方通 官网https://www.tongtech.com/pctype/25.html 宝蓝德 官网https://www.bessystem.com/product/0ad9b8c4d6af462b8d15723a5f25a87d/info?p101 金蝶天燕 官网 https://www.apusic.com/list-117.html 中创 官网http://www.inforbus.com…

数据库数据恢复—空间不足导致sqlserver数据库连接失效的数据恢复案例

数据库数据恢复环境: 某品牌r520服务器,服务器中有7块SAS硬盘,这7块硬盘组建了一组2盘raid1阵列和一组5盘raid5阵列,raid1阵列存储空间安装操作系统,raid5阵列存储空间存放数据。服务器上部署sql server数据库&#xf…

野外作战武器操作3D模拟实操仿真训练以便老兵能适应不同的训练需求

强国必须强军,我国在军事方面的投入持续加大,自然在军事武器培训方面不容忽视,在军事领域,3D模拟展示不仅提升了军事训练的效率,还为我们提供了更加直观、真实的武器体验。 首先,3D军事武器模拟展示能够提供…

Nacos 2.x 系列【6】持久化

文章目录 1. 前言2. Derby3. Mysql3.1 初始化脚本3.2 服务端配置3.3 验证 4. 数据源插件 1. 前言 Nacos中的用户、租户、服务配置等信息,需要使用关系型数据库进行存储,在实际开发中,可能还会面临各种数据库适配问题。 2. Derby Derby是Ap…

人工智能在脉搏分析中的应用

人工智能在脉搏分析中的应用正在逐步深化,其凭借强大的数据处理能力和模式识别技术,为脉搏波信号的处理和分析带来了革命性的变化。以下是人工智能在脉搏分析中的几个主要应用: 脉搏波信号的采集与处理: 脉搏波信号作为生物医学信…

【并发小知识】

计算机五大组成部分 控制器 运算器 存储器 输入设备 输出设备 计算机的核心真正干活的是CPU(控制器运算器中央处理器) 程序要想计算机运行,它的代码必须要先由硬盘读到内存,之后cpu取指再执行 操作系统发展史 穿孔卡片处理…

学习java第七十九天

AOP有两种实现方式:静态代理和动态代理。 静态代理 静态代理:代理类在编译阶段生成,在编译阶段将通知织入Java字节码中,也称编译时增强。AspectJ使用的是静态代理。 缺点:代理对象需要与目标对象实现一样的接口&#x…