http协议基础
-
明文
https 在传输过程之中加密 只能排除嗅探或截断 传输层的安全问题
还是可以窃取和侦听
其他漏洞还是正常执行
倡导全站https 但解决不了所有的问题 -
无状态(UDP无状态只管发送不管有没有接收,TCP有状态)
每次客户端和服务器端的通信都是独立的过程
web应用需要跟踪客户端会话(多步通信)
不使用cookie的应用,客户端每次请求都要重新身份验证
cookie:每次客户端发送的请求里都含有cookie (cookie=session ID)
session用于在用户身份验证之后跟踪用户的行为轨迹
提高用户体验,但增加了攻击向量 -
Cycle(完整通信的最小单元)
请求、响应 包含header 和boody
-重要的header
响应头
set-cookie:服务器发给客户端的sessionID(被窃取的风险)
content-length:响应body部分的字节长度(暴力破解时,体现出结果在什么地方 通过暴力破解账号密码 返回登陆成功的页面时content-length和登陆失败的页面大小会变化 )
Location:重定向用户到另一个页面,可识别身份认证后的允许访问的页面
请求头
cookie:客户端发回给服务器证明用户状态的信息(头=值)
referrer(跳转):发起新请求之前用户位于哪个页面,服务器基于此头的安全限制容易被修改绕过 可以挨个试一下,改一个头来改变服务器的相关内容
http状态码
服务端响应的状态码(五大类50多个)
100s:服务器响应的信息,通常表示服务器还有后续处理
200s:请求被服务器成功接受并处理后返回的响应结果
300s:重定向,通常在身份认证成功之后重定向到一个安全页面
400s:表示客户端请求失误
401:需要身份验证
403:拒绝访问
404:目标未发现
500s:服务器内部错误(503:服务不可用)
w3af
web application attack and audit framework 基于Python语言的开发
安全攻击与审计框架
这个框架的目标是帮助发现和利用所有web应用程序漏洞
9大类近150个plugin
audit
infrastracture
grep
evasion
mangle
auth
bruteforce
output
crawl
W3af_console
• help #显示可用指令
• plugin #进入插件子命令
• Help #显示可用命令
• list audit #列出audit类所有插件
• audit sqli xss #选择使用的audit插件
• http-settings / misc-settings #全局配置
• help
• view #ັ查看可配置的参数
• set #设置参数
• back #回到上一级命令
• Profiles(把插件类型、目标、配置等保存成一个文件,方便之后使用)
• save_as self-contained
• save_as test self-contained
• Target-----目标
• set target http://1.1.1.1/----设置目标ip
• Start
• Script ------配置信息合成一个脚本也可以更好地保存常用攻击信息
• script/*.w3af
w3af-----身份认证
- http basic 身份信息通过http协议头通过base64编码传输
直接逆向计算即可找到身份信息