加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

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

发布时间:2022-11-16 17:07:15 所属栏目:MsSql教程 来源:转载
导读: 3.8 sqlmap及其他安全工具进行漏洞综合利用
3.8.1 安全工具交叉使用的思路
1. 使用多款漏洞扫描工具进行漏洞扫描
* Acunetix WVS 漏洞扫描工具
* Appscan 漏洞扫描工具
* Hpinspect 漏洞扫

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

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

1. 使用多款漏洞扫描工具进行漏洞扫描

* Acunetix WVS 漏洞扫描工具

* Appscan 漏洞扫描工具

* Hpinspect 漏洞扫描工具

* JSky 漏洞扫描工具

* WebCruiser 漏洞扫描工具

* Netsparker 漏洞扫描工具

2. 对漏洞扫描工具扫描的漏洞进行分析和查看

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

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

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

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

3. 高权限漏洞利用思路

在实际的测试过程中,如果发现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

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

(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

获取数据的方式参考:

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

(2) 获取基本信息

sqlmap.py -u --dbs --current-db --current-user --users --passwords --is-dba

(3) 对数据库表进行列获取

sqlmap.py -u -D bmfxdata -T public_login --columns

(4) 数据库单个表获取

sqlmap.py -u --dbms=mysql -D bmfxdata -T admin_login --dump

(5) 获取当前数据库的所有数据

sqlmap.py -u -D bmfxdata --dump-all

(6) 数据会保存在当前用户的目录下

一般在output目录下,每次注入完成sqlmap会提示保存在哪个目录下面

6. webshell获取

至此,目标的数据库全部获取完毕,后续可以对管理员所对应的密码进行暴力破解,然后通过后台进行登录,寻找webshell获取

(1) MD5暴力破解的两个在线站点cmd5网站和somd5网站

(2) 后台登录及webshell获取

数库大数据_mssql数据库_疾病库数据

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!