基础入门-HTTP数据包&Postman构造&请求方法&请求头修改&状态码判断

Ais0329 / 2023-08-24 / 原文

基础入门-HTTP数据包&Postman构造&请求方法&请求头修改&状态码判断

目录
  • 基础入门-HTTP数据包&Postman构造&请求方法&请求头修改&状态码判断
  • 正常的访问过程
  • 有代理的访问过程
  • request请求头里面含有的元素
  • response响应头里面含有的元素
  • 方法
    • get:
    • post:
    • head:
    • put:
    • trace:
    • delete:
    • option:
    • connect :
  • 参数
  • Response状态码
    • 作用:
    • 1xx:
    • 2xx:
    • 3xx:
    • 4xx:
    • 5xx:
  • 案例-文件探针&登录爆破
    • 使用bp的过程
  • 工具-Postman自构造使用
  • 数据包使用的思路点:

正常的访问过程

1692878682405

有代理的访问过程

1692878709840

request请求头里面含有的元素

1692878758826

登陆状态和未登录状态的cookie是不一样的,当获取了cookie,用别的机器登陆时修改数据包,添加cookie就可以登陆后台

response响应头里面含有的元素

1692878786315

方法

get:

向特定资源发出请求(请求指定页面信息,并返回实体主体);

常规请求-Get

1692878829537

get请求是没有正文的,host是网站,url是路径

这时候可以改掉那个路径地址,这样虽然网站的url不变,但是页面会变成修改之后的路径地址

post:

向指定资源提交数据进行处理请求(用户登录、提交表单、上传文件),又可能导致新的资源的建立或原有资源的修改;

1692878849230

post方式有正文,也就是说有提交的数据

与服务器索与get请求一致的相应,响应体不会返回,获取包含在小消息头中的原信息(与get请求类

似,返回的响应中没有具体内容,用于获取报头);

put:

向指定资源位置上上传其最新内容(从客户端向服务器传送的数据取代指定文档的内容),与post的区别是put为幂等,post为非幂等;

trace:

回显服务器收到的请求,用于测试和诊断。trace是http8种请求方式之中最安全的l

delete:

请求服务器删除request-URL所标示的资源*(请求服务器删除页面)

option:

返回服务器针对特定资源所支持的HTML请求方法 或web服务器发送*测试服务器功能(允许客户 端查看服务器性能);

connect :

HTTP/1.1协议中能够将连接改为管道方式的代理服务器

参数

演示:

1、UA头-设备平台

有些网站会检测ua头,如果不是对应设备的ua头,就可能会显示不正常,或者无法处理

2、Cookie-身份替换

当获取了cookie,用别的机器登陆时修改数据包,添加获取的cookie就可以登陆后台

Response状态码

作用:

1、数据是否正常

2、文件是否存在

3、地址自动跳转

4、服务提供错误

注:容错处理识别

1xx:

指示信息—表示请求已接收,继续处理。

2xx:

成功—表示请求已经被成功接收、理解、接受。

200 OK:

客户端请求成功

说明文件存在

有时候访问一个文件夹,也会提示200,那是因为这个文件夹设置了索引,会默认打开路径下的一个文件

3xx:

重定向—要完成请求必须进行更进一步的操作。

说明文件可能存在

出现的原因:

1、容错处理,访问出现错误就自动跳转某个页面,这种情况就是访问错误,文件不存在;

2、访问某个文件,自动触发跳转,这个情况就是文件存在;

301 redirect:

页面永久性移走,服务器进行重定向跳转;

302 redirect:

页面暂时性移走,服务器进行重定向跳转,具有被劫持的安全风险;

4xx:

客户端错误—请求有语法错误或请求无法实现。

400 BadRequest:由于客户端请求有语法错误,不能被服务器所理解;

说明文件不存在

401 Unauthonzed:

请求未经授权。

403 Forbidden:

服务器收到请求,但是拒绝提供服务。通常用来判断文件夹是否存在

404 NotFound:

请求的资源不存在,例如,输入了错误的URL;

5xx:

服务器端错误—服务器未能实现合法的请求。

500 InternalServerError:

服务器发生不可预期的错误,无法完成客户端的请求;

说明文件可能存在

503 ServiceUnavailable:

服务器当前不能够处理客户端的请求

案例-文件探针&登录爆破

实验:

1、页面正常访问

2、网站文件探针

3、后台登录爆破

使用bp的过程

用bp抓包之后,发送到intruder,然后

image-20230824162618485

在路径后面随便输入一个字母,点击右边的ADD,就可以把选中的字母变成可替换的,然后选择上面的payload,添加字典,也就可以进行路径扫描了

image-20230824163302236

在第二个选项里面,就可以添加,可以手动添加,也可以添加文件

image-20230824163007841

在这里可以设置线程

image-20230824163411237

注意这里可能会对路径自动编码,如果发现错误,记得取消

还可以用扫描工具,御剑

image-20230824164226793

这里可以设置模式,也就是如果设置了两个变量,就选择最后那个,就可以针对两个变量进行字典的添加和尝试

image-20230824164421450

在这里可以设置自动加密,选择了md5加密,也就是对于第二个变量处,针对编辑好的字典,进行了md5加密后再发送

工具-Postman自构造使用

https://zhuanlan.zhihu.com/p/551703621

postman:写http请求的一个工具

在这里可以编辑数据包,我们可以把cookie添加进去,从而实现每一步都是登陆访问

image-20230824171126210

sql注入的时候,会用到的,如果直接用链接,失败的原因就是采用了sqlmap的访问头,所以改成第二个就是自己的访问头,就会成功

数据包使用的思路点:

1、安全测试部分测试需要数据包一致

2、通过数据包的修改来测试安全问题