Web安全-神楽坂雅詩
信息安全 > 网络安全 > WEB安全
WWW(万维网)World Wide Web,简称Web
-
WEB安全
-
WEB世界 的基石 HTTP协议 最常用的版本是HTTP1.1 正在推广的版本是HTTP/2
-
关基:关键信息基础设施
-
-
HTTP: Hyper Text Transport Protocol 超文本传输协议
-
位于TCP/IP 网络模型中的最上层:应用层
-
HTTP通讯:
-
发送数据包:请求 request -
接收数据包:响应 response
-
-
-
如果服务器主动
外联(主动向外建立连接)那么服务器很可能中了木马。 -
HTTP包也分为两部分:HEAD头部、首部和BODY主体两部分, -
两部分由
一行空行隔开。 -
如果发送的内容过大,会分为多个HTTP包分段发送。
-
HTTP协议的天生安全缺陷:
明文传输、信息易泄露,易篡改。
-
HTTP协议常见请求方式(method):
GET POST -
问题:GET 与 POST 请求方式的区别?
-
GET 方式,获取某一页面,所有参数都在URL里
-
POST 方式,提交信息,参数在BODY里
-
-
网络服务的常见架构:
C/S 架构:C=Client客户端S=Server服务端 -
WEB服务是基于B/S架构,B=Browser浏览器S=Server服务器。 -
前端:指的是用户端,浏览器。 -
后端:指的是服务端,服务器。 -
*前端的内容
一概不可信。因为前端的数据可以被轻易修改。
WEB前端三大技术:HTML CSS JavaScript
-
HTML,全名:超文本标记语言(HyperText Markup Language)作为骨架,提供最基本的文 字、表格等信息。 -
CSS,层叠样式表 负责网页布局相关。 -
JavaScript,简称JS。一种运行在浏览器里的编程语言。功能强大。能够实现丰富的网页效
果。 -
Java与JavaScript没有一毛钱关系,就像是老婆与老婆饼的关系。 -
浏览器插件
/扩展/add-on/plugin: -
NoScript:实现禁用JavaScript脚本的功能。 -
HackBar:可以对HTTP包进行修改。 -
http://ip.tool.chinaz.com/
Burp
Burp是一个以抓包改包为核心功能的渗透测试框架/工具箱Burp是基于Java 开发的。Java程序可以实现跨平台运行。- 要想运行
Java程序,需要先安装JRE(Java Runtime Environment)
*代码/命令 → 解析或编译 → 执行 → 实现效果
-
Burp安装步骤:
-
- 安装JRE或者JDK。Windows下有一键安装的.exe程序。
-
- 确认成功安装Java运行环境:Win+R 输入cmd 回车。
- 输入“java -version” 如果能显示Java版本信息,则表示配置成功。
-
3.解压Burp破解版压缩包。
-
4.运行“创建桌面快捷方式.bat”,运行后桌面生成快捷方式,启动Burp。看到弹出的注册窗口。
-
5.启动注册机/破解器 “
BurpCrack.jar”,将“执照”文本框里的全部字符串用快捷键Ctrl+C复制,粘贴到Burp注册窗口的白框里。点击右下角的“Next”,进入下一步。 -
6.点击右下角的右边数第二个按钮“
Manual Activate”,出现三个文本框。复制第二个文本框“Activate Request”里的全部字符串 -
7.粘贴到注册机的第二个空白文本框里,随后注册机的第三个文本框“激活响应”中生成一长串字符串。
-
8.将注册机的第三个文本框中的文本复制粘贴到Burp激活窗口的第三个空白文本框中,点击“Next”
-
9.看到“Success”表示破解成功。以后直接运行桌面的快捷方式,或者BurpSuiteLoader_v2022.3.1.jar即可运行。
-
CTF(Capture The Flag) 比赛
-
一种以比拼网络安全技术为目的的竞赛,
- 找到flag(一串特定格式的字符串)即为胜利。
- 找到 flag{xxxxxx} 类似此格式的flag
- 找到flag(一串特定格式的字符串)即为胜利。
-
Burp工作时的网络路由环境:
-
浏览器 – Burp – 服务器(互联网)
-
如何把浏览器的流量发送给Burp:
-
方案一:在浏览器内
配置代理选项。- 在浏览器的
配置/设置页面中,找到代理/proxy 配置相关页面,选择手动配置代理,代理服务器地址填127.0.0.1端口填8080。若浏览器无相关选项,使用浏览器插件实现该功能。安装插件FoxyProxy,或者SwitchyOmega 插件实现代理配置的快捷切换及管理。
- 在浏览器的
-
方案二:在
Windows系统设置中配置代理选项- 以
win10为例,点击右下角菜单,点击VPN。在弹出的窗口中选择左下角的“代理”选项卡。开启手动配置,输入代理服务器地址127.0.0.1端口8080
- 以
-
方案三(懒人版):使用
Burp自带的浏览器。在Proxy标签下的intercept标签下,点击“openbrowser”按钮,启动Burp自带的浏览器。此浏览器的流量无需配置直接经过Burp.
-
-
如何使用
Burp拦截HTTP流量:-
启动
Burp, 切换到第二行的Proxy页面,点击第三行最后的Options选项卡这里能配置监听器,接收浏览器以及其他程序的HTTP请求包。 -
点击第三行的
Intercept选项卡,这里可以开启或关闭拦截。可以查看到被拦截的HTTP包。-
Forward:转发/放行 -
Drop:丢包,直接丢弃 -
intercept is off / on: 当前拦截已关闭/已开启。 -
Action: 等同于在报文点击右键,包含多种功能,可以与burp其他模块联动 -
Open Browser:打开Burp内置浏览器 -
Proxy选项卡-HTTP History选项卡:查看所有HTTP报文,包括请求包和响应包。 -
Response 窗口-Render选项卡:查看被浏览器渲染后的最终页面。
-
-
Web常见状态码 & 请求头Header
-
Header头信息

-
location: 响应 指示客户将请求发送给别处,即重定向到另一个URL -
状态码信息

-
状态码
(Status-Code)是响应报文状态行中包含的一个3位数字,指明特定的请求是否被满足,如果没有满足,原因是什么。状态码分为以下五类:- 1xx : 通知信息
- 栗子:仅在与Http服务器沟通使用
- 2xx: 成功
- 栗子:成功收到、理解和接受动作
- 3xx: 重定向
- 栗子:为完成请求,必须进一步采取措施
- 4xx: 客户错误
- 栗子:请求包含错误的语法不能完成
- 5xx: 服务器错误
- 栗子:服务器不能完成明显合理的需求
- 1xx : 通知信息
Http请求/响应交互模型

- 默认
GET请求,不是POST请求

