강의

멘토링

커뮤니티

Inflearn Community Q&A

qwerty1234's profile image
qwerty1234

asked

Web hacking that teaches you the principles by following along: WebGoat

[Practice 2-17] SQL Injection(mitigation) - 5

SQL 인젝션 mitigation 마지막 ip 추론 문제 풀이에서

Written on

·

274

1

order by 절 뒤에 select 를 이용한 다중쿼리는

작성하지 못한다는 답변을 챗GPT로부터 받았는데,

GPT는 order by 뒤에 union을 이용한 공격은 가능하다고 하지만 왜 실제로 문제에선 union을 이용한 공격은 적용되지 않는 것일까요?

모의해킹webgoat

Answer 1

0

crehacktive님의 프로필 이미지
crehacktive
Instructor

안녕하세요.

질문에서,

"

order by 절 뒤에 select 를 이용한 다중쿼리는

작성하지 못한다는 답변을 챗GPT로부터 받았는데,

GPT는 order by 뒤에 union을 이용한 공격은 가능하다고 하지만 왜 실제로 문제에선 union을 이용한 공격은 적용되지 않는 것일까요?

"

라고 하셧는데 gpt로부터 작성하지 못한다 or 가능하다 중 가능하다고 답변 받으신게 맞죠?

결론부터 말씀드리면, 영상에서도 말씀드렸듯 불가능합니다.

RDBMS(관계형 데이터베이스)에서 문법상 union 구문 사용 시 상위 select절에선 order by 절 사용이 불가능하며, 하위 select 절에서 사용 가능합니다. 따라서 order by절 구문에 인젝션 시 상위 select 절에 order by절이 사용된 경우기 때문에 union 절 사용이 불가능합니다.

왜 이렇게 설계를 한지에 대해서는 일관성에 대한 부분이 아닐까 추측은 할 수 있으나 제가 설계자가 아니라 디테일한 이유는 모르겠네요.

챗gpt 활용하는것은 좋으나 참고만하고, 직접 mysql, mssql, oracle 실습해보시는게 좋습니다.

 

qwerty1234's profile image
qwerty1234

asked

Ask a question