CTF-WEB的知识体系
CTF概念
CTF是Capture The Flag的缩写,中文一般译作夺旗赛
CTF起源于1996年DEFCON全球黑客大会
DEFCONCTF是全球技术水平和影响力最高的CTF竞赛
竞赛模式
解题模式:解决网络安全技术挑战(即找到flag),提交后获取相应分值。
攻防赛模式:要求找到其他队伍的薄弱环节进行攻击,同时对自己的靶机环境进行加固防守。
战争分享模式:由参赛队伍相互出题挑战。
竞赛内容
1.WEB:网络攻防
2.Reverse:逆向工程
3.PWN:二进制漏洞
4.Crypto: 密码学
5.Mobile: 移动安全
6.Misc:安全杂项
Burp Suite工具
使用Java编写的一个用于测试网络应用程序安全性的图形化工具。
主要功能
1.拦截、查看或者修改网络请求和响应
2.扫描web应用程序的安全漏洞。
3.自动化攻击web应用
4.对数据编码和解码
Webshell管理工具
蚁剑:网站管理工具,面向于渗透测试安全人员以及网站管理员
冰蝎:通信过程中使用AES加密
哥斯拉:替代工具。
考点1:PHP弱类型
弱类型简单来说就是数据类型可以被忽视的语言,同一变量在不同类型中是不同的值。
CTF比赛中需要掌握
1.理解= =和= = =的区别
2.MD5验证绕过方法
比如下面的admin=0是true 'admin’是一个字符型他和整型0作比较 那么’admin’转化为整形的值是0
"1admin"字符串转化为整型为前面的值1
"admin1"字符串转化为整型为前面的值0

考点2: SQL注入
SQL注入是将Web页面的原URL、表单域或数据包输入的参数 修改拼接成SQL语句,传递给Web服务器,进而传给数据库服务器以执行数据库命令。
CTF比赛中需要掌握:
1.联合查询注入
select username from users where id=“$id” 这个是正确的语句
select username from users where id=“-1” 前面为正确语句
union select password from users #" union是把多重查询的结果合并起来 而后面又是一个语句 #是把后面多余的“注释掉
这样子我们就可以得到id为-1的username和users表中字段password的数据
2.报错注入
和联合查询的区别是 联合查询是给出我们数据 而报错注入只会有正确和错误的信息
3.盲注
这个的话如果是报错的话不会显示具体信息 一般通过布尔盲注和时间盲注来判断
4.宽字节注入
5.二次注入
考点3: 文件上传
文件上传漏洞:上传文件的时候,服务器后端未对上传的文件进行严格的验证和过滤,造成上传恶意文件的情况
CTF比赛中需要掌握:
1.客户端检测绕过方式
2.MIME类型检测绕过方式
3.文件后缀检测绕过方式
4.文件内容检测绕过方式
考点4: 文件包含
文件包含漏洞:客户端用户输入控制动态包含在服务器端的文件,会导致恶意代码的执行及敏感信息泄露,主要包括本地文件包含和远程文件包含两种形式。
CTF比赛中需要掌握:
1.文件包含的函数
2.读取敏感文件
3.获取服务器权限
考点5: 远程命令执行
当用户可以控制命令执行函数中的参数时,就可以注入恶意命令到正常命令中,造成命令
执行攻击。
CTF比赛中需要掌握:
1.PHP等语言中常见的系统命令执行函数
2.命令拼接方法
3.绕过过滤机制
考点6:服务端请求伪造
简称SSRF,是一种由攻击者构造形成由服务器端发起请求的一个漏洞CTF比赛中需要掌握:
1.SSRF的利用技巧5
2.SSRF攻击mysq
3.SSRF攻击redis
考点7: 跨站脚本攻击
简称XSS,是指恶意攻击者往Web页面里插入恶意代码,当其他用户浏览该页之时,嵌入其中Web页面的JavaScript代码会被执行,从而达到恶意攻击用户的目的。
CTF比赛中需要掌握:
1.XSS漏洞的类型和利用方法
2.绕过“内容安全策略
考点8: XML外部实体注入
简称XXE,是在对非安全的外部实体数据进行处理时引发的安全问题CTF比赛中需要掌握
1.XML基础知识
2.绕过过滤机制,实现漏洞利用
考点9: Nodejs
发布于2009年5月,是一个基于Chrome V8引擎的JavaScript运行环境,让JavaScript 运行在服务端的开发平台,成为类似于PHP的后端语言。CTF比赛中需要掌握
1.JavaScript基本语法
2.类型污染
3.原型链污染
考点10: 反序列化
序列化:就是把对象转化为二进制的字符串,使用serialize()函数
反序列化:把对象转化的二进制字符串再转化为对象,使用unserialize()函数
CTF比赛中需要掌握:
1.PHP反序列化漏洞原理
2.构造POP链
相关文章:
CTF-WEB的知识体系
CTF概念 CTF是Capture The Flag的缩写,中文一般译作夺旗赛 CTF起源于1996年DEFCON全球黑客大会 DEFCONCTF是全球技术水平和影响力最高的CTF竞赛 竞赛模式 解题模式:解决网络安全技术挑战(即找到flag),提交后获取相应分值。 攻防赛模式:要求找到其他队…...
【Spring框架】@Cacheable注解:缓存最佳实践
在Java开发中,性能优化是一个永恒的话题。对于使用Spring框架的应用程序来说,Cacheable 注解提供了一种简单有效的方式来提升性能,特别是对于那些计算成本高或数据变化不频繁的操作。本文将深入探讨 Cacheable 的使用方法和注意事项ÿ…...
iZotope RX 10.4.2 mac激活版 音频修复和增强工具
iZotope RX 10 for Mac是一款专业的音频修复软件,旨在提供强大、精确的工具,让用户能够清晰、纯净地处理音频。以下是其主要功能和特点: 软件下载:iZotope RX 10.4.2 mac激活版下载 强大的降噪功能:iZotope RX 10采用了…...
vue核心知识点
一、Vue基础知识点总结 开发vue项目的模式有两种: 基于vue.js,在html中引入vue.js,让vue.js管理div#app元素。基于脚手架环境:通过vue脚手架环境可以方便的创建一个通用的vue项目框架的模板,在此基础之上开发vue项目…...
【乳腺肿瘤诊断分类及预测】基于Elman神经网络
课题名称:基于Elman神经网络的乳腺肿瘤诊断分类及预测 版本日期:2023-05-15 运行方式: 直接运行Elman0501.m 文件即可 代码获取方式:私信博主或QQ:491052175 模型描述: 威斯康辛大学医学院经过多年的收集和整理&a…...
【kubernets】由Evicted状态的Pod探讨k8s中pod的驱逐策略
背景 某天突然发现自己的测试环境中有Evicted状态的pod,于是需要排查原因。先来看看大致情况: [rootk8s-m1 ~]# kubectl get pod -A -o wide|grep k8s-m1 kube-system calico-kube-controllers-bcc6f659f-575mr 1/1 Running 3 177d…...
vxe-table3.0的表格树如何做深层查找,返回搜索关键字的树形结构
vxe-table2.0版本是提供深层查找功能的,因为他的数据源本身就是树形结构,所以深层查找查询出来也是树形结构。 但是vxe-table3.0版本为了做虚拟树功能,将整个数据源由树形垂直结构变成了扁平结构,便不提供深层查询功能,…...
幻兽帕鲁越玩越卡,内存溢出问题如何解决?
近期幻兽帕鲁游戏大火,在联机组队快乐游玩的同时,玩家们也发现了一些小问题。由于游戏有随机掉落材料的设定,服务器在加载掉落物的过程中很容易会出现掉帧、卡顿的情况。某些玩家甚至在游戏1~2时后就出现服务器崩溃的情况…...
C++_list
目录 一、模拟实现list 1、list的基本结构 2、迭代器封装 2.1 正向迭代器 2.2 反向迭代器 3、指定位置插入 4、指定位置删除 5、结语 前言: list是STL(标准模板库)中的八大容器之一,而STL属于C标准库的一部分,因此在C中可以直接使用…...
使用docker部署mongodb
1.创建目录 mkdir -p /opt/mongodb/{data,logs,config} 2.创建配置文件 进入目录 cd /opt写入配置 vim mongod.conf 内容如下 systemLog:# MongoDB发送所有日志输出的目标指定为文件destination: file# mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径path:…...
C#,打印漂亮的贝尔三角形(Bell Triangle)的源程序
以贝尔数为基础,参考杨辉三角形,也可以生成贝尔三角形(Bell triangle),也称为艾特肯阵列(Aitkens Array),皮埃斯三角形(Peirce Triangle)。 贝尔三角形的构造…...
开源电商系统
前言 做电商永不过时,但形式会不断变化。任何赚钱的事情大体都分为两大块:生产和销售。两者是并重的,首先要有好的产品,其次是做好推广运营和销售渠道建设。对于小微企业来说,前期如果能通过销售赚到第一桶金…...
责任链模式在java中的实现
1 总览 2 概念 避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。职责链模式是一种对象行为型模式。 3 实现 公共部分,一个系…...
粤嵌Gec6818---小项目功能实现简单步骤(RFID+图片显示+音乐+视频)
项目设计开发环境: (1)VMware Workstation Pro软件 (2)ubuntu12 .04 (能交叉编译就行) (3)SecureCRT (4)代码编译器(notepad/Vis…...
opencv学习 特征提取
内容来源于《opencv4应用开发入门、进阶与工程化实践》 图像金字塔 略 拉普拉斯金字塔 对输入图像进行reduce操作会生成不同分辨率的图像,对这些图像进行expand操作,然后使用reduce减去expand之后的结果,就会得到拉普拉斯金字塔图像。 …...
关于maven项目构建的解释
在Idea中使用模块化构建项目 项目介绍: sky-take-out sky-common pom.xml sky-pojo pom.xml sky-server pom.xml pom.xml 说明 sky-server依赖sky-pojo和sky-common,继承sky-take-outsky-pojo继承sky-take-outsky-common继承sky-take-out 由于Idea编…...
IMU/捷联惯导常见的术语,以及性能评价标准(附Python解析代码)
0. 简介 现在的机器人领域在普遍使用IMU(惯性导航单元)。该系统有三个加速度传感器与三个角速度传感器(陀螺)组成,加速度计用来感受飞机相对于地垂线的加速度分量,陀螺仪用来感知飞机的角速率变化…...
Debezium发布历史98
原文地址: https://debezium.io/blog/2020/11/12/debezium-1-3-1-final-released/ 欢迎关注留言,我是收集整理小能手,工具翻译,仅供参考,笔芯笔芯. Debezium 1.3.1.Final 发布 十一月 12, 2020 作者: 克里…...
APUE学习之进程间通信(IPC)(下篇)
目录 一、进程间通信(IPC) 二、信号量(Semaphore) 1、基本概念 2、同步关系与互斥关系 3、临界区与临界资源 4、信号量的工作原理 5、信号量编程 6、实战演练 三、共享内存(Shared Memory) 1、…...
【Java 设计模式】行为型之中介者模式
文章目录 1. 定义2. 应用场景3. 代码实现结语 中介者模式(Mediator Pattern)是一种行为型设计模式,用于通过一个中介对象来集中管理多个对象之间的交互关系,从而降低对象之间的耦合度。中介者模式通过将对象之间的通信委托给中介者…...
React Native 导航系统实战(React Navigation)
导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
【分享】推荐一些办公小工具
1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由:大部分的转换软件需要收费,要么功能不齐全,而开会员又用不了几次浪费钱,借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...
华为OD机试-最短木板长度-二分法(A卷,100分)
此题是一个最大化最小值的典型例题, 因为搜索范围是有界的,上界最大木板长度补充的全部木料长度,下界最小木板长度; 即left0,right10^6; 我们可以设置一个候选值x(mid),将木板的长度全部都补充到x,如果成功…...
