OWASP 之认证崩溃基础技能

news2024/11/26 21:35:41

文章目录

  • 一、burp爆破用法
    • 1.Attack type爆破方式设置
    • 2.payload处理
    • 3.请求引擎设置
    • 4.攻击结果设置
    • 5.grap匹配设置
  • 二、常见端口与利用
    • 1、文件共享
    • 2、远程连接
    • 3、Web应用
    • 4、数据库
  • 三、爆破案例经验
    • 1、暴力破解攻击产生的5个原因或漏洞
    • 2、猜测用户名方法
    • 3、猜测密码方法
  • 四、实验与作业
    • 1、Win7搭建ftp用于远程密码爆破
      • a.新建用户
      • b.配置internet 信息服务
      • c.添加FTP站点
      • d.使用WinSCP软件连接
    • 2、九头蛇hydra-windows暴力破解工具安装与使用
    • 3、超级弱口令检查工具使用
    • 4、DVWA安装和使用
      • a.解决DVWA安装问题
      • b.修改等级
      • c.LOW狙击手爆破
      • d.Medium集束炸弹爆破
      • e.High Pitchfork爆破
      • f.High + token + 鱼叉爆破
    • 5、pykachu爆破
      • a.基于表单的暴力破解
      • b.服务端验证码绕过
      • c.客户端验证码绕过
  • 五、认证崩溃防御方式

一、burp爆破用法

1.Attack type爆破方式设置

在这里插入图片描述

Sniper(狙击手):对变量依次进行暴力破解。一般这个模式下只设置一个爆破点,因为如果用户名和密码都不知道的情况下不会使用该模式去爆破。通常用于在知道用户名后,对密码进行爆破。
Battering ram(工程锤):对变量同时进行破解,表示两个爆破点使用同一个play依次去执行,如果simplelist是6个,那么就执行6次。
Pitchfork(叉子):每一个变量标记对应一个字典,一一对应进行破解。这个模式下,表示两个爆破点,并且会设置两个payload1和payload2,payload1就设置给爆破点1,payload2就设置给爆破点2,总共也是执行6次。并且一般按照payload少的执行
Clusterbomb(集束炸弹):每个变量对应一个字典,并且进行交叉式破解,尝试各种组合。适用于用户名+密码的破解

2.payload处理

在这里插入图片描述在这里插入图片描述

Add prefix:添加一个文字前缀
Add suffix:添加一个文字后缀
Match/replace:将替换匹配特定正则表达式的有效载荷的任何部位,用一个文字字符串表示
Substring:提取的有效载荷的子部分中,从指定的偏移量(0-索引)和至所指定的长度开始
Reverse substring:对于子规则来说,最终的偏移量指定的有效载荷的末尾后向计数,并且长度从端部向后偏移计数
Modify case:这个修改了有效载荷的情况下,如果适用的话,同样的选项作为的情况下修改有效载荷类型
Encode-URL:html,base64的,ASCII码或十六进制字符串构建各种平台,采用不同的计划,该编码的有效载荷
Add raw payload:这之前或之后,在当前处理的值增加了原始负载值,它可以是有用的,例如如果你需要提交相同的有效载荷在RAW和哈希表
Skip raw payload:将检查是否当前处理的值匹配指定的正则表达式,如果是这样,跳过有效载荷和移动到下一个,这可能是有用的,例如,如果知道一个参数值必须有一个最小长度和要跳过的一个列表,让这更短的长度的任何值
Invoke burp extension:调用一个Burp extension(扩展)来处理负载,扩展名必须已注册入侵者有效载荷处理器,你可以从已注册的当前加载的扩展可用的处理器列表中选择所需的处理器

3.请求引擎设置

在这里插入图片描述

Maxinum concurrent requests:线程,该选项控制攻击请求的并发数
Delay between requests:请求之间的等待时间

4.攻击结果设置

在这里插入图片描述

Store requests/Response:储存请求/响应,这个选项确定攻击是否会保存当个请求和响应的内容
Make unmodified baseline request:未修改的基本请求,如果选择此选项,那么除了配置的攻击请求,burp会发出模版请求设置为基值,所有有效载荷的位置,此请求在结果表显示为项目#0,使用此选项很有用,提供一个用来比较的攻击响应基地的响应
Use denial-of-service mode:使用拒绝服务的模式,如果选择此选项,那么攻击会发出请求,如正常,但不会等待处理从服务器收到任何答复,只要发出的每个请求,TCP连接将被关闭,这个功能可以被用来执行拒绝服务的应用层对脆弱的应用程序的攻击,通过重复发送该启动高负载任务的服务器上,同时避免通过举办开放套接字等待服务器响应锁定了本地资源的请求
Store full payloads:保存完整的有效载荷,如果选择此选项,BURP将存储全部有效载荷值的结果

5.grap匹配设置

在这里插入图片描述

Match type:匹配类型,指定的表达式是否是简单的字符串或正则表达式
Case sensitive match:区分大小写的匹配,指定检查表达式是否区分大小写
Exclude HTTP headers:排查http头,指定的http响应头是否应被排除在检查
Grap提取:可用于从攻击结果表中提取响应的有用信息
在这里插入图片描述

二、常见端口与利用

1、文件共享

21/22/69 FTP/TFTP文件传输协议:允许匿名上传,下载,爆破和嗅探
2049 NFS服务:配置不当
139 Samba服务:爆破,未授权访问,远程代码执行
389 LDAP目录访问协议:注入,允许匿名访问,弱口令

2、远程连接

22 SSH远程连接:爆破,SSH隧道及内网代理转发,文件传输
23 Telnet:爆破,嗅探,弱口令
3389 RDP远程桌面连接:shift后门(Windows server 2003以下版本)、爆破
5900 VNC:弱口令爆破
5632 PyAnywhere服务:抓密码、代码执行

3、Web应用

80/443/8080 常见的web服务端口:web攻击,爆破,对应服务器版本漏洞
7001/7022 WebLogic控制台:Java反序列化,弱口令
8080/8089 Jboss/Resin/Jetty/Jenkins:反序列化,控制台弱口令
9090 WebSphere控制台:Java反序列化,弱口令
4848 GlassFish控制台:弱口令
1352 Lotus dominio邮件服务:弱口令、信息泄露、爆破
10000 Webmin-web控制面板:弱口令

4、数据库

3306 Mysql:注入、提权、爆破
1433 MSSQL:注入、提权、SAP弱口令、爆破
1521 Oracle:TNS爆破、注入、反弹shell
5432 PostgreSQL:爆破、注入、弱口令
27017/27018 MongoDB:爆破、未授权访问
6379 Redis:可尝试未授权访问、弱口令爆破
5000 SysBase/DB2:爆破、注入

三、爆破案例经验

1、暴力破解攻击产生的5个原因或漏洞

Web应用开发时用户身份认证方法有逻辑漏洞。
Web用户身份识别策略不严格或设置不当。
Web应用对用户身份和密码没有做强状性限制。
Web应用没有对用户非常用登录地址做异常访问处理。
Web应用开发时,用户身份认证方式有缺陷或权限分配不合理。

2、猜测用户名方法

当输入用户名admin提示用户名不存在时
除了可以尝试 system sysadmin test test1 test123 ceshi 123 之外
可以尝试撞库,即固定密码,遍历用户名
还可尝试单位名+admin,如:csbadmin
还可以尝试:admin+序号,如 admin01 admin02 admin1 admin123
或者 厂商名+年份
可以从帮助中心 || 工具下载 || 帮助文档 获取默认密码,获取员工工号格式

3、猜测密码方法

可以从以下几个方面入手
 公司名
 厂商名(设备厂商,可对比归档设备默认密码)
 设备名
 系统名
 子域名(实战中可固定域名前缀,然后往后遍历密码字典)
 用户名
年份
 等等(任何你觉得有可能的密码组合)
密码策略:大小写字母+数字+特殊符号(满足其三)

四、实验与作业

1、Win7搭建ftp用于远程密码爆破

a.新建用户

右键计算机 -> 管理,选择用户本地用户组,新建用户,用户名和密码均为ftptest
在这里插入图片描述在这里插入图片描述在这里插入图片描述

b.配置internet 信息服务

win7系统本身没有安装internet信息服务,需要先进行安装,打开控制面板 ->程序和功能-> 打开或关闭Windows功能 -> 选中internet信息服务然后点击确定进行安装
在这里插入图片描述在这里插入图片描述在这里插入图片描述

安装完成之后,管理工具打开 Internet 信息服务(IIS)管理

c.添加FTP站点

在Win7系统中,没有自带的默认FTP站点需要自己创建一个,右键本机PC 选择添加FTP站点
在这里插入图片描述

站点名称随意,物理路径是磁盘上的一个存在的文件夹
在这里插入图片描述

IP地址为本机IP地址即可,自动启动FTP站点,不需要SSL证书
在这里插入图片描述

指定用户为创建的用户
在这里插入图片描述

d.使用WinSCP软件连接

在这里插入图片描述在这里插入图片描述

2、九头蛇hydra-windows暴力破解工具安装与使用

终端使用
在这里插入图片描述

创建密码文件
在这里插入图片描述在这里插入图片描述

用法示例:
ftp密码破解
hydra -L 用户名字典 -P 密码字典 -t 线程 -e ns ftp
hydra -L user.txt -P mima.txt -t 6 -e ns ftp://192.168.25.173
在这里插入图片描述

获取成功

3、超级弱口令检查工具使用

在这里插入图片描述

还是选择ftp,导入用户名字典和密码字典开始检查
在这里插入图片描述

获取成功

4、DVWA安装和使用

a.解决DVWA安装问题

将DVWA拷贝到D:\phpstudy_pro\WWW目录下
打开http://127.0.0.1/DVWA
在这里插入图片描述

打开现在使用的PHP目录,比如我用的是7.3.4(可看上图)
在这里插入图片描述

上述ini allow_url_include = Off 改为On
然后重启apache
在这里插入图片描述
在这里插入图片描述

问题解决

b.修改等级

使用默认账号admin password登录
DVWA Security等级选LOW,点submit提交
在这里插入图片描述

c.LOW狙击手爆破

点开Brute Force,开启BP和火狐BP插件开始爆破
随意输入一个用户名密码
在这里插入图片描述

BP抓包
在这里插入图片描述

右键将包发送到Intruder 模块
在这里插入图片描述

去除所有参数,将password设为参数
在这里插入图片描述

同时假定指定用户名是正确的,爆破方式使用默认的狙击手模式
导入字典
在这里插入图片描述

开始攻击,攻击结果按长度排序
在这里插入图片描述

而其他的都是
在这里插入图片描述

爆破成功

d.Medium集束炸弹爆破

将等级设为中级
这次我们假设用户名也不知道
在这里插入图片描述在这里插入图片描述

Bp抓包并发送到intruter
在这里插入图片描述

爆破模式设为cluseter bomb,将用户名和密码都设为靶参
在这里插入图片描述

分别导入用户名字典和密码字典
在这里插入图片描述在这里插入图片描述

开始attack
正确情况
在这里插入图片描述

其他错误情况
在这里插入图片描述

爆破成功

e.High Pitchfork爆破

在这里插入图片描述在这里插入图片描述

鱼叉模式,同样要设置两个变量
在这里插入图片描述

分别导入字典后开始爆破,但是失败了

f.High + token + 鱼叉爆破

在这里插入图片描述

原因应该是high级别的增加了token
因此我们调整一下,抓包发送到 Intruder 模块后,设置password和token为爆破点进行标记
在这里插入图片描述

在options中的grep-extract中打勾点击add添加过滤条件 点击refetch response 找到响应包中的token 选中复制token值点击确定
在这里插入图片描述

设置密码本,点击payload,选择第一项的密码本与低等级的相同,第二项的时候选Recursive grep 并且把之前得到的token值粘贴到下方的方框中。
在这里插入图片描述

线程数切记设置为1
在这里插入图片描述

重定向设置成:总是
在这里插入图片描述

开始attack
正确情况
在这里插入图片描述

错误情况
在这里插入图片描述

爆破成功
总结:发现必须在已知用户名的情况下才可以,都未知的时候失败了

5、pykachu爆破

a.基于表单的暴力破解

在这里插入图片描述

老办法,还是使用bp爆破,使用集束炸弹,用户名和密码做靶子
在这里插入图片描述

导入两个字典开始爆破,扫描结束,发现3个密码都找到了,长度35050的就是
在这里插入图片描述

其他情况
在这里插入图片描述

爆破成功

b.服务端验证码绕过

在这里插入图片描述

和上面方法一样,也是用集束炸弹和用户名密码做靶参,导入密码开始扫描,三个结果都出来了,前面三个刚好都是
在这里插入图片描述

错误情况
在这里插入图片描述

爆破成功

c.客户端验证码绕过

在这里插入图片描述

和上面一样的方法,没想到也都成功了
在这里插入图片描述

错误情况
在这里插入图片描述

爆破成功

五、认证崩溃防御方式

1、用户层面就是要避免使用弱口令,弱口令当然不止使用admin,root
这类的,还有姓名拼音,键盘连续字符等
2、服务方进行对多次登陆失败的账户可以锁ip
3、使用短信验证码,语言验证码等验证方式,为了用户体验好,可以
设置一个阀值,当超过这个阀值再进行验证
5、使用复杂点的验证码,增加攻击者攻击成本

拓展部分,有时间再做
Pykachu验证码爆破
万能密码:admin, ’ or 1=1–’
HTTPS靶场环境搭建
免责声明:
本文为作者个人观点,不代表本平台或任何其他机构的立场和观点。本文所包含的任何信息、观点和建议仅供参考和信息交流,读者应自行判断其适用性。
本文所涉及的任何产品、服务、企业、机构、网站或其他信息均为作者个人观点,不构成任何形式的推荐或背书。作者不对因读者根据本文内容采取的任何行动负责,也不承担任何责任。
本文的内容并不保证完全准确、全面或最新,且可能存在错误或遗漏。读者在参考本文内容时应自行进行验证和核实。任何因读者根据本文内容采取的任何行动造成的损失或损害,作者概不负责。
本文的版权归作者所有,未经作者许可,任何人不得擅自转载、复制或用于商业用途。如需转载或引用,请注明出处并联系作者。
最后,作者保留随时修改本文内容和免责声明的权利。请读者在使用本文内容时注意查看最新版本的免责声明。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/665410.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

亚马逊云科技中国峰会:Amazon DeepRacer——载着 AI 梦想向前奔跑

目录 一、Amazon DeepRacer 是什么? 二、Amazon DeepRacer 的前世今生 三、Amazon DeepRacer 深度体验 四、2023亚马逊云科技中国峰会 1.中国峰会总决赛 2.自动驾驶赛车名校邀请赛 3.Girls in Tech Show 4.全球联赛 5.报名链接: 一、Amazon Dee…

C++个人通信录管理系统

背景: 使用C编写一个个人通信录管理系统,来完成作业上的一些需求。 1-提供录入个人信息、修改个人信息(姓名和出生日期除外)、删除个人信息等编辑功能 2-提供按姓名查询个人信息的功能 3-提供查找在5天之内过生日的人员的信息…

【C++初阶】C++STL详解(二)—— string类的模拟实现

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:C初阶 🎯长路漫漫浩浩,万事皆有期待 上一篇博客:【C初阶】…

Internet Relay Chat:mIRC 7.73 Crack

mIRC是一个流行的互联网中继聊天客户端,个人和组织使用它在世界各地的IRC网络上相互交流、共享、玩耍和工作。为互联网社区服务了20多年,mIRC已经发展成为一种强大、可靠和有趣的技术。 Latest News mIRC 7.73 has been released! (June 18th 2023) This…

Linux常用命令——fuser命令

在线Linux命令查询工具 fuser 使用文件或文件结构识别进程 补充说明 fuser命令用于报告进程使用的文件和网络套接字。fuser命令列出了本地进程的进程号,那些本地进程使用file,参数指定的本地或远程文件。对于阻塞特别设备,此命令列出了使…

【C语言复习】第六篇、关于C语言操作符的知识

目录 第一部分、常见操作符 第二部分、每个操作符的具体使用 1、算术操作符 1.1、除法运算符 / 1.2、取模运算符 % 2、移位操作符 2.1、左移 << 2.2、右移 >> 3、位操作符 3.1、按位异或的妙用 3.2、按位与的妙用 4、单目操作符 4.1、逻辑反操…

18-1降维与特征选择——偏最小二乘方法(附matlab程序)

1.简述 降维&#xff1a; 比如现在有100维的变量来表征一个东西&#xff0c;我们觉得太冗余复杂了&#xff0c;想降低到10维。但是我们没有确定的筛选依据&#xff0c;直接使用数学工具来实现降维&#xff0c;就好像丢进了一个黑箱&#xff0c;经过抽象、提炼&#xff0c;得到了…

【深度学习】3-3 神经网络的学习- 导数梯度

导数 导数就是表示某个瞬间的变化量&#xff0c;式子如下&#xff1a; 式子的左边&#xff0c;表示f(x)关于x的导数&#xff0c;即f(x)相对于x的变化程度。式子表示的导数的含义是&#xff0c;x的“微小变化”将导致函数f(x)的值在多大程度上发生变化。其中&#xff0c;表示…

AI绘画是什么?怎样提高AI绘画技巧

大家好&#xff0c;我是权知星球&#xff0c;今天跟大家探讨一下AI绘画是什么&#xff1f;怎样才能提高AI绘画技巧的问题。 随着人工智能技术的迅速发展&#xff0c;AI绘画已成为一项具有前瞻性的技术。在过去几年中&#xff0c;涌现出了许多功能强大的人工智能绘画工具&#x…

荣耀加冕!数据猿斩获三项大奖,彰显技术媒体硬实力!

‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 6月15日及6月16日&#xff0c;由数央网、数央公益联合国内众多媒体共同举办的2023国际绿色零碳节暨ESG领袖峰会、2023国际智造节暨硬科技峰会在北京举行。 该峰会旨在倡导全社会关注气候变化问题&#xff0c;积极采取行动&a…

TBarCode SDK:条码生成:11.15.1 Crack

TBarCode SDK&#xff1a;条码生成软件 TBarCode SDK 提供给 Microsoft Office 用户 和软件开发人员 条码打印。用这种 条码生成软件 您可以优良的品质的创建和打印所有用于工业和商业的 条码符号 。 最好的条码生成软件 TBarCode SDK 表示一个公知的集条形码创建组件集. 优秀…

Python爬虫需要那些步骤 ?

Python爬虫是一种自动化程序&#xff0c;可以通过网络爬取网页上的数据。Python爬虫可以用于各种用途&#xff0c;例如数据挖掘、搜索引擎优化、市场研究等。Python爬虫通常使用第三方库&#xff0c;例如BeautifulSoup、Scrapy、Requests等&#xff0c;这些库可以帮助开发者轻松…

Python面向对象编程2-面向过程的银行账号模拟程序 项目2.1 创建账号与存款

项目总目标&#xff1a;用面向过程思想设计一个简单的银行账号模拟程序。本次将迭代多个程序版本&#xff0c;每个版本都将添加更多功能。虽然这些程序没有达到发布的质量标准&#xff0c;但整个项目的目的是关注于代码如何与一个或多个银行账户的数据进行交互。 分析项目的必要…

<Linux> 基础IO

文章目录 文件操作基本概念当前路径文件打开方式"a""w""r" 文件描述符文件描述符fd是啥1. 为什么fd是从3开始&#xff0c;0&#xff0c;1&#xff0c;2呢&#xff1f;2. fd为什么是0&#xff0c;1&#xff0c;2&#xff0c;3&#xff0c;4&#…

Mockito单元测试基本使用

文章目录 1.为什么需要Mock2.Mockito 中常用方法2.1 Mock 方法2.2 对 Mock 出来的对象进行行为验证和Junit结果断言2.3 测试桩stub2.4 参数匹配器2.5 mock()与spy()2.6 InjectMocks 本文参考&#xff1a; 【码农教程】手把手教你Mockito的使用 - 掘金 (juejin.cn) java - doRet…

利用SD的插件从文本或者图片创建3D模型

利用SD的插件从文本或者图片创建3D模型 一个用于自动从文本或图像生成3D模型的稳定扩散WebUI的自定义扩展。 利用 OpenAl Shap-E 从文本或图像生成 3D 模型&#xff0c; GitHub项日地址: https://github.com/jtydhr88/sd-webui-txt-img-to-3d-model 安装步骤: 在扩展中心选…

Linux之LVM模式下LV和VG扩容

一、LVM简介 LVM (Logical Volume Manager) 是一个逻辑卷管理器&#xff0c;它允许用户将多个硬盘分区或者整个硬盘组成一个或多个逻辑卷。LVM 可以在运行时动态地改变逻辑卷的大小&#xff0c;而不需要关机或重新启动系统。它也可以将多个硬盘的存储空间组合在一起&#xff0c…

OpenGL视口学习

VC6新建一个openGL类型项目&#xff1b; 出现一些选项&#xff0c;默认后生成一个项目&#xff1b; VC6自带GL支持&#xff1b; 需要添加附加包含路径&#xff1b; 而后构建工程&#xff1b;运行如下&#xff1b; 是一个旋转的立方体&#xff1b; 生成的代码不是MFC的&#xff…

Python入门教程+项目实战-13.4节-程序实战-二分查找算法

目录 13.4.1 何为二分查找&#xff1f; 13.4.2 算法实现 13.4.3 系统学习python 13.4.1 何为二分查找&#xff1f; 我们已经学完了Python中的字典和集合&#xff0c;利用字典和集合就可以实现快速查找&#xff0c;非常方便。字典与集合使用了哈希表的索引结构来加快查找&am…