目录

ReconCTF-Web类题目主要类型

【Recon】CTF Web类题目主要类型

CTF(Capture The Flag)竞赛中的Web类题目主要考察参赛者对Web应用漏洞的识别与利用能力,涵盖多种漏洞类型和攻击手法。以下是常见的Web题目类型及对应的漏洞考点:


1. 信息搜集类

  • 敏感目录泄露:通过探测 .git.svn 等目录或备份文件(如 vim.swp 文件)获取源码或敏感信息。
  • 常规文件分析:查看 robots.txtreadme.md 等文件,获取CMS版本或隐藏路径。
  • Banner识别:通过服务器响应头识别Web框架(如ThinkPHP),利用已知历史漏洞解题。

2. 注入类漏洞

  • SQL注入:包括数字型、字符型、布尔盲注、报错注入等,常用工具如 SQLmap ,或手动构造Payload(如 ' OR '1'='1 )绕过登录验证。
  • 命令注入:利用系统命令执行函数(如 systemexec ),通过分号、管道符等拼接命令(如 ls; cat flag ),需绕过空格过滤(如 ${IFS}%09 )。
  • XXE(XML外部实体注入):通过恶意XML读取服务器文件(如 /etc/passwd )。

3. 文件处理漏洞

  • 文件上传漏洞:绕过黑名单(如 .php 改为 .php5 )、利用MIME类型欺骗或竞争条件上传WebShell。
  • 文件包含漏洞:本地文件包含(LFI)或远程文件包含(RFI),利用伪协议(如 php://filter )读取源码或执行代码。
  • 任意文件读取:直接访问敏感文件(如 /etc/passwd.env )。

4. 身份验证与会话漏洞

  • 弱密码与未授权访问:尝试常见弱密码(如 admin:123456 )或直接访问未鉴权的管理页面。
  • Cookie篡改与会话劫持:修改Cookie中的用户角色(如 admin=1 )或通过XSS窃取会话Token。
  • JWT漏洞:利用弱密钥或算法(如 None )伪造Token。

5. 服务端漏洞

  • SSRF(服务端请求伪造):构造恶意URL访问内网服务(如 http://127.0.0.1:8080 )。
  • 反序列化漏洞:PHP或Java反序列化链利用,需绕过 __wakeup 方法(如修改对象属性数量)。
  • 代码执行漏洞:通过危险函数(如 eval )执行任意代码,或利用框架漏洞(如ThinkPHP的RCE)。

6. 客户端漏洞

  • XSS(跨站脚本):反射型(Payload通过URL传递)或存储型(恶意脚本存储于数据库),常用Payload如 <script>alert(1)</script>
  • CSRF(跨站请求伪造):构造恶意页面诱使用户触发敏感操作(如修改密码)。
  • CORS配置错误:利用跨域请求窃取用户数据。

7. 代码审计与PHP特性

  • 弱类型比较:利用 == 的松散比较(如 0e123456 == 0 )绕过MD5校验。
  • 正则绕过:通过 %00 截断、数组参数(如 a[]=1 )或特殊字符绕过正则过滤。
  • 无字母数字WebShell:使用异或、取反等操作构造Payload(如 $_=~%9A%89%9E%93; )。

8. 业务逻辑漏洞

  • 越权操作:通过修改参数(如订单ID)访问他人数据。
  • 支付逻辑漏洞:利用负数价格、重复支付等绕过校验。
  • 竞态条件:并发请求导致资源分配异常(如积分重复兑换)。

总结

CTF Web题目的核心是识别漏洞并构造利用链,需熟悉常见漏洞原理及绕过技巧,并结合工具(如Burp Suite、SQLmap)提升效率。部分题目会结合多种漏洞类型,需灵活运用综合知识解题。