笔记26
Abstract: 针对 HTTP的协议基础进行了简单的学习,掌握 HTTP 相关内容, 安装 burpsuite 软件,熟练使用该软件。对 PDO模式下防止 SQL 注入的理解。
Table of Contents
HTTP协议基础
计算机网络模型基础
OSI 模型总共分为七层,从下到上分别是:物理层、数据链路层、网络层、运输层、会话层、表示层和应用层。
TCP/IP 模型分为五层,从下到上是:物理层、链路层、网络层、运输层和应用层。
OSI模型和TCP/IP模型
OSI 模型 |
TCP/IP 模型 |
各层的解释 |
|---|---|---|
| 应用层 | 应用层 | 为应用程序提供服务 |
| 表示层 | 应用层 | 数据格式转化、数据加密 |
| 会话层 | 应用层 | 建立、管理和维护会话 |
| 传输层 | 传输层 | 建立、管理和维护端到端的连接 |
| 网络层 | 网络层 | IP 选址及路由选择 |
| 数据链路层 | 数据链路层 | 提供介质访问和链路管理 |
| 物理层 | 物理层 | 物理层 |
- 过程如下:
- 应用层数据,先按照运输层协议标准,封装到运输层数据里(数据段);
- 接着运输层的数据,会按照网络层协议的标准,封装到网络层数据里(数据包/报文);
- 接着这些数据包会按照链路层的协议标准,封装链路层数据里(帧);
- 这些数据帧,按照物理层的电气特性,转换为网络中
0101比特流发送出去 - 网络会把这些流数据,不断地拆封再拆封,直到送到目标主机,然后由目标主机一层一层拆封数据,进行反解析,最终完成一次数据传递。
| 层数 | 作用 |
|---|---|
| 物理层 | 规定电气特性。如调制解调器、光导纤维等 |
| 数据链路层 | 有 ARQ 、PPP等协议,数据单元为帧,典型设备有:网卡/网桥/交换机 |
| 网络层 | 有IP/ICMP等协议,数据单元为数据包,典型设备为:路由器/防火墙/多层交换机 |
| 传输层 | 有TCP/UDP等协议,数据单元为数据段,典型设备有:进程和端口 |
| 应用层 | 有DHCP/FTP/HTTP等协议,典型设备有:应用程序(FTP/SMTP/HTTP) |
越往高走,越偏向软件化。
HTTP协议
HTTP 协议是超文本传输(转移)协议,基于 TCP/IP 通信协议来传递数据,是一个属于应用层的面向对象的协议。
常用状态码
| 状态码 | 意义 |
|---|---|
| 200 OK | 从客户端发来的请求在服务器端被正常处理 |
| 204 No Content | 服务器接收的请求已成功处理,但在返回响应报文中不含实体的主体部分 |
| 301 Moved Permanently | 永久性重定向 |
| 302 Found | 临时性重定向 |
| 304 Not Modified | 客户端发送附带条件请求时,服务器端允许请求访问资源,但未满足条件的情况 |
| 400 Bad Request | 请求报文中存在语法错误 |
| 403 Forbidden | 对请求资源的访问被服务器拒绝 |
| 404 Not Found | 服务器上无法找到请求的资源 |
| 500 Internal Server Error | 服务器端在执行请求时发生了错误 |
BurpSuite
使用burpsuite抓取新闻管理系统的数据包
新闻初始界面

点击 forward

点击用户界面

注册成功后,登录

评论

读取新闻

进入个人信息页面

PDO模式下防止SQL注入
使用 PDO 的 prepare 方式,主要是提高 SQL 模板查询性能、阻止 SQL 注入。