pikachu靶场之sql注入通关教程
Sql Inject(SQL注入)概述:SQL注入漏洞,可怕的漏洞。
在owasp发布的top10排行榜里,注入漏洞一直是危害排名第一的漏洞,其中注入漏洞里面首当其冲的就是数据库注入漏洞。
SQL注入漏洞主要形成的原因是在数据交互中,前端的数据传入到后台处理时,没有做严格的判断,导致其传入的"数据"拼接到SQL语句中后,被当作SQL语句的一部分执行。 从而导致数据库受损(被脱裤、被删除、甚至整个服务器权限沦陷)。
在构建代码时,一般会从如下几个方面的策略来防止SQL注入漏洞:
1.对传进SQL语句里面的变量进行过滤,不允许危险字符传入;
2.使用参数化(Parameterized Query 或 Parameterized Statement);
3.还有就是,目前有很多ORM框架会自动使用参数化解决注入问题,但其也提供了"拼接"的方式,所以使用时需要慎重! 按数据类型分类:
按注入提交方式分类:
按注入攻击支持类型:
1、数字型注入(POST)
请求携带的数据是数字,那么叫做数字型注入。
选中1查询,用burp抓包,在id=1后面添加 or 1=1#,然后放包,就可以查询所有数据:
2、字符型注入(GET)
字符串类型的输入方式;
直接在输入框内输入vince" or 1=1#,然后点击查询,就可以查询所有数据:
3、搜索型注入
在搜索型注入框中输入vi%" or 1=1#,点击查询,可看到所有信息:
4、xx型注入
在xx型注入的输入框内输入XX") or 1=1#,点击查询,查看到所有信息:
5、"insert/update"注入
1)insert:insert注入,就是前端注册(或者提交)的信息最终会被后台通过insert这个操作插入数据库,后台在接受前端的注册数据时没有做防SQL注入的处理,导致前端的输入可以直接拼接SQL到后端的insert相关内容中,导致了insert注入。
在insert/update注入中,先点击注册账号,然后点击submit提交,用burp抓包,在注册数据后面添加数据库查询语句("or updatexml(1,concat(0x7e,(select table_name from
information_schema.tables where table_schema="pikachu" limit 0,1)),0) or"),然后放包,就可以获取查询语句要查询的内容:
2)update:与insert注入的方法大体相同,区别在于update用于用户登陆端(或者修改数据的地方),登录端一般说的是修改最后一次登录时间等信息,insert用于用户注册端。
先注册个账号登录,点击修改个人信息,点submit提交,抓取提交数据包,在提交数据报的信息后面添加数据库查询语句(" or updatexml(0,concat(0x7e,(database())),0) or"),放包就可以看到查询语句要查询的内:
6、"delete"注入
一般应用于前后端发贴、留言、用户等相关删除操作,点击删除按钮时可通过Brup Suite抓包,对数据包相关delete参数进行注入,一般普通的用户是没有权限删除数据的,管理员才行。
在delete注入中的输入框中多次输入任意内容,点击submit提交,任选一个下面内容删除,鼠标停留在图中最下面一个删除时,左下角显示一个url链接(链接中id=61),直接在浏览器上的url中添加or updatexml(2,concat(0x7e,(database())),0),就查到指定命令内容:
7、Http Header注入
先在pikachu平台打开Http Header注入模块,点击提示查看登录帐号和密码,登陆后去使用Burp抓包,只留登录成功之后加载页面的那个get请求,把请求发送到Repeater模块中,去除User-Agent:,然后输入" 然后运行后观察MYSQL语法报错然后发现存在SQL注入漏洞。这时候可以设置payload。在User-Agent输入 payload Mozilla" or updatexml(1,concat(0x7e,database ()),0) or " ,因为有些企业把user-agent等请求头键值对的数据也保存在了数据库里面。
8、Cookie注入
Cookie是网站为了识别用户身份来跟踪会话的,虽然Cookie是由后端生成的,但每次页面跳转,后端都回对前端的Cookie的信息进行验证,但如果后端获取Cookie后放在数据库中进行拼接,那么这也将是一个SQL注入点。在 ant[uname]=admin后添加一个’观察反馈的MYSQL的语法报错,发现了存在SQL注入漏洞,在设置"or updatexml (1,concat(0x7e,database()),0) or",就可以查询到命令查询内容:
9、布尔型盲注(base on boolian)
盲注,即在SQL注入过程中,SQL语句执行选择后,选择的数据不能回显到前端,我们需要使用一些特殊的方法进行判断或尝试,这个过程称为盲注。
在布尔型盲注输入框中输入vince" and ascii(substr(database(),1,1))=112#,点击查询,使用burp抓包,将数据包发送到攻击器中,攻击类型选择激束炸弹,清除原有变量,将攻击器中database()后面第一个1设置为变量1,112设置为变量2,按图中配置变量1和变量2,然后然后点击开始攻击,就查到数据库名为7位,1-7位的ascii码值对应ascii中字符如下:
1-112 2-105 3-107 4-97 5-99 6-104 7-117
p i k a c h u -> pikachu
10、时间型盲注(base on time)
在时间型盲注输入框中输入vince" and if(ascii(substr(database(),1,1))=112,sleep(5),null)#,点击查询,使用burp抓包,其他步骤和布尔型盲注一样,(将数据包发送到攻击器中,攻击类型选择激束炸弹,清除原有变量,将攻击器中database()后面第一个1设置为变量1,112设置为变量2,按图中配置变量1和变量2,然后然后点击开始攻击,):
最终查到数据库名为7位,1-7位的ascii码值对应ascii中字符位pikachu;
11、宽字节注入
当我们把php.ini文件里面的magic_quotes_gqc参数设为ON时(php低版本才支持打开该开关,5.4版本及以上把魔法符合移除了),所有的"(单引号),"(双引号),(反斜杠)和null字符都会被自动加上一个反斜杠进行转义。
其中的URL编码是 %5C ,当我们在单引号前面加上%df的时候,最终就会变成 運",如果程序的默认字符集是GBK等宽字节字符集,则MYSQL用GBK的编码时,会认为 %df 是一个宽字符,%df"= %df%5c%27=運" ,一个汉字占了前面两个字节,那么就剩下%27了,它是单引号,有了单引号就好注入了。
先打开魔法符号,将php版本调到5.4以下,在宽字节对应输入框中输入字符vince,使用burp抓包,将数据包发送到重放器中,将数据中字符vince后面添加df’ or 1=1#,发送就可以查看所有数据信息:
如何提高自己在写诗词方面的水平?最主要是舍得多花时间吧。你想提升诗词水平,说明你有这方面的兴趣,兴趣就是最好的老师。你要做的就是多读,多写,多问,多用。其余的交给时间和坚持。有机会可以多交一些爱好诗词的朋友,大家
你的工资5000,孩子找个保姆6000,你愿意辞职回家带孩子吗?看情况而定,如果在职场工作岗位很重要的话,应该找个亲戚来帮忙照看,如果工作岗位一般般,又不是单位的正式员工,还是回家吧从字面上来看,肯定是回家带孩子要划算,工资5000却要倒贴10
为啥古代人死后嘴里边都要含着东西?谢谢邀请!为什么古代人死了以后,装殓的时候,嘴里要放东西?我们这里把这个习俗叫做这不空口,无论人的高低贵贱,都放。富贵人家当然是值钱的东西,非常贫穷的人家,嘴里也要放点米饭什么的。
凉山州总共有多少县城?一共17个县城,包含两个县级市会理市,西昌市。15个县雷波,美姑,布拖,金阳昭觉,普格,宁南,会东,德昌,盐源,木里,喜德,越西,冕宁,甘洛,等15个县。凉山彝族自治州辖1个县级市
为什么有人说教育质量好的秘密是重视教育,尊重教师?这个问提得妙,有水平,满满的正能量。的确,教育质量好的秘密是重视教育,尊重教师,不然会有那么多的仁人志士和智慧远见者极力呼吁和倡导尊师重教吗?不然党和政府为什么历来都把教育放在国家
延吉买房哪个位置好?买房子三个标准,地段风水交通。地段和交通以自西向东横穿市区的布尔哈通河为界,河阴为河南片,有河南建工铁南三个街道,河南片以长白山路天池路为东西主路,朝阳街局子南街河南街站前街阿里郎
崇左市房价6000每平方值得吗?崇左成立地级市大概有十几年,是广西最年前的地级市,位于广西西南角,靠近越南,号称南国之门,有蔗都之城。崇左无论是城市人口,还是工业产值,在全区都是靠后,属于人口流出城市,10年崇左
我今年五十七岁了,想办退休,可以吗?No。为了钱,不可以!少挣很多钱!不为钱!办个病休,可以!你好那就是提前退休喽?一2020提前退休新政策根据国家工人退休退职暂行办法制度规定事业单位企业单位和党政机关人员男性年满5
新乡都有哪些大学?新乡是河南省的名列前茅的教育大市,也是省高素质人力资源培育基地,新乡的教育环境和教育水平是可圈可点的,新乡目前有9所大学,分别是河南师范大学河南科技学院河南工学院新乡医学院新乡学院
省级新区,南充临江新区能够发展起来吗?南充临江新区规划起步是比较高的,由于南充是属于内陆四线城市,经济实力较差,工业基础太薄弱了,基本都是以农业服务业为主,市辖三区被嘉陵江跟西河分割成了三个单独的城区,三区规划没用做统
小学要求提前落户了,我要赶紧买房吗?当然了。现在很多喷买房的。可是你不买房,不落户口,上学就是难题。我家大宝去年一年级,为了上学,在学校周边买了一个房龄三十多年的二手房。孩子顺利上学,今年,我同事问我怎么去的那个学校