课堂内容
流量报文
常见的请求方法 :
GET:获取资源
POST:提交表单数据或上传文件
PUT:更新或替换指定资源的内容
PATCH:部分更新现有资源。
DELETE:删除指定的资源
中间件:在操作系统和应用程序之间提供服务的软件层。它能够实现不同的应用程序、服务和系统之间的通信和数据管理,通常用于连接和协调分布式系统中的各种组件。中间件充当了客户端和服务器之间的桥梁,使得开发者可以更容易地构建复杂的应用。
弱口令
将用户权限细分,限制用户访问地址 |
建议使用由英文大小、数字且长度不小于8字节的口令 |
作业
Java、python环境安装成功截图
内外网互联方式
防火墙
防火墙根据预设的规则(如源地址、目标地址、协议类型、端口号等)对进出网络的数据包进行过滤,来决定哪些数据可以通过。
DMZ(Demilitarized Zone,隔离区)
DMZ是在内部网络和外部网络之间的一个缓冲区,放置需要与外部网络交互的服务,如 Web 服务器、邮件服务器和 DNS 服务器等,保护内网免受外部攻击。
pikachu第一关弱口令爆破:
要求使用proxy、Intruder、 Repater三种模式复现,Proxy模块需要直接修改请求包,并拦截返回包进行截图,Intruder需要使用狙击手、交叉和集束炸弹三种形式复现
打开内嵌浏览器,进入第一关弱口令爆破的页面,在pikachu中随意输入密码,并尝试登录,网页返回无法登录信息
在proxy的HTTP历史记录中,找到POST请求, 请求包中有username 对应的用户名以及password处对应的密码的信息,将包发送到Intruder。
1:集束炸弹
在intruder的位置中,选择攻击类型——集束炸弹,并添加payload位置,也就是报文中用户名和密码的地方
在intruder的payload中,进行payload的配置。
选择payload集1,简单列表即可。在payload设置中添加字典。
弱口令字典网址——https://weakpass.com/
同样地,对payload集2进行配置,而后可以开始攻击。
在第一次输入账户密码时,进行了报错,找到这个组合的请求,可以了解登录失败的报文长度,进行报文长度排序。同时根据当时页面的返回信息可以对响应报文的内容进行查找,来确定是否爆破成功。
如图,可以查找“not”,并查看其大致位置。
对报文长度进行排序,对于长度为35086的报文进行字符串匹配失败,找到上个报文中“username or password is not exists”的位置,进行查看,可以找到“login success”的信息,即爆破成功。这样就获得了两个可以成功登录的账户密码。
查看长度为35111的包,也是返回无法登录的信息
2:狙击手模式
更改为狙击手的模式,进行攻击只添加一个payload位置在账户,且根据前面扫出来的账户密码,将密码改为正确密码,进行攻击
扫描完成后,进行长度排序,长为35087的报文返回的是成功登录的信息。
3:交叉模式
选择交叉模式,设置2个payload位置,进行攻击
根据交叉模式攻击的原理,我提供的字典里没有正确组合的账号密码,所以这13个请求都是返回的登录失败的信息。
修改payload集,将正确的账号和对应的密码,排在第二个。
此时,有一个长为35087的报文返回了成功登录的信息,即爆破成功。
使用重放器修改请求报文
将post报文发送到重放器中
在重放器中修改发送过来的报文,点击发送,会得到来自服务器的响应报文。
登录失败
登录成功