CTF入门基础知识总结(赶紧收藏)

admin 2024年12月29日22:41:56评论83 views字数 7270阅读24分14秒阅读模式

CTF,中文一般译作夺旗赛,是网络安全技术人员之间进行技术竞技的一种比赛形式。它起源于1996年的DEFCON全球黑客大会,旨在以更安全、更文明的方式展示黑客技术,推动网络安全领域的发展。如今,CTF已经成为全球网络安全圈流行的竞赛形式,吸引了无数网络安全爱好者参与其中。

CTF入门基础知识总结(赶紧收藏)

一、CTF简介与入门准备

在网络安全领域,CTF不仅是一种竞赛形式,更是一种技能的展示和锻炼。对于初学者来说,了解CTF的基本概念、竞赛模式和题型特点至关重要。在入门之前,你需要明确自己学习CTF的目的,是为了提升技能、拓展视野,还是为了将来从事网络安全相关工作。

此外,编程能力是CTF竞赛中不可或缺的一部分。无论是解题、攻防还是漏洞挖掘,都需要具备一定的编程基础。如果你完全不具备编程能力,那么可能会在学习过程中遇到很多困难。因此,在开始学习CTF之前,建议你先掌握一门编程语言,如Python或C/C++等。

当然,CTF入门并不只是学习编程那么简单。你还需要了解网络安全的基础知识,如网络协议、加密解密技术、操作系统原理等。这些知识将为你后续的学习打下坚实的基础。

二、CTF竞赛模式与题型解析

CTF的竞赛模式主要分为以下三种:

  1. 解题模式(Jeopardy):这种模式常见于线上选拔比赛,参赛队伍通过互联网或现场网络参与。与ACM编程竞赛类似,解题模式CTF侧重于解决网络安全技术挑战题,根据分值和时间进行排名。题目类型主要包括Web网络攻防、逆向工程(RE)、二进制漏洞利用(Pwn)、密码攻击(Crypto)、移动安全(Mobile)以及安全杂项(Misc)等。解题模式中通常会有“一血”、“二血”、“三血”的设置,即最先完成的前三支队伍会获得额外分值。

  2. 攻防模式(Attack-Defense):在攻防模式中,参赛队伍在网络空间中互相进行攻击和防守,挖掘网络服务漏洞并攻击对手服务以得分,同时修补自身服务漏洞进行防御。这种模式可以实时反映比赛情况,以得分直接分出胜负,具有竞争激烈和高度透明性的特点。

  3. 混合模式(Mix):结合了解题模式和攻防模式的CTF赛制。参赛队伍通过解题获取初始分数,然后通过攻防对抗进行得分增减,最终以得分高低分出胜负。

CTF竞赛的主要题型包括但不限于以下几种:

1. PWN(溢出)

PWN题型主要考察选手对于二进制漏洞的利用能力。这类题目通常要求选手分析一个给定的程序或服务,找出其中的安全漏洞,如缓冲区溢出、格式化字符串漏洞、整数溢出等,然后编写利用代码,最终获得目标系统的控制权(通常是得到shell)。

  • 常见类型

    • 栈溢出:利用栈上的缓冲区溢出,篡改返回地址或函数指针。

    • 堆溢出:利用堆内存管理中的漏洞,如unlink攻击、use-after-free等。

    • 整数溢出:通过整数运算溢出,改变程序流程或造成越界访问。

2. MISC

MISC(杂项)题型是最多样化的,通常不局限于某个特定的技术领域,而是涉及各种安全相关的技能,如数据分析、隐写术、密码学应用等。

  • 常见类型

    • 隐写术:将信息隐藏在图片、音频、视频等文件中。

    • 数据分析:对数据包、日志文件等进行分析,寻找隐藏的信息。

    • 社会工程学:利用人性的弱点获取信息。

3. CRYPTO

CRYPTO(密码学)题型要求选手具备一定的密码学知识,能够分析和破解加密算法,或者实现特定的加密任务。

  • 常见类型

    • 对称加密:如AES、DES等加密算法的破解。

    • 非对称加密:如RSA、ECC等加密算法的破解。

    • 古典密码:如凯撒密码、维吉尼亚密码等。

4. WEB

WEB题型专注于Web应用程序的安全,涉及各种Web攻击技术,如SQL注入、XSS攻击、文件上传漏洞等。

  • 常见类型

    • SQL注入:通过篡改SQL查询,窃取或破坏数据库。

    • XSS攻击:跨站脚本攻击,通过在目标网站上执行恶意脚本。

    • CSRF攻击:跨站请求伪造,利用受害者的身份执行非授权操作。

5. REVERSE

REVERSE(逆向工程)题型要求选手具备对软件逆向分析的能力,通常需要反汇编或反编译程序,理解其工作原理,并寻找隐藏的Flag或执行特定的任务。

  • 常见类型

    • 逆向分析:对程序进行反汇编或反编译,理解程序逻辑。

    • 算法还原:从程序中提取算法并进行还原。

    • 壳分析:对加壳程序进行脱壳和分析。

在CTF竞赛中,每种题型都有其独特的技巧和工具,选手需要不断学习和实践,才能在比赛中取得好成绩。

CTF入门基础知识总结(赶紧收藏)

三、CTF学习资源与靶场推荐

在学习CTF的过程中,你可以利用丰富的网络资源和靶场平台来提升自己的技能。其中,DVWA(Damn Vulnerable Web Application)是一个非常适合Web安全入门的靶场平台,它包含了常见的Web漏洞和防护方法,可以帮助你更好地理解漏洞的原理和防御措施。Sqli-Labs和Upload-labs则分别专注于SQL注入和文件上传漏洞的学习和实践。

除了这些靶场平台外,你还可以参加一些线上或线下的CTF比赛来检验自己的技能水平。这些比赛不仅可以让你结交到志同道合的朋友,还可以让你在实践中不断提升自己的技能和能力。

四、CTF职业发展与未来展望

随着网络安全形势的日益严峻,网络安全人才的需求也越来越大。掌握CTF技能不仅可以让你在网络安全领域脱颖而出,还可以为你未来的职业发展打下坚实的基础。目前,网络安全领域的就业前景非常广阔,涵盖了安全工程师、安全顾问、安全研究员等多个岗位。这些岗位不仅薪资待遇优厚,而且发展前景广阔。

在未来,随着技术的不断发展和网络安全形势的不断变化,CTF竞赛也将不断创新和发展。未来的CTF竞赛可能会更加注重实战能力和团队协作能力的考察,同时也会引入更多的新技术和新题型来挑战参赛选手的极限。因此,我们需要不断学习和进步,才能在这个充满机遇和挑战的领域立于不败之地。

关于我

有不少阅读过我文章的伙伴都知道,大白曾就职于某大厂安全联合实验室。从事网络安全行业已经好几年,积累了丰富的技能和渗透经验。

大学期间,我参加过很多CTF比赛,打过护网,就职某大厂联合实验室的时候,也成功防范了各种网络攻击和漏洞利用,提高了互联网安全防护水平。

为了帮助大家减少搜集整理的工具的时间,大白也帮你整理好了全套CTF工具,可以说是非常全面和详细。

扫描下方二维码即可前往获取全套CTF工具安装包!

CTF入门基础知识总结(赶紧收藏)

一、基础环境

  1. VSCode最好用  最轻量的 文本编辑器 依靠扩展可实现包括但不限于 IDE 各种功能  

  2. VMware Workstation 虚拟机软件  

  3. PyCharm Python  集成开发环境 (IDE)  

  4. Python MISC  方向中用途最广的语言。

  5. IDEA Java  集成开发环境 (IDE)  

  6. PHPStorm PHP  集成开发环境 (IDE)  

  7. PHPStudy Web  环境 (Apache / Nginx + FTP + MySQL) 快速部署  ,常用于 Web 初学阶段的一些本地 web  页面的搭建

  8. Docker 容器服务  ,常用于  题目本地搭建测试 靶场环境,漏洞复现环境搭建等,除了静态附件题目,几乎所有的 CTF 题目都依赖 Docker

  9. Navicat 优秀的数据库  管理 操作 调试 以及 可视化软件 

  10. Watt Toolkit GitHub  Discord 部分谷歌服务 页面元素 CDN 访问加速 |不是用来让你打游戏的啊喂 (#`O′)!

  11. Clash

CTF入门基础知识总结(赶紧收藏)

二、常用工具

  1. Maye  Lite 专注于文件快速启动的简洁、轻量级工具

  2. uTools  一个极简、插件化的现代桌面软件。

  3. Everything 一款强大的本地文件索引和搜索工具

CTF入门基础知识总结(赶紧收藏)

三、Web 安全

  1. hackbar 浏览器插件,能够在页面上直接完成  请求 / 响应内容编辑,完成各种包括但是不限于伪造的工作。

  2. Proxy SwitchyOmega 代理管理软件,方便一个浏览器多个代理端口的切换。

  3. Wappalyzer 页面技术识别软件,方便快速定位页面的框架技术等信息

  4. Burp Suite 代理抓包软件,用于  Web 应用程序的渗透测试和攻击  

  5. Antsword 开源  Webshell 管理工具  

  6. dirsearch 目录扫描工具  

  7. SQLMap 自动化的  SQL 注入利用工具  

  8. SuperSQLInjectionV1 C#开发的SQL注入辅助工具

  9. JD-GUI Jar  包反编译工具   

  10. Ysoserial Java  反序列漏洞利用工具   

  11. 冰蝎(Behinder) 具有优秀的加密传输特性的Webshell管理工具。

  12. 哥斯拉(Godzilla) 支持对载荷进行AES等各种加密,支持自定义Http头,支持内存shell,提供丰富的Webshell功能。

  13. Weevely3 基于python编写,集webshell生成和连接于一身,采用c/s模式构建。

  14. 天蝎权限管理工具 基于冰蝎加密流量进行WebShell通信管理的原理,目前实现了jsp、aspx、php、asp端的常用操作功能,做出了许多优化。(已停止外部更新)

  15. 中国菜刀 PHP、ASP、ASPX  webshell管理工具 对一些古老站点有奇效。(已停止维护)

  16. Goby 集资产测绘和漏洞扫描  以及多样化功能插件于一身的扫描器。

  17. Xray 一款功能强大的安全评估工具。  

  18. SuperXray Xray扫描器的GUI版本。  

  19. Vscan 开源、轻量、快速、跨平台  的网站漏洞扫描工具。

  20. Afrog 高性能的漏洞扫描器。

  21. Scaninfo 开源、轻量、快速、跨平台  的红队内外网打点扫描器。

  22. OSV-Scanner 谷歌开源漏洞扫描器

  23. Wpscan Wordpress漏洞扫描器

  24. Nuclei 一款注重于可配置性、可扩展性和易用性的基于模板的快速漏洞扫描器,可通过yaml构建模板

  25. OA-EXPTOOL OA综合利用工具,集合将近20款OA漏洞批量扫描

  26. Apt_t00ls 高危漏洞利用工具

  27. Railgun 具有GUI界面的渗透工具,集成了端口扫描、端口爆破、web指纹扫描、漏洞扫描、漏洞利用以及编码转换功能

  28. Log4j2Scan Log4j漏洞探测

  29. Ysoserial Java  反序列漏洞利用工具   

  30. Ysomap Java  反序列漏洞利用工具

  31. SB-Scan(错乱 针对Spring  Boot的开源渗透框架,主要用作扫描敏感信息泄露端点,可直接测试Spring的相关高危漏洞。

  32. SpringBootExploit SpringBoot综合利用工具

  33. ShiroAttack2 Shiro框架漏洞利用工具

  34. Fastjson Fastjson扫描器,可识别版本、依赖库、autoType状态等

  35. WeblogicTool WeblogicTool,GUI漏洞利用工具,支持漏洞检测、命令执行、内存马注入、密码解密等

  36. Struts2-Scan Struts2漏洞利用扫描工具

  37. JNDIExploit JNDI多功能利用工具

  38. Thinkphp_gui_tools ThinkPHP漏洞综合利用工具

  39. ThinkLog Tk3,5,6  日志泄漏批量下载

  40. XSStrike XSS扫描器

  41. PwnXSS XSS漏洞扫描利用工具

  42. Dalfox xss漏洞扫描器

  43. Commix All-in-One的自动化命令注入利用工具

  44. LFISuite 本地文件包含利用工具

  45. XXEinjector XXE利用工具

  46. Fuxploider 文件上传利用工具

  47. Fscan 内网扫描

  48. Stowaway 内网穿透

  49. SharpHostInfo 内网主机探测

  50. LadonGo 内网渗透扫描

  51. Neo-reGeorg代理工具

CTF入门基础知识总结(赶紧收藏)

四、加密解密

  1. CyberChef近乎全能的编码解码工具。

  2. Ciphey 自动化解密工具。

  3. CTFCrackTools 国内首个  CTF 工具框架 , 内涵多个主流密码加解密,支持添加支持 Python 编写的插件。

  4. Sagemath 开源的数学软件系统  , 整合了许多开源 Python 包。 

  5. Yafu 本地的因数分解程序

  6. z3 开源的约束求解器,针对约束求解题型

  7. PuzzleSolver MISC  综合解题工具,由 Byxs20 开发。

  8. Factordb 在线的因数分解网站

  9. Crypto 包 密码学工具库,用于在  Python 中实现各种加密、解密和哈希算法。

  10. gmpy2 包 包含了许多常用的数论函数和算法,适配各种大整数情况,算法效率高于原生库。

  11. numpy 包基于  C 代码实现了底层数据结构和计算函数优化,适用于处理大型数据集和高性能计算,在密码学中常用于矩阵类运算。

CTF入门基础知识总结(赶紧收藏)

五、密码爆破

  1. ZipCenOp伪加密加  / 解密工具   

  2. ARCHPR 压缩文件密码暴力破解工具。

  3. Ziperello zip  压缩包密码恢复软件。

  4. Aopr Office  文件密码暴力破解工具。

  5. Passware Kit Forensic 十分强大的解密工具,各类文件  / 磁盘密码爆破,密钥搜索等

  6. Hashcat 高性能,GPU/CPU  兼容的本地密码破解,支持多种不同格式

  7. John the Ripper 简单易用的离线破解

  8. Hydra远程或在线密码的并行暴力破解。

扫描下方二维码即可前往获取全套CTF工具安装包!

CTF入门基础知识总结(赶紧收藏)

六、文件工具

  1. 010  Editor专业的文本编辑器和  16 进制编辑器,可通过加载模块脚本,解析文件结构。

  2. lmHex 开源的  16 进制编辑器。   

  3. WinHex 16  进制编辑器为核心的数据处理软件。

  4. Binwalk 可识别文件分离提取工具,常用于从文件中提取隐写到其中的其他文件。

  5. Foremost 用于提取一个文件中包含的多个文件。

  6. FileReverse-Tools对二进制文件反转、倒置以及十六进制编码处理相关的工具,解决CTF和工作中的文件处理问题

CTF入门基础知识总结(赶紧收藏)

七、隐写图片

  1. Qrazybox二维码分析和恢复

  2. QR Research 专业的二维码扫描识别软件,支持多个纠错等级,掩码选项  (已停止维护)。

  3. UleadGIFAnimator 高级  GIF 编辑器

  4. Stegsolve 图像分析工具。   

  5. TweakPNG 用于检查和修改  PNG 图像文件 |类似于 010 的 Png Template 功能 

  6. BlindWaterMark(python) 基于  python 的图像盲水印

  7. BlindWatermark(java) 基于  java 的图像盲水印

  8. WaterMark(隐藏水印) 图像隐写工具,在频域添加数字水印 

  9. WaterMarkH 单图盲水印  (频域隐写) 工具

  10. zsteg PNG  和 BMP 图片隐写

  11. jsteg JPG  图片隐写

  12. StegoVeritas 隐写工具

  13. Stegdetect 检测  jpeg 图像隐写工具,搭配 stegbreak 食用更佳

  14. Our Secret 文档加密工具(Our  Secret)

  15. CRC32-Tools 一款CTFer专属的CRC碰撞全自动化脚本(单脚本整合版)

  16. Deformed-Image-Restorer自动爆破PNG图片宽高并一键修复离线脚本工具

CTF入门基础知识总结(赶紧收藏)

八、隐写音频

  1. Steghide将文件隐藏到  ** 图片或音频 ** 中的工具  

  2. Audacity 多轨音频处理软件。

  3. Mp3stego 音频隐写提取工具

  4. Silenteye 音频  / 图像隐写工具   

  5. DeepSound 可以将文件加密保存到一段声音文件中

  6. Mp3tag音频文件元资料编辑器

CTF入门基础知识总结(赶紧收藏)

九、隐写取证

  1. Wireshark流量分析取证软件。

  2. Volatility 内存分析取证软件。   

  3. MemProcFS 新型内存取证框架

  4. NtfsStreamsEditor NTFS  流分析

  5. R-Studio 内存取证  tick+ 磁盘文件恢复分析

  6. AutoPsy 用来分析磁盘映像和恢复文件的开源取证工具

  7. RegistryExplorer 注册表文件分析器

  8. PowerToy 注册表文件分析器

  9. VolatilityPro自动化内存取证  _GUI 版本

CTF入门基础知识总结(赶紧收藏)

十、逆向工具

  1. IDA最常用的静态逆向工具

  2. Ghidra 开源的静态逆向工具,和  IDA 作用相同

  3. Ollydbg 同为反汇编调试器  (官方已经停止维护)

  4. x64dbg / x32dbg 在  windows 上使用的开源 x64 / x32 调试器

  5. DIE 查壳工具,拿到程序第一件事就是分析文件类型,是否有壳

  6. Exeinfope 同为查壳工具

  7. Cheat Engine 对程序的内存数据进行扫描和调试。

  8. GDB 一般用于  ELF 的动态调试,配合插件 (如 pwngdb,gdb-peda) 使用更佳

  9. z3 开源的约束求解器,针对约束求解题型

  10. dnSpy强大的  .NET 调试、修改和反编译的工具 (已停止维护)

十一、Java 反编译

  1. JADX开源更好的代码可读性自动恢复丢失的类和方法、变量和方法名称、可以将反编译结果导出为Eclipse或IDEA项目

  2. JD-GUI 更好的代码可读性可导出为Java文件或Jar包

  3. JEB 支持wasm可交叉引用、可看字节码、反编译结果纯粹

  4. GDA 支持apk,dex,odex,oat,jar,class,aar文件的反编译,支持python及java脚本自动化分析

  5. FernflowerIDEA采用的反编译工具,支持Jar包反编译。

十二、Python反编译

  1. pycdcpyc  反编译 , 对高版本有不错兼容性。

  2. Unpy2exe 对  py2exe 打包的 python 程序提取字节码文件 (.pyc)。

  3. Pyinstxtractor 对  pyInstaller 打包的 python 程序提取字节码文件 (.pyc)。

  4. [Python]uncompyle用于对  Python 字节码文件 (.pyc) 的反汇编,将其变成 python 源代码。

CTF入门基础知识总结(赶紧收藏)

十三、PWN二进制

  1. GDB一般用于  ELF 的动态调试,配合插件 (如 pwngdb,gdb-peda) 使用更佳。

  2. Pwntools 用于编写  EXP。

  3. Pwncli 一款简单、易用的 pwn 题调试与攻击工具,帮助你快速编写 pwn 题攻击脚本,并实现本地调试和远程攻击的便捷切换,提高你在 CTF 比赛中调试 pwn 题脚本的速度与效率。

  4. Checksec 查看二进制文件开启了哪些保护机制。

  5. ROPgadget 编写  ROP 的 EXP 时需要用到,可以帮助你寻找合适的 gadgets。

  6. objdump 反汇编工具,查看文件的一些表信息,如  got 表。

  7. radare2 UNIX-like  reverse engineering framework and command-line toolset.

  8. windbgWindow  内核模式和用户模式代码调试。

CTF入门基础知识总结(赶紧收藏)

需要全套CTF工具安装包的,可以扫描下方二维码,前往获取!

CTF入门基础知识总结(赶紧收藏)

原文始发于微信公众号(龙哥网络安全):CTF入门基础知识总结(赶紧收藏)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月29日22:41:56
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CTF入门基础知识总结(赶紧收藏)https://cn-sec.com/archives/3567201.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息