CTF如何学习?

news2024/11/16 9:18:11
  1. CTF如何学习?
  2. 打CTF有什么用

CTF本身有几个常见的领域 MISC WEB [逆向 密码学](https://www.zhihu.com/search?q=逆向 密码学&search_source=Entity&hybrid_search_source=Entity&hybrid_search_extra={“sourceType”%3A"answer"%2C"sourceId"%3A"2199121660"}) PWN

首先,你本身是想做一个单方向的选手还是一个五边形战士呢?我身边大部分是选择走web路线(可能因为身边做web的比较多),这边就先以web安全为基础,给你一个学习路线,建议。

首先,先把web安全的学习路线给你安利一下,也是我之前自己在看的流程

web安全知识学习(理论期)

*web基础/渗透环境搭建/常用工具*

*1.web方面的基础知识,比如你去学习HTML等相关前端语言。另外端口也可以学习一下3306,3389等端口的利用。(具体可以参考漏洞银行学习路线内容)*

*2.渗透环境的搭建也是必不可少的,最快捷的方法就是装一个kalilinux的虚拟机,对于小白来说最好不过了,不需要配置过多的环境和工具,系统全部自带,对于web安全研究人员来说kali是一个不错的选择(网上教程很多,不再列举)*

*3.常用工具这边,比如注入工具学习sqlmap,以及burp,MSF,nmap,beef,AWVS,wk,等工具,来辅助完成渗透以及方便渗透人员。(工具需要配置环境,例如sqlmap需要python环境才能够使用,小白配置起来比较鸡肋,百度相关教程)*

*owasp top 10漏洞*

  • 注入
  • 失效身份验证和会话管理
  • 敏感信息泄露
  • XML外部实体注入攻击(XXE)
  • 存取控制中断
  • 安全性错误配置
  • 跨站脚本攻击(XSS)
  • 不安全的反序列化
  • 使用具有已知漏洞的组件
  • 日志记录和监控不足

这些可以说是基础了,作为一名web安全研究人员不能不会的技术,在精通owasp top 10漏洞原理,挖掘,利用,修复方法后(建议每个漏洞都确保拥有实战能力,即能够在靶场上复现,吃透以后再进行下一步的学习)就可以尝试去实战一些中小型网站了。

*漏洞挖掘(初期实战)*

*Google hacker)*

可能大部分同学还没有听说过,学过,或者只是粗略的了解了一下谷歌语法,认为它的功能一般,没有什么大用处,然后就放到一边去了,但其实不是,其实大部分情况下的漏洞还是得靠谷歌语法的。很多同学可能是看了一些SRC大佬的回答以及文章之类的,就直接带上电脑,在网上找一些大集团,大学,政府等平台去进行渗透测试,这种行为无疑是错误的
且不说你没有经验,一上来就搞这种大平台,对于一个新手来说,能有多大收获呢?(运气爆表当我没说)。那些文章和SRC大佬的水平和方法并不一定适用于你。对于新手,更多还是用谷歌语法去找漏洞,比如找逻辑漏洞(短信轰炸)就intitle:注册 inurl:http://edu.cn 这个语法如果看不懂建议回炉重造,这是最基本的,查找教育机构逻辑漏洞的一个简单谷歌语法,又或者你要挖注入,那就inurl:asp?id=
这样去挖洞的效率绝对比你在网上瞎找要好,谷歌语法可以帮助我们筛选网站,我们可以根据不同漏洞URL特征,网站内容,标题等,利用谷歌语法来查找相关网站去进行渗透测试,这个对于小白挖洞来说非常重要。

*网站信采集*

  • 其实挖不到漏洞,除了思路问题,技术问题,被大佬挖完等问题外,还有一点,信息采集不到位,有时信息收集可能微不足道,没有什么作用,但有时他却能决定本次渗透能否成功,所以一定要事先做好信息采集的工作,像whois,端口,目录,子域名,邮箱枚举等手段。

以上是我推荐给答主的web安全学习路线,这边就来讲一下,打CTF有什么用处?

  • 很多同学想要去打CTF,为了什么?
  1. 想要靠比赛来赚取更多的学分
  2. 想要在比赛中提升个人技术水平
  3. 想要结识更多大佬,开拓眼界,就业有更多选择等

打CTF,如果是一个刚刚开始学习或者接触不久的小白来说,去一些比较有意思的比赛或者队伍当中,就算做不出几道题,队伍中没有什么存在感。但仍然可以学到很多之前没有接触过的操作,姿势,以及各种奇怪的技巧。

但有一点也请各位同学注意,目前CTF中的题目和环境,很多都和现实(实战)脱轨,所以说打CTF可以学到技术,但可能对实战的帮助不是很大.

  • 但还是可以锻炼自己的渗透思路,手法,锻炼自己的实战能力。至少在基本功方面,和其他人相比会有显著的提升。
  • 且目前来看,很多CTF都是有各大公司投资,以及很多安全企业的招聘上都会有“CTF获奖者优先”之类的字眼,至少对之后的就业是有帮助的。并且很多高校也是可以通过CTF比赛来赚取学分,对新生来说,打CTF还是有不少好处的
  • 但归根结底,CTF还是类似于黑客之间的,派对?拥有一定官方背景的比赛国内还不是很多,被各大公司接受承认的名次和奖项也比较少

不过,最终还是看题主自己了。只要感觉在比赛中学到了技术,感受到了快乐那就坚持下去。但思维不要过度的CTF化,这可能对你以后的实际项目有一定的影响。

我之前在学习过程中就有思考过,CTF到底是什么?

答案是:Web/逆向/Misc/密码学/Pwn基础知识+CTF式解题思路(技巧)

如何证明呢?我之前也有专门问过我的学生,是不是在实战中遇到过这样的问题

一道题目,明明知识点都会了,但还是做不出来? 答案肯定是 有

这就是解题思路的问题,也是为什么CTF会和实战脱轨,所以经验和思路在CTF就显得颇为重要了,只有将专业知识和思路融合在一起才能成为一名优秀的CTFer

最后一点,什么情况下不推荐打CTF?

  1. 过度沉浸于CTF,如解题技巧,出题模式,题目套路等等

这一点,首先是对你之后的实际渗透测试工作和项目会带来影响,毕竟你不可能打一辈子的CTF,而CTF和实战还是有区别,过度沉浸于CTF的模式当中会让你在实战中却无从下手

2.希望速成,短时间内成为优秀的CTFer

作和项目会带来影响,毕竟你不可能打一辈子的CTF,而CTF和实战还是有区别,过度沉浸于CTF的模式当中会让你在实战中却无从下手**

2.希望速成,短时间内成为优秀的CTFer

这种就是太浮躁了,很难坚持和认真学下去,如果是以这种目的和心态来学习的话我个人不太推荐,还是做点其他的比较好?

在这里插入图片描述在这里插入图片描述

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

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

相关文章

ubuntu 22.04 安装 RTX 4090 显卡驱动 GPU Driver(PyTorch准备)

文章目录 1. 参考文章2. 检查GPU是Nvidia3. 卸载已有驱动3.1. 命令删除3.2. 老驱动包 4. 官网下载驱动5. 运行5.1. 远程安装关闭交互界面5.2. 运行5.3. 打开交互界面 6. 检测与后续安装 1. 参考文章 https://blog.csdn.net/JineD/article/details/129432308 2. 检查GPU是Nvid…

【MySQL】Mysql——安装指南(Linux)

MySQL8.0.26-Linux版安装 1. 准备一台Linux服务器 云服务器或者虚拟机都可以; Linux的版本为 CentOS7; 2. 下载Linux版MySQL安装包 3. 上传MySQL安装包 4. 创建目录,并解压 mkdir mysqltar -xvf mysql-8.0.26-1.el7.x86_64.rpm-bundle.tar -C mysql5. 安装mysql的安装包 …

CAPL入门之使用CAPL记录测试Logging

0 前言 以往测试的log都是直接从trace导出,但是最近发现trace中能导出的数据是有限的,如果测试的时间过长,新的数据就会把之前的数据全部覆盖,并且对于长时间的测试,直接导出trace的内容也会造成查找效率低下的问题。因…

iOS 创建pch文件

1.参考链接(xcode8添加方法,之前的跟这个差不多): 参考链接 2.自我总结: (1)创建pch文件: 注意点:1)注意选中所有的targets(看图明义) 2&…

关于链表相关的OJ题

✨✨✨专栏:数据结构 🧑‍🎓个人主页:SWsunlight 一、 OJ题 返回倒数第K个节点: 1、遍历链表一遍:用2个指针,phead和ptail先让ptail先走k步,然后让2个指针一起走,快的走到NULL即…

计算机发展史故事【13】

微电脑先锋 与第一台电子计算机埃历阿克的命运相似,1974 年面世的“牛郎星”能否作为世界上第一台微电脑被载入史册,人们似乎也存在着分歧。 拥有微处理器发明权的英特尔公司,难道自己不会组装微电脑,非得罗伯茨来越俎代庖吗&…

从零开始:C++ String类的模拟实现

文章目录 引言1.类的基本结构2.构造函数和析构函数3.基本成员函数总结 引言 在C编程中,字符串操作是非常常见且重要的任务。标准库中的std::string类提供了丰富且强大的功能,使得字符串处理变得相对简单。然而,对于学习C的开发者来说&#x…

【考研数学】强化阶段,张宇《1000题》正确率达到多少算合格?

首次正确率在60%以上就算是合格! 张宇老师的1000题真挺难的,所以如果第一次做正确率不高,不要太焦虑,1000题不管是难度,综合度还是计算量,都比其他的题集高一截。 大家真实的做题情况下,如果正…

前端工程化 - 快速通关 - ES6

目录 ES6 1.1 let 1.2 const 1.3解构 1.4链判断 1.5参数默认值 1.6箭头函数 1.7模板字符串 1.8Promise 1.9Async 函数 1.10模块化 ES6 ●ECMAScript(ES) 是规范、 JavaScript 是 ES 的实现 ●ES6 的第一个版本 在 2015 年 6 月发布&#xff0c…

【C语言习题】12.扫雷游戏

文章目录 1.扫雷游戏分析和设计1.1 扫雷游戏的功能说明1.2游戏界面:1.3游戏的分析和设计1.2.1 数据结构的分析1.2.2 ⽂件结构设计 2.扫雷游戏的代码实现3.代码讲解 1.扫雷游戏分析和设计 1.1 扫雷游戏的功能说明 使用控制台实现经典的扫雷游戏游戏可以通过菜单实现…

机器学习案例:加州房产价格(四)

参考链接:https://hands1ml.apachecn.org/2/#_12 数据探索和可视化、发现规律 通过之前的工作,你只是快速查看了数据,对要处理的数据有了整体了解,现在的目标是更深的探索数据。 首先,保证你将测试集放在了一旁&…

特征模态分解(FMD):一种小众而又新颖的分解方法

​ 声明:文章是从本人公众号中复制而来,因此,想最新最快了解各类智能优化算法及其改进的朋友,可关注我的公众号:强盛机器学习,不定期会有很多免费代码分享~ 今天为大家介绍一个小众而又新颖的信号分…

HyperLogLog的使用做UV统计

使用Jedis连接Redis并操作HyperLogLog import redis.clients.jedis.Jedis;public class RedisHyperLogLogExample {public static void main(String[] args) {// 连接到本地的Redis服务Jedis jedis new Jedis("localhost", 6379);String hyperLogLogKey "hll…

智慧安防系统:构建更安全的社区环境

随着科技的不断进步,人们的生活质量得到了显著提高。然而,与此同时,社会治安问题也日益凸显。为了维护社会的和谐稳定,提高人们的生活安全感,智慧安防系统应运而生。本文将为您详细介绍智慧安防系统的项目背景、需求分…

默认成员函数:析构、深浅拷贝

析构函数 析构函数:与构造函数功能相反,析构函数不是完成对对象本身的销毁,局部对象销毁工作是由编译器完成的。而对象在销毁时会自动调用析构函数,完成对象中资源的清理工作。 特性 析构函数名时在类名前面加上字符~ class D…

Python 全栈体系【四阶】(四十三)

第五章 深度学习 九、图像分割 3. 常用模型 3.4 DeepLab 系列 3.4.1 DeepLab v1(2015) 3.4.1.1 概述 图像分割和图像分类不一样,要对图像每个像素进行精确分类。在使用CNN对图像进行卷积、池化过程中,会导致特征图尺寸大幅度下降、分辨率降低&…

旧手机-基于Termux配置服务器(不用拿去换钢盆了)

Hi,大家好,我是抢老婆酸奶的小肥仔。 大家用手机这么多年了,手上或多或少都有一两个被替换下来的旧手机,也不用拿去换啥钢盆了,使用Termux可以将旧手机改造成一个服务器。 不多说,直接开干。 1、安装app…

Java应用程序的本地内存跟踪分析

本文将讨论本机内存跟踪 (NMT),我们可以使用它来隔离在 VM 级别增长的任何异常内存。 1.什么是本机内存? 本机内存是指计算机系统上运行的应用程序或程序可直接访问的内存空间。它是程序在执行期间存储和操作数据的内存区域。本机内存不同于托管内存&a…

单调栈练习

最大矩形面积 如果栈为空&#xff0c;或者新的元素是大于栈顶元素的&#xff0c;那么新来的元素不会破坏栈的单调性&#xff0c;那么就把这个柱子入栈。 特别注意&#xff1a;这里的s.empty()和s.top().height < a不能调换顺序&#xff0c;包括后面的判断也要先判断栈是否为…

分析 vs2019 cpp20 规范的 STL 库模板 function ,源码注释并探讨几个问题

&#xff08;1 探讨一&#xff09;第一个尝试弄清的问题是父类模板与子类模板的模板参数的对应关系&#xff0c;如下图&#xff1a; 我们要弄清的问题是创建 function 对象时&#xff0c;传递的模板参数 _Fty , 传递到其父类 _Func_class 中时 &#xff0c;父类的模板参数 _Ret…