ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

手机那里找网盘电影资源啊115

2020-05-25 11:53:07  阅读:317  来源: 互联网

标签:HTTP 请求 网盘 报文 电影 115 SQL 服务器 POST


1.前言

SQL注入是Web安全层面最高危的漏洞之一,长期霸榜OWASP Top10首位,但是究竟什么事SQL注入?SQL注入又是怎么产生的?接下来本篇文章将详细介绍SQL注入产生的原理。本篇文章并没有描述具体的注入方法,而是侧重于对原理的描述,并分别分析了GET和POST注入。

 

2.实验环境搭建

在弄清SQL注入的基本原理之前,我们首先要来搭建实验的环境,我们需要一台L(Linux)NMP服务器或者W(Windows)NMP服务器,具体服务器的搭建可以参考我之前的文章《一篇文章告诉你如何搭建LNMP》,或者直接使用phpStudy完成搭建。

完成服务器的搭建后,我们要准备好测试用的数据库,执行下面的SQL命令完成数据库的建立

 

create database SQLInjection;

use SQLInjection

create table users(id int,username varchar(255),password varchar(255));

1

2

3

创建完成后,可以插入几条用于测试的数据

 

insert into users value(1,'Tom','123456');

insert into users value(2,'Alice','654321');

insert into users value(3,'Jerry','qwerty');

1

2

3

3.原理介绍

3.1 HTTP协议

HTTP协议是Web应用层协议,全称是超文本传输协议。这个协议是Web应用的核心,HTTP由两个程序实现,一个是客户端程序,通常是我们使用的浏览器,一个是服务器程序,运行在我们所访问俄的服务器上。这两个程序通过HTTP协议进行交流,HTTP定义了这些报文的语法、语义和时序。这里我们并不需要对HTTP协议做过深的了解。但是我们依旧需要明确以下几个知识点:

 

  1.客户端程序与服务器程序之间是通过报文进行交流的,通常是客户端请求数据,服务器响应客户端请求的数据;

  2.报文是包含了不同的字段,不同的字段代表的不同的信息

  3.报文中携带了客户端程序与服务器程序之间通信的数据

  4.数据在报文中的位置不同,服务器接收该数据的方式也不同

1

2

3

4

3.1.1 HTTP报文

客户端与服务器端的报文,根据发送方的不同被分为请求报文和响应报文,从客户端发往服务器端的被称为请求报文,从服务器端发往客户端的被称为响应报文。请求报文和响应报文都有不同的固定格式,请求报文的一般报文格式如下

在这里插入图片描述

 

响应报文的一般格式如下

在这里插入图片描述

 

因为本文主要主要讲述的是SQL注入,SQL注入我们是无法操作服务器的,只能通过影响从客户端发送的请求报文进而从服务器获取数据,所以我们只需要了解请求报文,在上面的请求报文结构图中,我们可以看到请求报文主要包含请求行、首部行、空行、实体体4个模块。各个模块的功能说明如下

 

模块名 说明

请求行 方法 说明传递数据的方法

URL 指明想要访问的文件

版本 协议的版本HTTP /1.1

首部行 首部行中包含众多的字段,不同的报文可能会携带不同的字段,在请求报文中主要用来说明客户端的相关信息

空行  

实体体 当使用POST方式传递数据的时候,该模块会填充POST想要传递的数据

在前面的内容中不断的提到数据的传递,数据传递的方法会在请求行的方法中说明,主要有4种数据传递的方法,这里只介绍两种与SQL注入有关的

 

3.1.2 GET方法

当请求报文的方法字段被设置为GET的时候,表明该请求报文使用GET方式进行传参。通常GET方法是用来获取服务器上的指定文件,比如

 

GET /index.php HTTP/1.1

1

上面的请求行用来获取网站根目录下的index.php文件,当站点接收到该请求后会将用户请求的文件内容进行解析,然后通过响应报文响应用户的请求。但是也会遇到某些文件需要接收参数的情况,客户端程序会使用下面的方式对文件完成传参

 

GET /index.php?id=1 HTTP/1.1

1

这样服务器上的文件便能够接受id=1的传参。然后根据用户的传参作出响应的处理。

 

3.1.3 POST方法

当请求报文的方法字段被设置为POST的时候,表明该请求报文使用POST方式进行传参。通常POST方式用来提交用户输入的表单信息,这些协议存放在请求报文的实体体中。比如

 

POST /user/login.html HTTP/1.1

//......

user=admin&pass=admin

1

2

3

上面是一个用户登录报文的示例,通过POST方式提交用户输入的用户名和密码。

 

3.1.4 从页面到报文

标签:HTTP,请求,网盘,报文,电影,115,SQL,服务器,POST
来源: https://www.cnblogs.com/iheidh/p/12956063.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有