CTFer第一篇Web知识点汇总,从ctfhub和ctfshow部分题中总结,新手上路,请多指教。
本篇内容仅供CTF学习使用!
HTTP
【Cookie】
改参数重发请求,有带flag的Cookie需要URLdecode
出题方向有Cookie欺骗、认证、伪造
找Cookie可以通过浏览器自带的开发者工具也可以通过burpsuite
开发者工具→Network→Cookies
burpsuite通过设置好代理→截断,可以看到HTTP头的Cookie字段
【HTTP 状态码】
302跳转
302:请求的资源临时移动到另一个位置。通常用于临时重定向,例如用户未登录时重定向到登录页面。
其他状态码
200:正常
204:请求成功,但没有内容返回。用于不需要返回任何数据的情况下。
301:请求的资源已被永久移动到新位置。
400:服务器无法理解请求。可能参数错误或格式不正确。
401:资源需要身份验证,客户端无权限访问。
404:请求的资源不存在。
500:服务器内部遇到意外情况,无法完成请求。
503:服务不可用,或服务器暂时无法处理(过载或维护中)。
【HTTP 标准方法】
自定义方法探测
还有标准方法:
GET
: 请求指定的资源并返回其内容。常用于获取数据。
POST
: 向指定资源提交数据,通常用于创建或更新资源。
hackbar:“Load URL” → “Post data” → 输入要POST的字段
burpsuite:见后文题目操作
HEAD
: 类似于GET,但只返回响应头,不返回实体内容。用于获取元信息。
PUT
: 更新指定资源的内容,通常用于替换现有资源。
DELETE
: 删除指定资源。
OPTIONS
: 查询服务器支持哪些请求方法,通常用于CORS(跨域资源共享)预检请求。
TRACE
: 追踪请求-响应链路,用于诊断目的。通常不推荐使用,因为可能会泄露信息。
CONNECT
: 建立一个隧道至目标服务器,常用于HTTPS代理。
临时文件有关
【Git】
版本控制 .git
下的主页文件 .svn/
目录
Git 是一个开源的分布式版本控制系统,主要用于管理项目的代码版本。
主要由一个隐藏的 .git
目录控制
文件
HEAD
:指向当前分支的最新提交,通常是一个指向 refs/heads/<branch-name>
的引用。
config
:存储当前仓库的配置选项,如远程仓库地址和用户信息。
description
:用于描述仓库,主要在 GitWeb 等工具中使用。
COMMIT_EDITMSG
:保存最近一次提交的信息,供用户参考。
FETCH_HEAD
:记录从远程仓库获取的最新提交信息。
主页文件:index.php
index
目录
objects/
:存放所有 Git 对象,包括提交(commit)、树(tree)、文件内容(blob)和标签(tag)。这些对象以 SHA-1 哈希值命名,确保唯一性。
refs/
:包含指向分支、标签和远程引用的指针。具体子目录包括:
- heads/
:存储本地分支的最新提交。
- tags/
:存储标签对应的提交。
- remotes/
:保存远程分支的引用。
logs/
:记录所有引用(如分支和 HEAD)的历史变更,便于追踪操作记录。
- hooks/
:存放钩子脚本,可以在特定事件发生时自动执行自定义操作,如提交前检查代码格式等。
- info/
:存放一些额外的信息,如忽略模式(与 .gitignore
类似)。
【PHP 相关文件类型】
.phps
展示代码
可以通过把*.php
改为*.phps
,从而下载到php文件的源码
【vim】
.swp
因非正常退出而保留的文件
vim是一个强大的文本编辑器,广泛用于编程和系统管理。
.swp 文件的特征
隐藏文件:.swp
文件通常是隐藏的,使用 ls -a
命令可以查看。但是在生产环境中没有删除,也可以被下载到
没有删除的原因:如果你正常退出 Vim(使用 :wq
或 Shift + ZZ
),.swp
文件会被自动删除。如果没有正常退出,这个文件会保留在目录中。
在index,php
后面加.swp
【PHP 探针】
phpinfo信息有flag的环境变量
雅黑PHP探针:PHP探针内除了服务器的信息,还会有phpinfo,出题者在phpinfo中插入了flag的环境变量。
网站默认配置问题
后台没说就/admin
一下
【网站拨测】
域名TXT记录
工具网站:https://boce.aliyun.com/detect/dns
DNS记录:
A 记录:将域名映射到 IPv4 地址。
AAAA 记录:将域名映射到 IPv6 地址。
CNAME 记录:将一个域名指向另一个域名(别名)。
MX 记录:指定邮件交换服务器,用于接收发送到该域的电子邮件。
NS 记录:指定负责管理该域名的权威 DNS 服务器。
SOA 记录:提供有关 DNS 区域的信息,包括主 DNS 服务器、管理员邮箱、序列号等。
TXT 记录:用于存储任意文本信息,常用于验证和安全配置(如 SPF 和 DKIM)。
PTR 记录:用于反向 DNS 查询,将 IP 地址映射回域名。
CAA 记录:指定哪些证书颁发机构(CA)被允许为该域签发证书。
管理员信息公布于网站或技术文档中
密保问题的答案能公开查得
【KindEditor】
编辑器插入文件列出服务器文件列表
KindEditor是一款开源的在线HTML富文本编辑器。
文件空间显示服务器文件的原因:KindEditor中有一个选项允许用户浏览服务器上已上传的文件,这通常通过设置allowFileManager: true
来实现(这还是程序的默认设置?!)。当启用此功能时,用户可以访问服务器上的文件管理器,从而查看和选择已上传的文件。
解密相关
【base64】
编码decode
【AES】
加密过的密码,表单POST提交
【unicode】
编码decode得到隐藏页面提示
解码网站
(NSSCTF的在线工具,需要先登录):https://www.nssctf.cn/user/range/warjax/code
数据库
mdb文件(早期)
不用管那些乱码小方格,直接搜flag就好
评论 (0)