Java教程

SQL注入***

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

SQL注入***   简单使用

通过构造特殊输入作为参数传入web应用程序。

一、通过页面传参看是否有返回信息,根据返回信息判断是否有注入点:

      1、默认界面

           watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

       2、传参及判断语句、参数闭合方式

           watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

            watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

二、根据以上截图信息用引号闭合参数,后面还有limit语句,可以尝试注入。先order by测试出表中字段数(测试出来3个):

       watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

三、利用联合查询语句,爆出字段显示位置:(id-1数值不存在, 后条语句查询出来的往前插)

       watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

四、获得对应字段位置,就可以在相应位置查询想要获取的信息:比如数据库名、版本等等

       watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

       watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

  五、上面步骤中查出库名为 security,知道库名,就可以知道表名了:查询出4张表,锁定users:

        watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

六、找出表之后,获取表中字段名字:

      watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

七、获取表名,字段名之后就可以整张表down下来了:拖出用户名密码

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

   上面显示方式不好看,可以修饰下(加冒号:,换行符用<hr />),用十六进制

   watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

 

 

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