各位小白帽们好

又到了新一期的知识点咯

在正片开始之前再次提醒一下各位

因为联盟管理的需要

本周五(12月4日)5点半将会对各位在平台的答题分数进行统计

筛选部分排名靠前的童鞋作为核心的正式会员

考核压力来了大家是不是有点紧张呢

只要积极学习知识

积极参与答题

向本AI卖萌要flag

相信大家肯定没有问题的啦

PS.今天我们又上新了几题杂项题,欢迎挑战


HTTP的哲学三问——HTTP请求头

在先前的知识点中

我们都关注了HTTP请求的实际内容

即HTTP请求体的内容

今天我们抛开请求的内容

去更加关注于服务器到底如何去识别

请求者的“身份”信息

而包含这些信息的部分

即是我们的HTTP请求头了

我们可以通过Burp随便抓一个包进行研究

这是一个百度搜索的请求

因为使用GET请求

所以请求体几乎是空的

但是可以看到请求头的内容还是很丰满的

下面让我康康让我们研究一下常见的HTTP请求头的内容

是什么?

GET/POST:写在请求最前面的内容,指出是什么类型的请求,会影响后续请求的读取

Content-type:表示请求体的内容格式,通常POST请求中包含

Content-Length:表示整个请求的长度,POST请求中包含

到哪去?

资源相对地址:表示要请求资源的相对于WEB根目录的地址

Host:主机的域名/IP地址和端口号,与资源的相对地址组成URL

我是谁?

User-agent:表示客户端的种类,常见的有Chrome、Firefox、Safari等,同时还显示了客户端的系统信息(加起来一大串的根本背不了,每次要用就抄吧)

Cookies:客户端存储的“身份”信息,包括平常的用户登录凭证、部分浏览记录信息等可能会存在这里(很多情况下都是加密的),以 键=值; 的方式发送

我从哪里来?

Referer:发起请求时所在的URL

X-Forwarded-For、X-Real-IP:表示请求客户端的IP地址,常用于反向代理等场景

Accept-Language:表示客户端接收的语言,多语言网站会根据这个调整转跳的位置,一定意义上反映了自己的国籍等信息

以上为常见的一些HTTP请求头字段

实际上HTTP协议还定义了更多的字段

详细可以百度一下你就知道搜索一下相关的材料

或者翻阅HTTP的规范文档即可

因为这些字段都是明文打印在请求中的

随时可以通过抓包修改等方式

修改其中的一些字段

而达到想要的目的

譬如想要测试微信公众号的部分功能时

部分服务器可能限制的微信内置浏览器访问

通过修改User-agent即可进行绕过

又比如修改客户端IP地址、Accept-Language等字段

可以方便浏览到同个网站其他国家/语言的页面

建立文化自信

当然如果清楚Cookies的内容含义和加密方式(有些网站根本不加密)的话

甚至可以修改Cookies的内容

达到越权访问,甚至直接访问后台

这个就有待各位积极研究和发现了


那么在讲完今天的知识点后

我们来讲讲我们的练习题

WEB题土著管理员

首先审题

看着就很有让人渗透进去的欲望呢(并不)

但是页面除了这点内容之外

其他什么都没有了

没!关!系!

我们还能查看源代码

一段明显的注释提示

两个=号暗示了它base系列加密(通常是base64)的身份

解密可知管理员密码(就不告诉你自己去解!)

这么简单粗暴的提示

请给我来一打

得知密码后我们尝试以admin为用户名进行登录

然后发现

不,警察叔叔听我说

不是这样的

Anyway,这也是一个提示,“本地管理员”登录

我只要假装我是一个本地人

那不就是可以作为本地管理员登录了?

于通过burp抓包

加入X-Forwarded-For字段

值为本地环回地址127.0.0.1

发送请求即可获得flag

小手一抖分数到手

大家如果还没有做出的话

记得一定要尝试一下这题哦

那么我们下期再见

safari post 请求接收不到_我是谁?我在哪?我要到哪去?——HTTP请求头相关推荐

  1. nginx的请求接收流程(二)

    在ngx_http_process_request_line函数中,解析完请求行之后,如果请求行的uri里面包含了域名部分,则将其保持在请求结构的headers_in成员的server字段,heade ...

  2. .net post提交后接收返回数据_读完这一篇IT程序员终于明白post和get的区别

    IT程序员:对于那些月薪三万以下,自称IT工程师的码农们,其实我们从来没有把他们归为我们IT工程师的队伍.他们虽然总是以IT工程师自居,但只是他们一厢情愿罢了. ​ 此话一出,不知激起了多少(码农)程 ...

  3. nginx 子请求接收响应_Nginx详解其原理

    Nginx进程模型分析  在介绍Nginx的进程模型之前我们先来给大家解释下一些常见的名词,这能辅助我们更好的了解Nginx的进程模型.作为Web服务器,设计的初衷就是为了能够处理更多的客户端的请求, ...

  4. 一个请求多个响应_一个TCP连接到底可以发多少个HTTP请求?

    曾经有这么一道面试题:从 URL 在浏览器被被输入到页面展现的过程中发生了什么? 相信大多数准备过的同学都能回答出来,但是如果继续问:收到的 HTML 如果包含几十个图片标签,这些图片是以什么方式.什 ...

  5. nginx会将post请求转为get么_前端角度谈GET与POST的区别

    GET与POST 参数: GET传递的参数只能带URL后面,文本格式QueryString,各浏览器一般有长度限制,一般认为是2083,如果有中文字符更短.提交到服务器端的数据量小.参考: https ...

  6. nginx的请求接收流程(一)

    今年我们组计划写一本nginx模块开发以及原理解析方面的书,整本书是以open book的形式在网上会定时的更新,网址为http://tengine.taobao.org/book/index.htm ...

  7. jquery的ajax异步请求接收返回json数据

    jquery的ajax异步请求接收返回json数据方法设置简单,一个是服务器处理程序是返回json数据,另一种就是ajax发送设置的datatype设置为jsonp格式数据或json格式都可以.这篇文 ...

  8. Java使用get请求接收List集合数据(json)并导出报表

    Java使用get请求接收List集合数据(json)并导出报表 文章目录 Java使用get请求接收List集合数据(json)并导出报表 前言 一.实现分析 二.Maven依赖(基于EasyExc ...

  9. BB10请求接收NFC事件

    1,初始化BPS 2,请求接收NFC事件 #include <bps/bps.h> #include <nfc/nfc_bps.h> ...                   ...

最新文章

  1. 0011_练习题d1
  2. NYOJ 608 畅通工程 并查集
  3. MTM:matlab实现2参数解析
  4. python 单点登录_清华园计算机系联合推出的Java+Python视频曝光
  5. Educational Codeforces Round 93 (Rated for Div. 2)
  6. SpringSecurity使用SpringBoot简单使用
  7. 从零搭建一个 Spring Boot 开发环境!Spring Boot+Mybatis+Swagger2 环境搭建
  8. 疯狂Java学习笔记(72)-----------大话程序猿面试
  9. python用什么编译器-python应选什么编译工具
  10. Linux内核线程(一)
  11. 如何用python合并文本文档_如何利用python合并文本
  12. ❤️字节跳动8年测试经验,彻夜无眠整理的40道自动化测试面试题(附精准答案),爆肝2W字❤️
  13. mediawiki php7,centos7搭建mediawiki
  14. 猜字游戏python程序_python 猜字游戏
  15. Android 串口蓝牙通信开发Java版本
  16. 如何完整保存离线网页
  17. Linux 奔腾4,我如何在Pentium 4计算机上安装Ubuntu 64位?
  18. lunces_CES降温 汽车巨头回归底特律
  19. spring Boot Configuration Annotation Processor not fount in classpath
  20. NodeMCU连接SD读卡器

热门文章

  1. NOI2003文本编辑器
  2. mysql like 命中索引
  3. 数据库的三大范式和事物
  4. python的沙盒环境virtualenv(二)--简单使用
  5. 对Android 开发者有益的 40 条优化建议(转)
  6. Linux文件分割与合并:splitcat(转载)
  7. asp.net 防注入
  8. 三、概念数据模型CDM(Conceptual Database Model )
  9. Maven 的classifier的作用
  10. 标定(二)----------双目相机与IMU联合标定(工具箱使用方法——Kalibr)