sqlmap

渗透测试环境搭建以及使用sqlmap获取mysql数据库密码

一曲冷凌霜 提交于 2019-12-03 20:30:20
通过sqlmap检测sql注入漏洞 21.1 安装SQLmap漏洞查看工具 21.2 安装渗透测试演练系统DVWA 21.3 使用SQLmap进行sql注入并获得后台管理员adnim帐号和密码 安装SQLmap:Rich七哥64.cn IP:192.168.1.64 渗透测试演练系统DVWA:Rich七哥63.cn IP:192.168.1.63 21.1.1 sql注入概述: 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。 它是利用现有应用程序,可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库。 比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击 例:12306.cn 帐号和密码泄露。 21.1.2 什么是SQLmap? SQLmap是一款用来检测与利用SQL注入漏洞的免费开源工具,有一个非常棒的特性,即对检测与利用的自动化处理(数据库指纹、访问底层文件系统、执行命令)。 官方网站下载http://sqlmap.org/ 21.1.3 Rich七哥64上安装sqlmap 1、安装Python 环境 我系统中已经安装过了,没有的可以使用下面这条命令安装 [root@Rich七哥64 ~]# yum

数据库连接池应用中数据库服务器断开超时连接的问题

六月ゝ 毕业季﹏ 提交于 2019-12-03 20:23:09
数据库应用开发过程中,我们可能会遇到一个问题:应用使用了数据库连接池,每经过指定时间后,发出到数据库服务器的任何请求都会失败,而且有且仅有一次失败,之后的正常访问都没有问题。尤其是在Web应用中,如果晚上时段没有访问,而第二天第一个访客的经历就是碰到一个数据库访问错误,如果开发系统的程序员没有注意这个问题的话,可能终端用户访问会看到抛出的一堆数据库异常信息。 其实,这个问题的主要原因是,应用中数据库连接池中会保存指定数量的数据库连接实例,而这些连接实例并没有定时地检测其到数据库服务器连接是否正常;数据库服务器可以配置一个数据库连接实例的超时时间,超过时间后它会自动断开连接。也就是,被断开的那个连接此时仍然保存在应用的数据库连接池内,下次被使用的时候就会发生数据库连接断开而导致一次访问失败。 解决上述连接关闭的方案有两种值得推荐: 如果能够提供这样一种检测机制,在应用的连接池管理中定时地检测连接池中连接的有效性,就完全可以避免上面描述的问题。 在应用代码中通过异常处理机制,来实现该次业务的重新处理,也可以很好地避免。 我们举一个例子,使用Java开发的Web系统,Tomcat作为HTTP服务器,MySQL作为数据库,抛出异常的信息如下所示: [http-bio-8080-exec-10] 2012-11-28 00:55:43 [org.shirdrn.wm.de.action

SQL注入之sqlmap进阶

試著忘記壹切 提交于 2019-12-03 17:07:20
上一篇我们对sqlmap进行简单的介绍,并介绍了一些·sqlmap的基础用法,这篇让我们来更深入的了解一下sqlmap,了解一下它的强大功能。 探测等级 参数为 --level 在sqlmap中一共有五个探测等级,默认等级为一。 等级为一时会测试get和post的数据。 等级为二时会测试HTTP头的cookie注入。 等级为三时会测试HTTP的user-agent、referer头、xff头等的注入。 等级越高,检测的越多,运行也越慢,所以我们要看情况来选定等级。 sqlmap支持的注入模式 1、基于布尔的盲注,即可以根据返回页面判断条件真假的注入。 2、基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。 3、基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。 4、联合查询注入,可以使用union的情况下的注入。 5、堆查询注入,可以同时执行多条语句的执行时的注入。 sqlmap支持的数据库 MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase,SAP MaxDB HTTP Referer头

【渗透测试小白系列】之SQLMAP工具的使用

不问归期 提交于 2019-12-03 15:31:36
(本文仅为平时学习记录,若有错误请大佬指出,如果本文能帮到你那我也是很开心啦) 一、介绍 1.SQL注入工具: 明小子、啊D、罗卜头、穿山甲、SQLMAP等等 2.SQLMAP: 使用python开发,开源自动化注入利用工具,支持12种数据库 ,在/plugins/dbms中可以看到支持的数据库种类,在所有注入利用工具中它是最好用的!!! 3.支持的注入类型: bool、time、报错、union、堆查询、内联 4.功能: 可以获取用户名、密码、权限、角色、数据库(表、字段、内容) 可以爆破识别密文数据 getshell(反弹shell) 命令执行 脱库或删库 二、SQLMAP的目录介绍: 目录 介绍 doc 介绍文档 extra sqlmap额外的功能,运行cmd、执行命令 lib sqlmap 的核心功能代码 plugins 包含12种数据库的识别程序 data 存放一些攻击过程种使用的工具或者命令 /data/procs 包含了mssql、mysql、oracle、postgresql这四种数据库的触发程序 /data/shell 远程命令、后门 /data/txt 表名、列名、UA字典 /data/udf 存放攻击载荷(payload) /data/XML 存放检测脚本(payload) tamper 包含各种绕过WAF的处理脚本 thirdparty 包含第三方插件

SQL注入之常用工具sqlmap

六眼飞鱼酱① 提交于 2019-12-03 13:29:54
通常来说,验证一个页面是否存在注入漏洞比较简单,而要获取数据,扩大权限,则要输入很复杂的SQL语句,有时候我们还会对大量的URL进行测试,这时就需要用到工具来帮助我们进行注入了。 目前流行的注入工具有sqlmap,pangolin,还有国产工具例如阿d,明小子,超级SQL注入这些工具。这些工具的功能都大同小异。 什么是sqlmap sqlmap是用python写的一个注入工具,在所有注入工具中排名第一,今天主要介绍一下sqlmap的使用。 sqlmap的强大功能包括数据库指纹识别,数据库枚举,数据提取,访问目标文件系统,可以在获取完全的操作权限时实行任意命令。 sqlmap的安装 sqlmap是一个命令行下的工具,且安装需要python环境(只支持python2),因此我们需要先下载python环境,并添加到环境变量中。 然后下载最新版的sqlmap(官网http://www.sqlmap.org)需要下载到Python的目录下,然后打开命令行,便可正常使用。 sqlmap入门 1.判断是否存在注入 目标注入点为http://xxx.com/index.php?id=1这种传入参数的命令为 sqlmap.py -u http://xxx.com/index.php?id=1 便可以自动进行检测,另外如果传入的参数有大于等于两个时,需要将URL使用双引号括起来。 除了直接检测URL外

渗透某成人版抖音

半城伤御伤魂 提交于 2019-12-03 04:58:47
下载该app,并对其进行测试。 使用 BurpSuite 抓包,环境为: 夜神模拟器(安卓4)+Xpose框架+Just trust me 框架 77 发现该app是从某web地址: www.xxxxx.com 的接口回调过来的。 排查web资产 域名注册信息 Ps:这类网站域名注册信息大部分为虚假的,所以这里暂时不对域名注册人、联系邮箱等信息展开搜集。 其它资产信息 Web指纹:网宿CDN,PHP,Nginx,ThinkCMF 语言:PHP 服务器:网宿CDN 操作系统:Linux 超级ping结果证实的确有CDN防护,那么就没有端口扫描的必要了。 尝试ThinkCMF默认后台地址 得到信息: 官网地址: www.yunbaokj.com 64 (疑似该视频系统开发商) 在之后的测试中,确定该套系统为云豹直播系统(由ThinkCMF二次开发) 系统审计 从网上下载到了云豹直播系统的源码 运气很好,审计到了几处前端注入(不需要会员登陆) 注入一: 文件位置: /application/Home/Controller/PlaybackController.class.php 注入链接:http://www.xxx.com/index.php?g=Home&m=Playback&touid=1 经测试,目标并不存在此处注入。 注入二: 文件位置: /application/Appapi

(十二)DVWA全等级SQL Injection(Blind)盲注--SQLMap测试过程解析

前提是你 提交于 2019-12-03 02:30:40
一、测试前分析 前文< DVWA全等级SQL Injection(Blind)盲注-手工测试过程解析 > 通过手工测试的方式详细分析了SQL Injection(Blind)盲注漏洞的利用过程,本文则利用自动化的工具SQLMap对SQL Injection(Blind)进行漏洞检测和数据获取。 手工 VS 自动化 : ①手工测试有助于理解整个注入漏洞的利用过程,可以加深技能印象 ②自动化工具所检测的效率相对较高,而且覆盖的全面性更高,数据获取的广度和深度也可以得到更好的发挥 利用SQLMap自动化工具的检测流程大致如下: 1.判断是否存在注入点、注入类型 2.获取DBMS中所有的数据库名称 3.获取Web应用当前连接的数据库 4.列出数据库中的所有用户 5.获取Web应用当前所操作的用户 6.列出可连接数据库的所有账户-对应的密码哈希 7.列出指定数据库中的所有数据表 8.列出指定数据表中的所有字段(列) 9.导出指定数据表中的列字段进行保存 10.根据导出的数据,验证数据有效性 二、全等级SQL Injection(Blind)-漏洞利用解析 利用SQLMap工具操作,本文暂不作太过详细的去拆分细节点,各个等级的服务端代码在此也不作重复展示。 以下构造SQLMap所需的测试命令时,所需用到的工具还有:浏览器自带的F12查看Request/Response/cookie

2019.10.28sql注入工具

喜欢而已 提交于 2019-12-03 01:27:49
SQLMAP 工具的使用 sql 注入工具 : 明小子 啊 D 萝卜头 穿山甲 sqlmap 等等 开源自动化注入利用工具 , 支持 12 中数据库 , 在 /plugins 中可以看到支持的数据库种类 支持的注入类型 :bool, 时间 , 报错 , 联合 , 堆查询 , 内联 可以获取用户名 密码 权限 角色 数据库 ( 表 , 字段 , 内容 ) 可以爆破识别密文数据 : getshell 命令执行 脱库 / 删库 目录介绍 doc 介绍文档 extra 他是 sqlmap 额外的功能 , 运行 cmd 执行命令 lib 是 sqlmap 核心功能代码 pluigins 包含 12 种数据库识别程序 data 各种数据 : procs 包含了 mssql mysql oracle postgresql 这四种数据库的触发程序 shell 远程命令和后门 txt 表名 列名 UA 字典 udf 存放攻击载荷 payload xml 存放检测脚本 tamper 包含各种绕 waf 处理脚本 thirdparty 包含了第三方插件 , 颜色 , 优化等等 sqlmap 工作流程 1. 初始化 2. 开始检测 0> 检测之前是否注入过 ( 会把检测的 URL 默认存放在用户家目录下 .sqlmap 下的 output --output-dir 参数可以指定存放的目录 ) 1> 解析

sqlmap的安装与使用

China☆狼群 提交于 2019-12-03 01:22:34
sqlmap是基于python环境的,所以在这之前需要安装python环境 Sqlmap 的使用 Sqlmap 是开源自动化利用工具,只是 12 种数据库,在 /plugins 中可以看到支持的数据库,在所有注入工具中最好用。 安装 sqlmap 1、sqlmap 搭配 python 使用,所以搭建 python 环境( 2.7 ) 去官网下载即可,安装后不需单独配置环境 2、 下载 sqlmap 官网下载即可,下载解压后把解压后的文件夹放在 python 的文件路径下 3、测试是否安装成功 打开 cmd ,进入 sqlmap 文件路径下 输入 python sqlmap.py --version ,若出现一下信息,则说明安装成功 4、在桌面创建快捷方式 下一步命名为 sqlmap 然后确定 右键属性,将起始位置设置为 sqlmqp 文件路径 这样就可以快捷使用 sqlmap 了 使用 sqlmap 1 、 Sqlmap -u 目标 url 本次测试用的本地搭建的网站 开始测试 测试结果,表明有注入点 结果存放在上诉路径的这个文件中 2、查看目标所有数据库 Sqlmap.py -u “url” --dbs 查看文件 log 3、获取当前数据库 Sqlmap.py -u “url” --current-db --dbms mysql 4、获取当前数据库下的表 Sqlmap.py -u

Sqli-labs Less 1-3

匿名 (未验证) 提交于 2019-12-03 00:43:02
刚刚做完sqli-labs的第一节的第一题(QAQ) 我的时间呀!!!(太笨只能一步一步的往前走) 我使用了两种方法解决的这一题,希望能够帮助到你们 题目是 :GET Error based- Single quotes -String 解题链接:http://127.0.0.1/sqli-labs-master/Less-1/ 关注点:基于错误,单引号,字符型注入。 手工注入: payload1:http://127.0.0.1/sqli-labs-master/Less-1/?id=0 页面正常: payload2:http://127.0.0.1/sqli-labs-master/Less-1/?id=0‘ 页面返回错误(可以判断有字符型的注入) 使用UNION SELECT 或者 ORDER BY 语句进行查询字段数: payload3:http://127.0.0.1/sqli-labs-master/Less-1/?id=0‘ UNION SELECT 1,2,3 --+ 然后就可以查询数据库的名称 payload4:http://127.0.0.1/sqli-labs-master/Less-1/?id=0‘ union select 1,group_concat(schema_name),3 from information_schema.schemata --+