sqlmap

sqlmap的安装

淺唱寂寞╮ 提交于 2020-02-23 20:00:14
来自:http://www.51testing.com/html/89/n-3711589.html  一、下载   首先,需下载SqlMap以及适用于 Windows 系统的 Python 。下载地址如下:   1.1、SqlMap下载地址:https://github.com/sqlmapproject/sqlmap/tarball/master 可下载到最新版本的SqlMap;   1.2、Python下载地址:https://www.python.org/ 可下载到相应的Python.建议下载2.7或者2.8版本的python,配合1中的sqlmap    二、安装:    2.1、安装Python,以如下版本为例:   默认安装路径是C:\Python27,这里选择安装位置为D:\Python27    2.2、配置环境变量   安装完成后,需要配置环境变量,跟jdk的配置差不多,只需在找到,系统变量 -->path里面加上 D:\Python27;    2.3、测试python环境是否安装成功   cmd -----python 如下则说明安装成功:    2.4、安装sqlmap,以如下版本为例:   在python的安装路径D:\Python27下面建立一个sqlmap的文件夹,并将上图文件夹下的文件拷贝到新建的sqlmap文件夹下    2.5

sqlmap检索DBMS信

萝らか妹 提交于 2020-02-20 23:10:07
sqlmap检索DBMS信息 sqlmap检索DBMS banner 获取后端数据库banner信息 参数 --banner或者-b sqlmap检索DBMS当前数据库 获取当前数据库名 参数 --current-db sqlmap检索DBMS当前主机名 获取主机名 参数 --hostname sqlmap检索DBMS用户信息 sqlmap探测当前用DBA 探测当前用户是否是数据库管理员 参数 --is-dba sqlmap枚举DBMS用户密码 Sqlmap会先列举用户,再列举用户密码Hash值。 参数 --passwords sqlmap枚举DBMS用户 获取DBMS所有用户 参数 --users sqlmap枚举DBMS权限 参数:–privileges 当前用户有读取包含了数据库管理系统中用户信息的系统表的权限时使用这一参数可以列举数据库管理系统中用 户的权限。通过用户权限可以判断哪些用户是管理员。 若想只枚举特定用户的权限使用参数"-U"指定用户,可用"CU"来代表当前用户。 python sqlmap.py -u “http://127.0.0.1/sqli/Less-1/?id=1” --privileges U root sqlmap枚举信息 sqlmap列举数据库名 列举数据库名称 参数 --dbs sqlmap枚举数据库表 列举数据库表名 参数: --tables

SQLMAP用户手册

混江龙づ霸主 提交于 2020-02-18 18:43:51
SQL注入WIKI 网址: http://sqlwiki.radare.cn/#/ sqlmap中文手册 网址: https://octobug.gitbooks.io/sqlmap-wiki-zhcn/content/ 来源: https://www.cnblogs.com/thespace/p/12326772.html

sqli-宽字节注入

*爱你&永不变心* 提交于 2020-02-18 00:03:15
0x0 背景 当某字符的大小为一个字节时,称其字符为窄字节. 当某字符的大小为两个字节时,称其字符为宽字节. 所有英文默认占一个字节,汉字占两个字节 常见的宽字节编码:GB2312,GBK,GB18030,BIG5,Shift_JIS等等 0x1 宽字节注入原理 程序员为了防止sql注入,对用户输入中的单引号(’)进行处理,在单引号前加上斜杠(\)进行转义,这样被处理后的sql语句中,单引号不再具有‘作用’,仅仅是‘内容’而已,换句话说,这个单引号无法发挥和前后单引号闭合的作用,仅仅成为‘内容‘ 【再举个例子,要找某位名字里带单引号的用户,搜索的时候,就要让单引号成为内容去搜索,而不能起到其他作用】 而安全测试人员要绕过这个转义处理,使单引号发挥作用,有两个思路: 让斜杠(\)失去作用 让斜杠(\)消失 第一个思路就是借鉴程序员的防范思路,对斜杠(\)转义,使其失去转义单引号的作用,成为‘内容’ 第二个思路就是宽字节注入 当使用宽字节编码,如:GBK时,两个连在一起的字符会被认为是汉字,我们可以在单引号前加一个字符,使其和斜杠(\)组合被认为成汉字,从未达到让斜杠消失的目的,进而使单引号发挥作用 注意:前一个字符的Ascii要大于128,两个字符才能组合成汉字 0x2 注入方法 0x21 黑盒 可以看到,在发现单引号被转义后,当我们加了%df后,sql语句报错,说明单引号发挥了作用

最近笔记

空扰寡人 提交于 2020-02-17 02:04:47
地域dns劫持可设置可靠信任DNS服务器地址 windows的网站路径不区分大小写 相对路径一般用在链接图片或者引用包含文件 代理的原理: 浏览器将数据发送到代理服务器指定的ip和端口,再由代理服务器帮你去访问 ss和普通代理: ss代理有密码有混淆,普通代理透明 访问网站: 除了网址域名 ip 还可通过http://127001的格式来进行访问 web容器:可以向发出请求的浏览器提供文档的程序,主要功能是储存,处理和传递给客户。 对于虚拟机网络设置: 桥接的话虚拟机会被路由器分配一个内网ip,相当于虚拟机加入内网; NAT模式仅仅只有本机能访问到这个虚拟机ip sql注入原理: order by 1 按照第一字段进行排序; order by 2 按照第二字段进行排序… 联合查询的时候,为什么1’ union select 1,2,3–+ 还是会返回正常,那是因为联合查询时前面的语句会自动默认在前面显示,比如在数据库中写:select 1,2 union select 3,4;会出现以下结果: 1,2 3,4 所以在注入时用联合查询的时候,要么使得前面的语句不执行,要么就在后面添一个limit 1,1(这表示查第二行,limit 0,1表示查询第一行,实际上是从第一行数据取一行) sqlmap: 跑post的时候,保存数据包,在待检测参数后面写*,例如id=1* $_request

sqlmap注入随笔记录

陌路散爱 提交于 2020-02-15 19:18:35
web7: 首先看见这道题,猜测flag在某页id上面,或者id是可以注入的。 先就是id爆破,用burpsuite抓了包,做了个0~9999的字典爆破id,发现自己猜测错了 那么就还是sql注入题了。 url里的id存在注入点,放sqlmap里面直接试。发现存在过滤,鉴于之前出题人的另一道题也是sql注入绕过,那么绕过tamper也应该是space2comment 果不其然,这道题还是内联注释绕过 好歹这次表名是web7,不再是web2了 一路下去直接dump出来flag 来源: https://www.cnblogs.com/echoDetected/p/12313105.html

SQLmap使用总结

旧时模样 提交于 2020-02-15 18:28:50
1.简介 2.说明书翻译 3. 基础命令汇总 4.基础命令尝试 5.高级用法 壹 sqlmap 是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL进行SQL注入。目前支持的数据库有 MySql、Oracle、Access、PostageSQL、SQL Server、IBM DB2、SQLite、Firebird、Sybase 和 SAP MaxDB 等 Sqlmap采用了以下5种独特的SQL注入技术 基于布尔类型的盲注,即可以根据返回页面判断条件真假的注入 基于时间的盲注,即不能根据页面返回的内容判断任何信息,要用条件语句查看时间延迟语句是否已经执行(即页面返回时间是否增加)来判断 基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回到页面中 联合查询注入,在可以使用Union的情况下注入 堆查询注入,可以同时执行多条语句时的注入 Sqlmap的强大的功能包括 数据库指纹识别、数据库枚举、数据提取、访问目标文件系统,并在获取完全的操作权限时执行任意命令。 sqlmap是一个跨平台的工具,很好用,是SQL注入方面一个强大的工具! 贰 sqlmap -h #查看帮助菜单 这里上网找了一个中英文对照版的sqlmap -h 的内容详解 Usage: python sqlmap.py [options] Options(选项): -h, --help

绕过waf

人盡茶涼 提交于 2020-02-12 12:21:35
WAF:有硬件和软件类型。 常见的软WAF,常见:安全狗、云锁、云盾、护卫神。 SQL注入的绕过: WAF核心机制就是正则匹配。 通过正则匹配,如果符合规则,就拦截。 比如sql注入中and 1=1被拦截。 可尝试大小写绕过:And 1=1 编码绕过: 因为WAF 获取数据后不会解码。如&=>%26 通过不同进制绕过:例如16进制的0x32相当于十进制的2。 铭记:安全和用户体验都是需要平衡的,特别是针对WAF而言。 WAF判断的几种方法: 1.SQLmap 使用SQLmap中自带的WAF识别模块可以识别出WAF的种类,但是如果所安装的WAF没有明显特征,SQLmap就只能识别出类型是Generic 在SQLmap中输入一下命令: sqlmap.py -u "http://xxx.com" --identify-waf --batch 一般情况下就可以被扫描出waf的种类。 2.手工判断 这个也比较简单,直接在相应网站的url上后面加上最基础的测试语句,比如union select 1,2,3%23,并且放在一个不存在的参数名中,若触发了WAF的防护,所以网站存在WAF. 内联注释:是MYSQL为了保持与其他数据兼容,将MYSQL中特有的语句放在/!…*/中,这些语句在不兼容的数据库中不执行,而在MYSQL自身却能识别、执行。 /*!50001*/表示数据库版本>=5.00

基础篇——SQL注入(工具注入)

这一生的挚爱 提交于 2020-02-09 16:28:28
注入工具   上一篇介绍了SQL注入漏洞以及一些手工注入方法,本篇介绍一下注入工具   1、sqlmap     sqlmap属于比较经典的一个注入工具,功能强大,还自带一些绕过参数     使用方法:       sqlmap.py -u “url” 对url连接进行注入检测       然后使用注入参数进行注入       -u //添加url进行检测       -dbs //进行数据库检测       -tables //猜解数据库表       -colums //猜解字段       --level 1~5 //设置注入等级最高5级       --risk 1~3 //设置危险等级       --data “参数内容” //post注入       -r 1.txt //对1.txt内容进行注入       --delay //延时     sqlmap自带绕过脚本temper     使用方法:       --temper 脚本名称     列出一些脚本:       apostrophemask.py 用UTF-8全角字符替换单引号字符       apostrophenullencode.py 用非法双字节unicode字符替换单引号字符       appendnullbyte.py 在payload末尾添加空字符编码       base64encode

PHP代码审计之入门实战

孤街浪徒 提交于 2020-02-09 12:36:04
系统介绍 CMS名称:新秀企业网站系统PHP版 官网: www.sinsiu.com 版本:这里国光用的1.0 正式版 (官网最新的版本有毒,网站安装的时候居然默认使用远程数据库???迷之操作 那站长的后台密码岂不是直接泄露了?疑似远程数据库地址: server.sinsiu.net ) 下载地址: 蓝奏云 Windows下使用PHPStudy可以直接安装,搭建起来还是很简单的。 防护策略 虽然这是一个不知名的小系统,但是安全加固还是考虑到的,很多本应该有漏洞的地方均被加固修复了,导致国光我一开始一直碰壁,=,= 废话不多说,下面直接列举本次审计碰到的一些坑。 伪造IP注入过滤 思路 首先在后台发现有记录用户IP的功能: 哦豁,会不会有传说中的伪造IP地址注入攻击呢???使用数据库监测工具,发现在注册用户发表评论的时候。用户的IP地址也的确被带入SQL语句中查询了: select * from php_safe where saf_ip = '10.211.55.2' and saf_action = 'message' VSCode走起,根据关键词来查找相关功能代码: include/function.php //获取客户端IP function get_ip() { if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP