3.8 sqlmap及其他安全工具进行漏洞综合利用

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 3.8 sqlmap及其他安全工具进行漏洞综合利用

3.8 sqlmap及其他安全工具进行漏洞综合利用

3.8.1 安全工具交叉使用的思路

  1. 使用多款漏洞扫描工具进行漏洞扫描
  • Acunetix WVS 漏洞扫描工具
  • Appscan 漏洞扫描工具
  • Hpinspect 漏洞扫描工具
  • JSky 漏洞扫描工具
  • WebCruiser 漏洞扫描工具
  • Netsparker 漏洞扫描工具
  1. 对漏洞扫描工具扫描的漏洞进行分析和查看

不同的扫描工具扫描出来的漏洞显示结果方式不一样,AWVS显示出来的漏洞信息较多,需要熟练操作该工具然后验证,但是使用该工具进行利用还是那么多好的条件,相对利用较难,JSky和WebCruiser可以对扫描出来的SQL注入漏洞进行直接利用,个人还是推荐使用AWVS进行漏洞扫描,因为它功能全,特征库全,不推荐JSky,此工具以过时,我实际使用过程中存在一定的问题,有Bug常年失修没人维护,不过WebCruiser这个款工具进行扫描SQL注入漏洞还是比较推荐的,它扫描出来的SQL注入漏洞可以直接利用获取想要的信息。

(1) AWVS发现了SQL盲注漏洞,可以通过"http editor" 获取其数据包,然后将数据包保存为txt文本,使用sqlmap.py -r bmfx.txt进行利用测试

(2) Webcruiser可以直接对SQL注入点进行测试利用,效果相对较好

(3) Jsky和里面的pangolin不推荐使用,有时候明明有SQL注入漏洞,但是注入不出来,感兴趣大家可以自己去研究

  1. 高权限漏洞利用思路

在实际的测试过程中,如果发现SQL注入点是高权限用户,那么可以尝试注入点提权或获取webshell,具体思路如下:

(1) 通过出错等方法获取网站的真实路径

(2) 对MSSQL数据库可以通过恢复xp_cmdshell来执行命令

(3) 使用sqlmap直接获取os-shell

sqlmap.py -d "mysql://root:root@192.168.91.131:3306/mysql" --os-shell
sqlmap.py -d "mssql://sa:sa@192.168.91.131:1433/master" --os-shell

(4) MySql可以通过loadfile查看配置文件

(5) 如果外网可以直接连接MSSQL数据库,可通过SQLTOOLS来查看磁盘文件

(6) 数据库导出获取webshell,数据库备份获取webshell

  1. 低权限注入漏洞利用思路

(1) 对重要数据库中的表进行内容获取
(2) 扫描及获取后台等类地址
(3) 利用获取的前台及后台用户账户和密码进行登录
(4) 从前台及后台来寻找和利用上传漏洞
(5) 通过数据库备份,导入获取权限
(6) 缓存文件修改获取webshell

3.8.2 数据库内容获取思路及方法

日常测试的过程中一定要注意,按照国家法律规定获取500条及以上个人信息数据,将导致验证的法律后果,本节在国家规定范围内获取数据,主要介绍以下具体技术方法

  1. 通过脚本完整数据库获取方法
    (1) mysql数据库可以通过phpspy进行完整导出,但如果数据库编码格式不一样,在导入数据库的时候,会导致数据出现错误
    (2) adminer是"脱裤"利器,支持php环境下的各种数据库完整导出,导出数据库以压缩格式下载,后期数据处理效果也较好

  2. 服务器权限数据库获取
    (1) MSSQL可以以管理员身份或账户形式登录,然后通过备份需要的数据库,压缩后下载到本地
    (2) mysql数据库可以复制到数据目录,即Data目录将数据库复制到其他位置,压缩即可,需要注意的是,MySQL数据库引擎和MyISAM数据库引擎可以直接复制,而InnoDB数据库引擎是将数据保存在内存中,可以修改InnoDB数据库引擎为MyISAM后,即可复制

  3. 代理导出数据库到本地
    (1) 在获取webshell的服务器上执行代理程序
    (2) 在本地使用Navicat Premium,Navicat for SQL Server, Navicat for MySQL和Navicat for Oracle等工具,通过socks代理等直接连接目标服务器,通过数据传输或导出方式,将数据库导出到本地
    (3) 直接通过代理将目标数据库数据全部导出到本地数据库,导出SQL文件有时容易出错,特别是大于1G以上的数据文件,难以对查询语句进行修改和调整

  4. 小量数据库内容获取方法
    (1) sqlmap联合查询方法获取数据库效果最快
    sqlmap.py -u url -D databasename --dump-all
    (2) 通过pangolin及WebCruiser可以获取重要的部分表数据,选中后可以将其导出到本地
    (3) sqlmap导出单个表数据
    sqlmap.py -u url -D databasename -T admin --dump

获取数据的方式参考:
https://www.t00ls.net/articles-24256.html

3.8.3 对某网站的一次漏洞扫描及漏洞利用示例

  1. 使用Acunetix WVS对目标站点进行漏洞扫描
    (1) 查看扫描结果
    (2) 通过HTTP Editor来查看数据,展开该漏洞信息,可以看到具体受影响的参数为id,要验证确认该参数是否真实存在漏洞,那么就可以选中" Launch the attack with HTTP Editor" 选项按钮,此时便可以打开HTTP数据包编辑器,能够查看到完整的HTTP头消息
    (3) 选中"Text Only" 然后保存HTTP数据包头文件,通过使用sqlmap -r参数读取并解析该文件进行注入测试

  2. 使用WebCruiser进行二次交叉扫描
    可以通过先Netsparker进行扫描,然后再使用Webcruiser进行漏洞的二次扫描通过交叉扫描获取更多的漏洞信息

  3. 进行实际注入漏洞测试
    (1) Pangolin SQL注入攻击
    (2) 使用WebCruiser进行注入点漏洞测试
    (3) 使用Havij进行注入漏洞及后台扫描测试

  4. 使用WebCruiser进行数据获取

  5. 使用sqlmap进行SQL注入测试到数据获取
    (1) 注入点确认
    sqlmap.py -u http://xxx.com/detail.php?id=1
    (2) 获取基本信息
    sqlmap.py -u http://xxx.com/detail.php?id=1 --dbs --current-db --current-user --users --passwords --is-dba
    (3) 对数据库表进行列获取
    sqlmap.py -u http://xxx.com/detail.php?id=1 -D bmfxdata -T public_login --columns
    (4) 数据库单个表获取
    sqlmap.py -u http://xxx.com/detail.php?id=1 --dbms=mysql -D bmfxdata -T admin_login --dump
    (5) 获取当前数据库的所有数据
    sqlmap.py -u http://xxx.com/detail.php?id=1 -D bmfxdata --dump-all
    (6) 数据会保存在当前用户的目录下
    一般在output目录下,每次注入完成sqlmap会提示保存在哪个目录下面

  6. webshell获取
    至此,目标的数据库全部获取完毕,后续可以对管理员所对应的密码进行暴力破解,然后通过后台进行登录,寻找webshell获取
    (1) MD5暴力破解的两个在线站点cmd5网站和somd5网站
    (2) 后台登录及webshell获取

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
安全 网络协议 Linux
Kali渗透测试:使用Armitage针对漏洞进行攻击
Kali渗透测试:使用Armitage针对漏洞进行攻击
|
4月前
|
SQL 安全 Oracle
SQLMap工具详解与SQL注入防范
SQLMap工具详解与SQL注入防范
|
6月前
|
安全 Linux 数据库
Appscan10.0.4 -- 漏洞扫描
Appscan10.0.4 -- 漏洞扫描
225 0
|
数据采集 安全
漏洞扫描工具 -- awvs13
漏洞扫描工具 -- awvs13
405 0
漏洞扫描工具 -- awvs13
|
安全 定位技术
漏洞扫描工具 -- Skipfish
漏洞扫描工具 -- Skipfish
589 0
漏洞扫描工具 -- Skipfish
|
SQL 安全 Oracle
sqlmap基本使用详解与sql注入防御之网络安全
作者主页:https://www.couragesteak.com/
sqlmap基本使用详解与sql注入防御之网络安全
|
安全 网络安全 Windows
渗透测试-使用metasploit的evasion模块生成后门木马
渗透测试-使用metasploit的evasion模块生成后门木马
渗透测试-使用metasploit的evasion模块生成后门木马
|
安全 Linux 网络安全
2022-渗透测试-推荐一款好用的网站漏洞扫描工具-WPscan
2022-渗透测试-推荐一款好用的网站漏洞扫描工具-WPscan
2022-渗透测试-推荐一款好用的网站漏洞扫描工具-WPscan
|
SQL 安全 网络协议
2022渗透测试-推荐一款漏洞扫描工具-AWVS安装与使用
2022渗透测试-推荐一款漏洞扫描工具-AWVS安装与使用
2022渗透测试-推荐一款漏洞扫描工具-AWVS安装与使用
|
SQL 安全 数据库
web漏洞_dvwa环境_sql注入
web漏洞_dvwa环境_sql注入
web漏洞_dvwa环境_sql注入