Less(21)Cookie Injection- Error Based- complex - string ( 基于错误的复杂的字符型Cookie注入)

1.base64编码,单引号,报错型,cookie型注入

  (1)本关和Less(20)相似,只是cookie的uname值经过base64编码。

  (2)登录后页面:

    

 

     圈出来的地方显然是base64加密过的,解码得到:admin,就是刚才登录的uname,所以猜测:本题在cookie出加密了字符串;

    查看php文件确实如此,所以只需要上传payload的时候base64加密一下就行了。

  (3)先抓包一下:

    

 

   (4)看到cookie是YWRtaW4%3D,和页面显示的不一样 但是明显%3D是=号urdecode的结果,接下来构造paylaod进行测试:

    admin' and 1=1 --+ //明文

    YWRtaW4nIGFuZCAxPTEgLS0r  //密文

     

 

     看到红矩形的提示,应该构造 ')这种的

    进过多次测试,--+在此不好用,需要用#来注释

2.爆破

  (1)爆库:-admin') union select 1,2,database()#

         LWFkbWluJykgdW5pb24gc2VsZWN0IDEsMixkYXRhYmFzZSgpIw==

        

 

     接下来的三句查询语句,和Less(20)一样,注意运#注释,而不是用--+,只要用base64加密后写入cookie,就可已完成注入。

  

posted @ 2020-02-13 21:07  孟雨  阅读(322)  评论(0编辑  收藏  举报