HTTP/S数据包

1.  request请求数据包

Request 对象用于接收客户端浏览器提交的数据,有五个集合:

1)QueryString:用以获取客户端附在url地址后的查询字符串中的信息。

2)Form:用以获取客户端在FORM表单中所输入的信息。(表单的method属性值需要为POST)

3)Cookies:用以获取客户端的Cookie信息。

4)ServerVariables:用以获取客户端发出的HTTP请求信息中的头信息及服务器端环境变量信息。

5)ClientCertificate:用以获取客户端的身份验证信息

2.  response返回数据包

Response对象用于动态响应客户端请示,控制发送给用户的信息,并将动态生成响应。Response对象提供了一个数据集合cookie,它用于在客户端写入cookie值。

response的方法:

Write:向客户端发送浏览器能够处理的各种数据,包括:html代码,脚本程序等。

 Redirect:response.redirect("url")的作用是在服务器端重定向于另一个网页。

 End用来终止脚本程序。

 Clear:要说到Clear方法,就必须提到response的Buffer属性,Buffer属性用来设置服务器端是否将页面先输出到缓冲区。

 Flush:当Buffer的值为True时,Flush方法用于将缓冲区中的当前页面内容立刻输出到客户端。

3.  proxy代理服务器(burpsuite类似代理服务器)

4.  HTTP的简要通信过程

建立连接(tcp)---发送请求数据包(套接字)---返回响应数据包---关闭连接

同理,https是HTTP的基础上增加了密钥和证书

Request请求数据包数据格式

1.Request 请求数据包数据格式

1.请求行:请求类型/请求资源路径、协议的版本和类型

2.请求头:一些键值对,浏览器与 web 服务器之间都可以发送,特定的某种含义

3.空行:请求头与请求体之间用一个空行隔开;

4.请求体:要发送的数据(一般 post 提交会使用)

HTTP 规划定义了 8 种可能的请求方法:

GET:检索 URL 中标识资源的一个简单请求

HEAD:与 GET 方法相同,服务器只返回状态行和头标,并不返回请求文档

POST:服务器接受被写入客户端输出流中的数据的请求

PUT:服务器保存请求数据作为指定 URL 新内容的请求

DELETE:服务器删除 URL 中命令的资源的请求

OPTIONS:关于服务器支持的请求方法信息的请求

TRACE:web 服务器反馈 Http 请求和其头标的请求

CONNECT :已文档化,但当前未实现的一个方法,预留做隧道处理

2.以百度首页来分析

#请求行---请求方法、请求 URL 和 HTTP 版本,它们用空格分享

请求行方法为GET,URLwww.baidu.com/home/xman/data/tipspluslist?indextype=manht&_req_seqid=0xcfa95b6d000d1ef1&asyn=1&t=1629891539520&sid=31254_26350,版本HTTP1.1

#请求头---由关键字/值对组成,每行一对,关键字和值用冒号分享。请求头标通知服务器腾于客户端的功能和标识。

HOST: 主机或域名地址

Accept指浏览器或其他客户可以接爱的 MIME 文件格式。Servlet 可以根据它判断并返回适当的文件格式---text/plain, */*; q=0.01

User-Agent:是客户浏览器名称---Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0

Host:对应网址 URL 中的 Web 名称和端口号。--- www.baidu.com

Accept-Langeuage:指出浏览器可以接受的语言种类,如 en 或 en-us,指英语。--- zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

connection:用来告诉服务器是否可以维持固定的 HTTP 连接。http 是无连接的,HTTP/1.1 使用 Keep-Alive为默认值,这样,当浏览器需要多个文件时(比如一个 HTML 文件和相关的图形文件),不需要每次都建立连接--- keep-alive

Cookie:浏览器用这个属性向服务器发送 Cookie。Cookie 是在浏览器中寄存的小型数据体,它可以记载和服务器相关的用户信息,也可以用来实现会话功能。--- BAIDUID=3B08955094D4A494F23ED769CC957540:FG=1; BIDUPSID=3B08955094D4A4948DB87E26AB1AC1C8………

Referer : 表 明 产 生 请 求 的 网 页 URL 。这个属性可以用来跟踪 Web 请求是从什么网站来的--- https://www.baidu.com/?tn=62095104_44_oem_dg

Content-Type:用来表名 request 的内容类型。可以用 HttpServletRequest 的 getContentType()方法取得。

Accept-Charset:指出浏览器可以接受的字符编码。英文浏览器的默认值是 ISO-8859-1

Accept-Encoding:指出浏览器可以接受的编码方式。浏览器在接收到 Web 响应之后先解码,然后再检查文件格式--- gzip, deflate, br

#空行---请求头与请求体之间用一个空行隔开;最后一个请求头标之后是空行,发送回车符和退行,通知服务器以下不再有头标。

#请求体---要发送的数据(一般 post 提交会使用);例:user=123&pass=123。使用 POST 传送,最常使用的是 Content-Type 和 Content-Length 头标。

Response返回数据包数据格式

1. Response 请求数据包数据格式

一个响应由四个部分组成;状态行、响应头标、空行、响应数据。

1.状态行:协议版本、数字形式的状态代码和状态描述,个元素之间以空格分隔

2.响应头标:包含服务器类型、日期、长度、内容类型等

3.空行:响应头与响应体之间用空行隔开

4.响应数据:浏览器会将实体内容中的数据取出来,生成相应的页面

HTTP 响应码:

1xx:信息,请求收到,继续处理

2xx:成功,行为被成功地接受、理解和采纳---200存在文件

3xx:重定向,为了完成请求,必须进一步执行的动作---302可能存在

4xx:客户端错误---403存在文件夹,404不存在文件及文件夹

5xx:服务器错误---500均可能存在

2.以百度首页为例子

#状态码

#响应头标---指出服务器的功能,标识响应数据的细节

#空行---最后一个响应头标是空行

#响应数据

3.通过御剑后台扫描工具扫描

#扫描百度

#扫描本地网站

5.  通过burpsuite抓包分析---www.xiaodi8.com和百度

#返回成功---200

#返回失败---404

Ctf或者实际应用中部分考题解析

地址:https://www.mozhe.cn/   墨者学院

  1. 来源页伪造

启动靶场环境,

点击访问,

点:

弹窗提醒只允许从google.com访问。

先来抓包

从提示中得到是referer伪造,直接把referer地址改为google.com即可

放包

成功!!!

  1. 浏览器信息伪造

开启环境

弹窗提示请使用iphone手机,在2g网络下登录微信查看

提示抓包分析除了判断浏览器类型还判断了微信特有的NetTtpe

NetTtpe是什么,先搜索一下

从微信6.0开始,其内嵌的浏览器在User Agent字符串中增加了NetType字段用于标识客户端(手机)当前的网络环境,经测试,该字段至少有以下3个取值:

  1. NetType/WIFI
  2. NetType/2G
  3. NetType/3G+

分别对应于Wifi、2G、3G以上网络环境。因此,Web服务器可以据此识别客户端网络环境并提供有针对性的内容。

测试数据iPhone 5 / iOS 8.0 / Wifi
Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12A365 MicroMessenger/6.0 NetType/WIFIiPhone 5 / iOS 8.0 / 2G
Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12A365 MicroMessenger/6.0 NetType/2GiPhone 5 / iOS 8.0 / 3G
Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12A365 MicroMessenger/6.0 NetType/3G+红米 / Android 4.2.2 / Wifi
Mozilla/5.0 (Linux; U; Android 4.2.2; zh-cn; 2014011 Build/HM2014011) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 MicroMessenger/6.0.0.50_r844973.501 NetType/WIFI小米3 / Android 4.4.2 / Wifi (微信5.3还没有提供 NetType 字段)
Mozilla/5.0 (Linux; Android 4.4.2; MI 3 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36 MicroMessenger/5.3.0.51_r697493.440魅族17安卓11
User-Agent: Mozilla/5.0 (Linux; Android 11; meizu 17 Pro Build/QKQ1.200127.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/86.0.4240.99 XWEB/3193 MMWEBSDK/20220105 Mobile Safari/537.36 MMWEBID/7592 MicroMessenger/8.0.19.2080(0x2800137A) Process/toolsmp WeChat/arm64 Weixin NetType/WIFI Language/zh_CN ABI/arm64

抓包

复制第二条,替换User-Agent

放包

成功!!!!

  1. HTTP动作练习

启动环境

URL过长,向浏览器传输数据不应该使用get方法,而是使用post

Request请求包由:1.请求行2.请求头3.空行4.请求体组成

Post传输的数据在最后面,最常使用Content-Type 和 Content-Length 头标

提示通过post方式提交“content”数据内容,抓包

用post方式提交

  1. 投票系统程序设计缺陷分析

限制了每一个IP只能投一次票,

方法一:使用代理服务器,用工具改变数据包的origin的ip地址,循环发送数据包。

方法二:采用开发程序员PHPip地址检验的绕过---HTTP_X_FORWARDED_FOR

抓包,在请求头中添加代理服务器X-Forwarded-For

发送到intruder模块,

设置两个数值变量

开始攻击,攻击差不多了直接结束攻击,不用跑完,拿到key

小迪安全-Day2数据包拓展相关推荐

  1. WEB安全_基础入门_数据包拓展,安装Burp Suite,练习来源页伪造、浏览器信息伪造、HTTP动作练习、投票系统程序设计缺陷分析

    数据包拓展 一.网站解析对应 1.简要网站搭建过程: 教学地址 2.涉及到的攻击层面? 源码,搭建平台,系统,网络层等 3.涉及到的安全问题? 目录,敏感文件,弱口令,IP以及域名 HTTP/S数据包 ...

  2. B站小迪安全学习笔记第2天-数据包拓展

    网站解析对应 1.简要网站搭建过程 2.涉及到的攻击层面?(源码,搭建平台,系统,网络层等) 3.涉及到的安全问题?(目录,敏感文件,弱口令,IP 及域名等) 这几个不知道为什么开头提及了一下,就一笔 ...

  3. 有关数据包拓展基础知识

    HTTP/S数据包 1. request请求数据包 Request 对象用于接收客户端浏览器提交的数据,有五个集合: QueryString:用以获取客户端附在url地址后的查询字符串中的信息. Fo ...

  4. 第2天:基础入门~数据包拓展

    数据包的概念以及修改数据包 网站解析对应 HTTP/S数据包 HTTP与HTTPS的具体区别 HTTP简要通信过程 HTTPS简要通信过程 Request请求数据包数据格式 请求行 请求头 空行 请求 ...

  5. web安全入门day02——数据包拓展

    目录 一.网站解析对应 二.HTTP/S数据包 1.浏览器-网站服务器 2.浏览器-代理-网站服务器 三.http和https的区别​ 1.区别 2.http 3. https (1)工作原理: ① ...

  6. 2020小迪安全第二天笔记-数据包相关知识

    笔记来源视频:[小迪安全]web安全|渗透测试|网络安全(6个月线上培训全套)_哔哩哔哩_bilibili http和https区别: HTTP(三层):HTTP.TCP.IP 抓到的数据是明文 ht ...

  7. Day2多种抓包工具介绍以及使用封包监听工具找到挑战数据包实现发送数据包进行挑战

    工具相关证书安装指南 Charles https://blog.csdn.net/weixin_45459427/article/details/108393878 Fidder https://bl ...

  8. 应用层HTTP数据包的截获与还原技术的实现

    摘要:在因特网日益发展壮大的今天,万维网在其上的通信量已经超过90%,万维网信息的安全问题已经越来越被人们所重视,而作为万维网应用层核心协议的http协议是基础.当网络发生异常时,对网络上传输的数据进 ...

  9. gta5 android版数据包,gta5手机版数据包和apk

    gta5手机版数据包和apk是一款独特写实风格的洛杉矶大逃杀类的探索游戏.扮演着当地的一个居民,在本地黑帮势力的压迫下不得不走上反抗的道路,与来自于各个地方的罪恶者们进行战斗和厮杀,打败他们,最终获得 ...

最新文章

  1. SqlServer 索引
  2. java实现第三方网页获取微信用户授权后的微信用户基本信息
  3. tomcat内存溢出
  4. RancherOS v1.5.0发布
  5. ubuntu 13.04 找回丢失的grub2
  6. Cannot return from outside a function or method.
  7. git撤销单个文件的修改_大牛总结的 Git 使用技巧,写得太好了
  8. 企业如何选择数据分析架构?——谈谈3种架构的利弊
  9. mysql user表空_Mysql User表为空
  10. pytorch---模型加载与保存(5)使用在不同模型参数下的热启动模式
  11. ubuntu安装注意事项:
  12. Linux进程地址空间布局
  13. C语言 打印乘法口诀表
  14. [SPSS]典型相关分析的SPSS实现——开卷和闭卷学科成绩的典型相关分析实例
  15. 计算机资源管理器经常停止运行,win7资源管理器反复停止工作的解决方法[多图]...
  16. 今日头条信息流投放:今日头条怎么开户?多少钱?投放需要注意什么
  17. 利用区块链技术解决科研问题的前景
  18. 【计算机网络】因特网概述
  19. Python汉英/英汉翻译(百度API/有道API)
  20. 你当前无权访问该文件夹 解决你当前无权访问该文件夹拒绝你访问该文件夹

热门文章

  1. 使用最大堆和最小堆实现中位数的查找
  2. 结构体NSPoint、NSRect、与NSSize或CG开头的详解
  3. 判断DataFrame中的每行是否与其他行一样(重复)df.duplicated()
  4. 满足大别墅无线组网 这套无线路由产品竟毫不吃力!
  5. MyBatis-Plus 的妙用(总章节目录)
  6. Sql Sugar 基本增删改查
  7. sql的DDL,DML,DQL,DCL,TCL语言
  8. 金蝶EAS登录获取用户相关信息失败、EAS默认用户名、密码
  9. java list = list,关于Java:list list = NealAlayList.()的原因;
  10. MAC使用技巧之Apple苹果机开关机技巧及快捷键总结