ctf web常用小姿势点

本文详细介绍了HTTP请求中的Content-Type字段含义及其与文件扩展名的关系,解释了URL编码的原理与应用,并列举了一些常见的HTML转义字符。这对于理解Web开发中的数据传输和展示方式至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0x00 HTTP Content-Type

文件扩展名Content-Type
.*application/octet-stream
.docapplication/msword
.gitimage/gif
.htmltext/html
.xmltext/xml
.icoimage/x-icon
.jpeimage/jpeg
.jpegimage/jpeg
.jpgimage/jpeg
.jpgapplication/x-jpg
.wmaaudio/x-ms-wma
.wmvvideo/x-ms-wmv
.avivideo/avi
.dllappliaction/x-msdownload
.exeapplication/x-msdownload
.mp3audio/mp3
.txttext/xml

0x01 ASCII表

此处为十进制的ASCII值

ASCII值控制字符备注
47~570~9
65~90A~Z*
97~122a~z*
特殊字符
32空格
33
34
35#
37%
39
40(
41)
42*
43+
44.
45-
46.
47/
63?
124|

0x02 URL编码

原则:使用安全的字符去表示不安全的字符(url中某些字符容易引起歧义)
原理:将需要转码的字符转为16进制,然后从右到左取4位(不足4位直接处理),每两位当作一位,前面加上%,编码成%XY格式。
(对于非ASCII字符,使用的编码字符集取决于当前文档使用的字符集)
例:
空格ASCII码是32,对应16进制是20,那么urlencode结果是%20
例:
盛,ASCII码是30427,对应16进制是76DB,那么urlencode结果是%76%DB
如果是使用escape函数进行编码则出现的结果为:%u76DB

特殊字符0xASCII码值备注
空格20*
#23*
%25*
27*
+2B*
!21
22
&26
|7C
(28
)29
*2A
=3D
?3F
~7E

0x03 常用HTML转义字符

字符十进制转义字符
&#34&quot
&%#38&amp
<&#60&lt
>&#62&gt
不断开空格&#160&nbsp
### CTF Web 安全常见知识 #### 漏洞类型 1. **SQL 注入** SQL注入是一种常见Web应用层攻击技术,通过将恶意的SQL语句插入到输入字段中执行。在CTF比赛中,常常涉及利用SQL注入获取敏感信息或绕过身份验证机制[^5]。 2. **XSS (跨站脚本攻击)** XSS漏洞允许攻击者向网页中注入客户端脚本代码,在其他用户的浏览器上运行。这种类型的攻击可以用来窃取Cookie、传播蠕虫病毒等[^4]。 3. **XML 外部实体(XXE)** 当应用程序处理不受信任的数据并解析XML文档时可能会发生此漏洞。如果服务器配置不当,则可能泄露本地文件或其他内部资源的内容。 4. **Session管理缺陷** 如果Web应用程序未能正确管理和保护用户会话(如Cookies),则可能导致未经授权访问账户的情况。例如,Flask框架中存在的session漏洞就是一个典型例子[^2]。 5. **路径遍历与文件包含** 这类问题通常发生在当程序未充分过滤用户提交的参数就用于构建文件路径的情况下。它可以让攻击者读取任意文件甚至执行命令。 6. **弱认证和授权错误** 不恰当的身份验证实现以及权限控制不足也会成为安全隐患之一。比如硬编码密码、默认凭证等问题都属于此类别。 7. **CSRF (跨站请求伪造)** CSRF使攻击者能以受害者名义发送HTTP请求给易受攻击的应用程序而无需获得受害者的许可。这可以通过诱导击链接等方式完成。 8. **缓冲区溢出和其他内存损坏漏洞** 虽然这类问题更常出现在二进制软件开发领域,但在某些情况下也可能影响Web服务端组件。 9. **不安全的对象直接引用(IDOR)** 应用程序暴露了对对象(如数据库记录)的直接引用,并且缺乏足够的访问控制措施来防止非法操作。 10. **信息泄漏** 敏感数据意外公开,包括但不限于API密钥、源码片段或是调试接口的存在都会构成风险。 #### 攻防技巧 - 对于开发者而言,应该遵循最小特权原则设计系统;定期审查代码质量,采用静态分析工具辅助检测潜在的安全隐患。 - 使用最新的库版本和技术栈,及时修补已知漏洞。 - 实施严格的输入验证策略,避免特殊字符未经转义即进入后台逻辑流程。 - 配置适当的安全头设置,增强前端页面防护能力。 - 加强日志监控力度,以便快速响应异常行为。 ```python import re def sanitize_input(user_input): # 清理掉所有非字母数字字符 cleaned_data = re.sub(r'\W+', '', user_input) return cleaned_data ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值