当前位置:网站首页>02 基础入门-数据包拓展
02 基础入门-数据包拓展
2022-07-06 12:17:00 【里丘~班诺】
一、网站解析对应
涉及到的攻击层面?(源码,搭建平台,系统,网络层等)
涉及到的安全问题?(目录,敏感文件,弱口令,IP及域名等)
二、HTTP/S数据包
Request请求数据包
Response返回数据包
proxy代理服务
HTTP简要通信过程
建立连接(tcp)——>发送请求数据包(套接字)——>返回响应数据包——>关闭连接
同理,https是HTTP的基础上增加了密钥和证书
1.浏览器建立与web服务器之间的连接
2.浏览器将请求数据打包(生成请求数据包)并发送到web服务器
3.web服务器将处理结果打包(生成响应数据包)并发送给浏览器
4.web服务器关闭连接
三、Request请求数据包数据格式
- 请求行:请求类型/请求资源路径、协议的版本和类
- 请求头:一些键值对,浏览器与web服务器之间都可以发送,特定的某种含义
- 空行:请求头与请求体之间用一个空行隔开;
- 请求体:要发送的数据(一般post提交会使用);例:user=123&pass=123
1.请求行
请求行由三个标记组成:请求方法、请求URL和HTTP版本,它们用空格分享。
例如:以百度首页来分析
请求行 GET
URL www.baidu.com/home/xman/data/tipspluslist?indextype=manh&_regseqid=0xcfa95b6d000d1ef1&asyn=1&
t=1629891539520&sid=31254_2635
HTTP版本 HTTP1.1
HTTP 规划定义了8种可能的请求方法:
- GET:检索URL中标识资源的一个简单请求
- HEAD:与GET方法相同,服务器只返回状态行和头标,并不返回请求文档
- POST:服务器接受被写入客户端输出流中的数据的请求
- PUT:服务器保存请求数据作为指定URL新内容的请求 DELETE:服务器删除URL中命令的资源的请求
- DELETE:服务器删除 URL 中命令的资源的请求
- OPTIONS:关于服务器支持的请求方法信息的请求
- TRACE:web服务器反馈Http请求和其头标的请求
- CONNECT :已文档化,但当前未实现的一个方法,预留做隧道处理
2.请求头
由关键字/值对组成,每行一对,关键字和值用冒号分享。请求头标通知服务器腾于客户端的功能和标识。
- HOST: 主机或域名地址
- Accept:指浏览器或其他客户可以接爱的MIME文件格式。Servlet可以根据它判断并返回适当的文件格式
- User-Agent:是客户浏览器名称
- Host:对应网址URL中的Web名称和端口号
- Accept-Langeuage:指出浏览器可以接受的语言种类,如en或en-us,指英语
- connection:用来告诉服务器是否可以维持固定的HTTP连接。http是无连接的,HTTP/1.1使用Keep-Alive为默认值,这样,当浏览器需要多个文件时(比如一个HTML文件和相关的图形文件),不需要每次都建立连接
- Cookie:浏览器用这个属性向服务器发送Cookie。Cookie是在浏览器中寄存的小型数据体,它可以记载和服务器相关的用户信息,也可以用来实现会话功能
- Referer:表明产生请求的网页URL。这个属性可以用来跟踪Web请求是从什么网站来的
- Content-Type:用来表名request的内容类型。可以用HttpServletRequest的getContentType()方法取得
- Accept-Charset:指出浏览器可以接受的字符编码。英文浏览器的默认值是ISO-8859-1
- Accept-Encoding:指出浏览器可以接受的编码方式。编码方式不同于文件格式。浏览器在接收到Web响应之后先解码,然后再检查文件格式--- gzip, deflate, br
# Request Headers
POST /adduser HTTP/1.1 #使用post传送
Host: localhost:8030
Connection: keep-alive
Content-Length: 16
Pragma: no-cache
Cache-Control: no-cache
Origin: chrome-extension://fdmmgilgnpjigdojojpjoooidkmcomcm
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/66.0.3359.181 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
# Form Data
name=name&age=11
3.空行
请求头与请求体之间用一个空行隔开;最后一个请求头标之后是空行,发送回车符和退行,通知服务器以下不再有头标。
4.请求数据
使用POST传送,最常使用的是 Content-Type 和 Content-Length 头标。
四、Response返回数据包数据格式
Response对象用于动态响应客户端请示,控制发送给用户的信息,并将动态生成响应。Response对象提供了一个数据集合cookie,它用于在客户端写入cookie值。
1. Response 请求数据包数据格式
一个响应由四个部分组成;状态行、响应头标、空行、响应数据。
1.状态行:协议版本、数字形式的状态代码和状态描述,个元素之间以空格分隔
2.响应头标:包含服务器类型、日期、长度、内容类型等
3.空行:响应头与响应体之间用空行隔开
4.响应数据:浏览器会将实体内容中的数据取出来,生成相应的页面
响应头标
Connection: keep-alive
Content-Encoding: gzip
Content-Length: 3931
Content-Type: text/html; charset=utf-8
Date: Wed, 08 Jun 2022 14:16:44 GMT
Keep-Alive: timeout=4
Product: Z-BlogPHP 1.6.6 Valyria
Proxy-Connection: keep-alive
Server: Apache/2.4.46 (Win32) OpenSSL/1.1.1g mod_fcgid/2.3.9a
Set-Cookie: ZDEDebuggerPresent=php,phtml,php3; path=/
Vary: Accept-Encoding
X-Powered-By: PHP/5.4.45
X-Xss-Protection: 1; mode=block
响应数据
HTTP响应码
1xx:信息,请求收到,继续处理
2xx:成功,行为被成功地接受、理解和采纳
3xx:重定向,为了完成请求,必须进一步执行的动作
4xx:客户端错误
5xx:服务器错误
200 存在文件
403 存在文件夹
30 均可能存在
404 不存在文件及文件夹
500 均可能存在
Burp抓包分析
#返回成功---200
#返回失败---404
伪造数据包
访问站长之家修改用户信息为JavaScript代码启到弹窗效果
https://ip.tool.chinaz.com/
<script>alert(123)</script>
APP数据包
操作:burp抓取模拟器的数据包复制,再抓取浏览器的数据包修改为模拟器的发送
错误分析
Burp抓取浏览器的数据包,浏览器直接访问会报错
原因是限制访问的机型或浏览器数据包不完整
正确做法
在发送数据包的时候得保证浏览器发送的是模拟器的数据包
Referer
Referer:表明产生请求的网页URL。这个属性可以用来跟踪Web请求是从什么网站来的
添加referer重新发送过去
浏览器信息伪造
User-Agent:是客户浏览器名称
http动作练习
URL过长,向浏览器传输数据不应该使用get方法,而是使用post
提示:Post传输的数据在最后面,最常使用Content-Type 和 Content-Length 头标 ,传参需要改到末尾
投票系统程序设计缺陷分析

1、添加X-Forwarded-For属性,并增加一个任意的IP

2、发送给测试器并修改IP参数为变量


3、使用有效载荷,设置变量最大值与起始值与每次的增值,重复两次(因为有两个值)

注意:以上设置需要将有效负载集修改为2,再设置一次
4、开始投票

5、等待进度条结束,投票完成

6、刷新页面,成功拿到KEY

边栏推荐
- Speech recognition (ASR) paper selection: talcs: an open source Mandarin English code switching corps and a speech
- AddressSanitizer 技术初体验
- 系统与应用监控的思路和方法
- Leetcode 30. Concatenate substrings of all words
- 腾讯字节阿里小米京东大厂Offer拿到手软,老师讲的真棒
- Recursive implementation of department tree
- 【云原生与5G】微服务加持5G核心网
- Cesium Click to draw a circle (dynamically draw a circle)
- Monthly report of speech synthesis (TTS) and speech recognition (ASR) papers in June 2022
- 夏志刚介绍
猜你喜欢
案例 ①|主机安全建设:3个层级,11大能力的最佳实践
Monthly report of speech synthesis (TTS) and speech recognition (ASR) papers in June 2022
【计网】第三章 数据链路层(3)信道划分介质访问控制
Microservice architecture debate between radical technologists vs Project conservatives
It's enough to read this article to analyze the principle in depth
OceanBase社区版之OBD方式部署方式单机安装
[network planning] Chapter 3 data link layer (3) channel division medium access control
腾讯字节等大厂面试真题汇总,网易架构师深入讲解Android开发
Tencent architects first, 2022 Android interview written examination summary
A5000 vGPU显示模式切换
随机推荐
Speech recognition (ASR) paper selection: talcs: an open source Mandarin English code switching corps and a speech
Crawler (14) - scrape redis distributed crawler (1) | detailed explanation
腾讯字节阿里小米京东大厂Offer拿到手软,老师讲的真棒
mod_ WSGI + pymssql path SQL server seat
Li Kou 101: symmetric binary tree
String长度限制?
深度剖析原理,看完这一篇就够了
Qinglong panel white screen one key repair
Tips for web development: skillfully use ThreadLocal to avoid layer by layer value transmission
【GET-4】
Linear distance between two points of cesium
永磁同步电机转子位置估算专题 —— 基波模型类位置估算概要
What happened to the kernel after malloc() was transferred? Attached malloc () and free () implementation source
5. 无线体内纳米网:十大“可行吗?”问题
【云原生与5G】微服务加持5G核心网
POJ3617 Best Cow Line 馋
Cf960g - bandit Blues (type I Stirling number +ogf)
How to handle the timeout of golang
企业精益管理体系介绍
方法关键字Deprecated,ExternalProcName,Final,ForceGenerate