当前位置:网站首页>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
边栏推荐
- 青龙面板白屏一键修复
- DOM operation
- Information System Project Manager - Chapter VIII project quality management
- Linear distance between two points of cesium
- 爬虫(14) - Scrapy-Redis分布式爬虫(1) | 详解
- How to handle the timeout of golang
- Technology sharing | packet capturing analysis TCP protocol
- Tencent T2 Daniel explained in person and doubled his job hopping salary
- 2022年6月语音合成(TTS)和语音识别(ASR)论文月报
- Color is converted to tristimulus value (r/g/b) (dry stock)
猜你喜欢
腾讯字节阿里小米京东大厂Offer拿到手软,老师讲的真棒
It's enough to read this article to analyze the principle in depth
系统与应用监控的思路和方法
Standardized QCI characteristics
In simple terms, interview surprise Edition
A5000 vGPU显示模式切换
2022年6月语音合成(TTS)和语音识别(ASR)论文月报
腾讯安卓开发面试,android开发的基础知识
Oceanbase Community Edition OBD mode deployment mode stand-alone installation
Social recruitment interview experience, 2022 latest Android high-frequency selected interview questions sharing
随机推荐
深入浅出,面试突击版
Guangzhou's first data security summit will open in Baiyun District
【云小课】EI第47课 MRS离线数据分析-通过Flink作业处理OBS数据
Finally, there is no need to change a line of code! Shardingsphere native driver comes out
小微企业难做账?智能代账小工具快用起来
Color is converted to tristimulus value (r/g/b) (dry stock)
数字三角形模型 AcWing 1018. 最低通行费
腾讯T3大牛手把手教你,大厂内部资料
Case ① | host security construction: best practice of 3 levels and 11 capabilities
Anaconda安装后Jupyter launch 没反应&网页打开运行没执行
Introduction to enterprise lean management system
句号压缩过滤器
Tencent T3 teaches you hand in hand. It's really delicious
腾讯安卓开发面试,android开发的基础知识
部门树递归实现
rt-thread i2c 使用教程
After solving 2961 user feedback, I made such a change
腾讯字节等大厂面试真题汇总,网易架构师深入讲解Android开发
Social recruitment interview experience, 2022 latest Android high-frequency selected interview questions sharing
Wonderful coding [hexadecimal conversion]